Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

You may implement PayPal’s SDK to take advantage of Venmo and Pay Later payment options through PayPal. Other payment options are coming soon.

Full PayPal documentation on this approach is here:

PayPal SDK: https://developer.paypal.com/sdk/js/reference/

SDK Performance Optimization: https://developer.paypal.com/sdk/js/performance/

Note
  1. The PayPal SDK supports PayPal, Venmo, and Pay Later only

  2. If you are not implementing Venmo or Pay Later then do not use the SDK. Follow these instructions instead.

  3. The PayPal option cannot be disabled (you cannot offer Venmo or Pay Later without a PayPal button on your page).

  4. The PayPal SDK is supported only when referenceTransactions is disabled OR referenceTransactions and vaultEnabled are both enabled.

  5. Pay Later is not compatible with the Single Transaction campaign option

  6. You cannot choose different payment types for checkout and upsells. For example, if a checkout is done on Venmo then the upsell must also be on Venmo.

  7. Rebills are supported on Venmo when referenceTransactions and vaultEnabled are both enabled. Rebills are never supported on Pay Later.

...

Conditional Parameter:

  • If QA or Capture on Shipment is enabled in the campaign then include intent=authorize

    • PayPal SDK will not work with multiple transactions. Do not use Capture on Shipment with both a physical and digital product on the order. Those will be separate transactions.

 

See this link for full details: https://developer.paypal.com/sdk/js/configuration/#link-configureandcustomizeyourintegration

...

  1. onClick (Call the Import Order API to retrieve the create order parameters. It must include paypalSdk = 1 with other required parameters)

    1. It is important that you bind the Import Order call to the PayPal checkout button.

      • Be sure to include the sessionId and orderId from the previous steps, if known

    2. There are PayPal specific requirements that need to be passed to Import Order:

      1. paySource = 'PAYPAL'

      2. paypalBillerId is the value assigned to your PayPal Commerce gateway, found on your gateway list.

      3. prepaidType = PAYPAL_VENMO or PAYPAL_PAYLATER (if PayPal button is clicked then do not send this parameter)

      4. salesUrl = the checkout page full url

  2. createOrder (Create a PayPal order using the parameters received from the “onClick” function)

  3. onApprove (PayPal approved the order. To process the order in CheckoutChamp and complete it in PayPal pass the “orderID” and “payerID” to Confirm PayPal API. It must include paypalSdk = 1)

  4. onCancel (PayPal users canceled the payment or closed the payment screen)

  5. onError (Error from PayPal)

...