Code Monkey home page Code Monkey logo

woocommerce-gateway-paypal-express-checkout's Introduction

Getting Started

  1. Clone this repository locally within the plugins directory of WordPress.
  2. Go to your local installation, and activate this plugin.
  3. Signup or sign into your PayPal developer account and create buyer and seller accounts.
  4. View your newly created seller account and copy the API credentials.
  5. Go to WooCommerce > Settings > Payments and select the Set up button next to PayPal Checkout.
  6. Set Environment to Sandbox, then select the click here to toggle manual API credential input link.
  7. Paste your API credentials and save.
  8. Ensure PayPal Checkout is enabled by checking the Enable/Disable checkbox.
  9. To display PayPal buttons on the cart page, check the Checkout on cart page checkbox.
  10. Similarly, check the Checkout on Single Product checkbox to display buttons on single product pages.

You can find a detailed list of all settings in the WooCommerce PayPal Checkout documentation.

To checkout, you can use your sandbox buyer account, or generate a test credit card.

API

The documentation for the API endpoints can be found in PayPal's developer documentation

You can also explore the API from PayPal's API Executor

Repository

  • The /woocommerce/woocommerce-gateway-paypal-express-checkout/ repository is treated as a development repository: this includes development assets, like unit tests and configuration files. Commit history for this repository includes all commits for all changes to the code base, not just for new versions.

Deployment

A "deployment" in our sense means:

  • validating the version in the header and WC_GATEWAY_PPEC_VERSION constant match
  • generating a .pot file for all translatable strings in the development repository
  • running a custom deploy script
  • the changes will be pushed to a branch with the name release/{version} so that a PR can be issued on /woocommerce/woocommerce-gateway-paypal-express-checkout/
  • tagging a new version

Branches

Coding Standards

This project enforces WooCommerce coding standards. Please respect these standards and if possible run appropriate IDE/editor plugins to help you enforce these rules.

Testing

We are striving to subject this extension to tests at various levels. They are works in progress. The following will be updated as there is progress. Do check with us if you want to contribute in some way towards these.

  • TBD - Travis Integration
  • TBD - Unit Testing
  • TBD - E2E Testing

Contribution

Contribution can be done in many ways. We appreciate it.

  • If you test this extension and find a bug/have a question, please submit a bug report.
  • If you have fixed any of the issues, please submit a pull request.

woocommerce-gateway-paypal-express-checkout's People

Contributors

achyuthajoy avatar alefesouza avatar allendav avatar bor0 avatar budzanowski avatar c-shultz avatar chickenn00dle avatar danreylop avatar dechov avatar dwainm avatar gedex avatar gumgumcode avatar hannahswain avatar helgatheviking avatar james-allan avatar jeffstieler avatar jorgeatorres avatar jrodger avatar laurendavissmith avatar lcmry avatar marcinbot avatar mattallan avatar menakas avatar mikejolley avatar radoslavgeorgiev avatar roykho avatar sir-daniel avatar tommyshellberg avatar v18 avatar wpprodigy avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

woocommerce-gateway-paypal-express-checkout's Issues

Fatal error when start EC from checkout page

Fatal error: Call to a member function get_total_discount() on a non-object in /srv/www/wordpress-default/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/includes/class-wc-gateway-ppec-cart-handler.php on line 288

PHP notice in checkout

Notice: Undefined index: startcheckout in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/woocommerce-gateway-paypal-express-checkout.php on line 340

Fix PHP notices in PayPal reference implementation

  • on /wp-admin/plugins.php?plugin_status=all&paged=1&s

    Notice: Undefined index: start-ips-keygen in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/woocommerce-gateway-paypal-express-checkout.php on line 191
    
    Notice: Undefined index: startcheckout in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/woocommerce-gateway-paypal-express-checkout.php on line 201
    
    Notice: Undefined index: ips-signup in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/woocommerce-gateway-paypal-express-checkout.php on line 206
    
    Notice: Undefined index: ips-return in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/woocommerce-gateway-paypal-express-checkout.php on line 206
    
    Notice: Undefined index: woo-paypal-return in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/woocommerce-gateway-paypal-express-checkout.php on line 210
    
  • on wp-admin/admin.php?page=wc-settings&tab=checkout&section=paypal_express_checkout_gateway

    Notice: Undefined index: start-ips-keygen in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/woocommerce-gateway-paypal-express-checkout.php on line 191
    
    Notice: Undefined index: startcheckout in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/woocommerce-gateway-paypal-express-checkout.php on line 201
    
    Notice: Undefined index: ips-signup in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/woocommerce-gateway-paypal-express-checkout.php on line 206
    
    Notice: Undefined index: ips-return in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/woocommerce-gateway-paypal-express-checkout.php on line 206
    
    Notice: Undefined index: woo-paypal-return in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/woocommerce-gateway-paypal-express-checkout.php on line 210
    
    Notice: Trying to get property of non-object in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/woocommerce-gateway-paypal-express-checkout.php on line 311
    
    Notice: Trying to get property of non-object in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/class-paypal-gateway.php on line 42
    
    Notice: Trying to get property of non-object in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/class-paypal-gateway.php on line 42
    
  • checkout with PayPal

    Notice: Undefined variable: matches in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/lib/class-checkoutdetails.php on line 194
    
    Notice: Undefined variable: matches in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/lib/class-checkoutdetails.php on line 194
    
    Notice: Undefined variable: matches in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/lib/class-checkoutdetails.php on line 194
    
    Notice: Undefined variable: checkout_details in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/class-checkout.php on line 221
    
    Notice: Undefined variable: matches in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/lib/class-checkoutdetails.php on line 194
    
    Notice: Undefined variable: matches in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/lib/class-checkoutdetails.php on line 194
    
    Notice: Undefined variable: matches in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/lib/class-checkoutdetails.php on line 194
    
    Notice: Undefined index: data in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/class-cart.php on line 180
    
    Notice: Trying to get property of non-object in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/class-cart.php on line 180
    
    Notice: Trying to get property of non-object in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/class-cart.php on line 180
    
    Notice: Undefined index: description in /home/allendav/public_html/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/lib/class-cart.php on line 41
    
    Notice: Trying to get property of non-object in /home/allendav/public_html/wp-content/plugins/woocommerce/includes/class-wc-product-factory.php on line 67
    
    Fatal error: Call to a member function get_items() on boolean in /home/allendav/public_html/wp-content/plugins/woocommerce/includes/wc-order-functions.php on line 319
    
  • on cart page

    Notice: Undefined index: startcheckout in /srv/www/wordpress-default/wp-content/plugins/woocommerce-gateway-paypal-express-checkout/woocommerce-gateway-paypal-express-checkout.php on line 340
    

Billing address not populated when returning from PP

So after logging in to PP and confirm payment, it is redirected back to the checkout page. At this point, the billing address should be filled by the information from the buyers PP account. Otherwise it would defeat the purpose of Express.

[P2][4.3] Add PayPal Credit only for US

PayPal Credit has been seen to increase merchant and buyer conversion rates, by giving them access to a very affordable additional line of credit at checkout itself.

Details

  • Provides option (checkbox) to enable PayPal Credit Second button show up on the shopping cart as well as the main checkout page.
  • Display PayPal credit button on cart and checkout pages if enabled.

A couple moar PHP 5.2/5.4 issues

Hey Allen,

I just did some quick reading on what changed between PHP 5.2 and PHP 5.4. I did find a couple of things to watch out for:
The plugin does make some use of the is_a() function. This was deprecated in PHP 5.0 (and would throw an E_STRICT warning), but was un-deprecated in PHP 5.3 by popular demand. (These should probably be replaced with instanceof instead.)
There are a couple instances of the __DIR__ magic constant (in class-paypal-gateway.php and lib/class-api.php), which wasn’t introduced until PHP 5.3. (I’m guessing these should be changed to dirname( __FILE__ ).)
I hope this helps. Please let me know if you need anything else!

Thanks,

Matt C.

Update outdated countries list that support IPS

Current supported countries:

'AT', 'BE', 'CH', 'DE', 'DK', 'ES', 'FR', 'GB', 'IT', 'NL', 'NO', 'PL', 'SE', 'TR', 'US'

the updated ones based on middleman service from PayPal:

'AL,DZ,AO,AI,AG,AR,AM,AW,AU,AT,AZ,BS,BH,BB,BE,BZ,BJ,BM,BT,BO,BA,BW,VG,BN,BG,BF,BI,KH,CA,CV,KY,TD,CL,CN,C2,CO,KM,CG,CK,CR,HR,CY,CZ,CD,DK,DJ,DM,DO,EC,EG,SV,ER,EE,ET,FK,FM,FJ,FI,FR,GF,PF,GA,GM,GE,DE,GI,GR,GL,GD,GP,GU,GT,GN,GW,GY,VA,HN,HK,HU,IS,ID,IE,IL,IT,JM,JO,KZ,KE,KI,KW,KG,LA,LV,LS,LI,LT,LU,MG,MW,MY,MV,ML,MT,MH,MQ,MR,MU,YT,MX,MN,MS,MA,MZ,NA,NR,NP,NL,AN,NC,NZ,NI,NE,NU,NF,NO,OM,PW,PA,PG,PE,PH,PN,PL,PT,QA,RE,RO,RU,RW,SH,KN,LC,PM,VC,WS,SM,ST,SA,SN,RS,SC,SL,SG,SK,SI,SB,SO,ZA,KR,ES,LK,SR,SJ,SZ,SE,CH,TW,TJ,TH,TG,TO,TT,TN,TR,TM,TC,TV,UG,UA,AE,GB,TZ,US,UY,VU,VE,VN,WF,YE,ZM'

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.