On this page

PayPal Express Checkout and Reference Transactions

*IMPORTANT NOTE!  The PayPal Express Checkout integration uses the "Reference Transactions" mechanism of your PayPal account. Approval from PayPal is required to enable reference transactions for your live account.

The process for enabling reference transactions by PayPal can take some time since the request goes through a vetting (underwriting) process.

You can work with a PayPal account manager and/or call one of the following numbers to request the reference transactions feature be enabled in your live (production) PayPal account:

US/CA: 1-888-221-1161
UK: 08707 307 191 or 0800 358 7911
Australia: 1-800-073-263
Germany: 0180 500 66 27
Other: 1-402-935-2080

You must have admin permissions of your PayPal account to perform these steps. Merchant Technical Support will not enable reference transactions, you must contact PayPal Customer Support to enable this feature.

*Note: If your PayPal account is in the EMEA Region (Europe, Middle East and Africa), you will be required to have the FraudNet data activated in order to have Reference Transactions enabled for your account. Click here to see the information about this below.

IF YOU DO NOT COMPLETE THIS STEP, THE PAYPAL EXPRESS CHECKOUT INTEGRATION FOR OCU WILL NOT WORK!

The OCU integration for PayPal Express Checkout will work to add the "PayPal" button to the first step of the OCU app's checkout page:

Note:  You need to already have PayPal Express Checkout enabled in your Shopify store first. This can be added at the Settings > Payments section of your Shopify admin.

Connecting PayPal Express Checkout

1. Login to your PayPal Business account at www.PayPal.com

2. Click your account name in the top-right corner and select "Account Settings" from the drop-down menu:

3. From the Account access section on the left-side menu, click the "Update" link for the API access.

4. In the NVP/SOAP API integration (Classic) section, click the "Manage API credentials" link:

5. Click the "Show" link next to each of the API credentials that you need to use and copy them from there.

There are 2 possible ways to connect PayPal Express Checkout:

  • Using API Signature credentials
  • Using API Certificate and credentials

Connect PayPal using your Signature API credentials: 

Copy and paste the API Signature information into the PayPal Express Checkout tab in the Payments > PayPal Express Checkout section of the OneClickUpsell app. 

  • API Username
  • API Password
  • API Signature
  • Source Website Identifier (SWI) which you create. More details in this article below.
  • Set "Mode" to "Live"
  • Click the "Enabled" switch to the "On" position
  • Click on the "Save" button to store settings

Connect PayPal using an API certificate: 

Copy and paste the API Certificate information into the PayPal Express Checkout tab in the Payments > PayPal Express Checkout section of the OneClickUpsell app:

  • API Username
  • API Password
  • Download your API Certificate from your PayPal account
  • Choose the "API Certificate" method
  • Click the "Choose File" button and select your certificate file from your computer
    *Note: It's important that the Certificate file name does not include any extra characters at the beginning or end. Use the default file name which looks like this for example: cert_key_pem.txt 
  • Enter in your Source Website Identifier (SWI) which you create. More details in this article below.
  • Set "Mode" to "Live"
  • Click the "Enabled" switch to the "On" position
  • Click on the "Save" button to store setting

Supported Card Types = Visa, MasterCard, American Express, Discover

NOTE: If you you receive a "Security header not valid" error message... 

  1. Check to make sure that there are no extra spaces in the API credentials you enter.
  2. Check that you are using the API username and password and not your PayPal account username and password.

PayPal FraudNet Protection

This field is now required to be filled in for all new PayPal Express Checkout users. Existing users who already have Reference Transactions enabled are not required to use Fraudnet protection and an SWI (Source Website Identifier), although to take advantage of Fraudnet protection, you will be required to add one in.

FraudNet is a JavaScript library developed by PayPal and embedded into a merchant’s web page to collect browser-based data to help reduce fraud. Upon checkout, these data elements are sent directly to PayPal Risk Services for fraud and risk assessment.

To enable this protection, you need to create a Source Website Identifier.

Creating your Source Website Identifier (SWI)

Use this pattern to create your own SWI (Source Website Identifier):


[abbreviated merchant name]_[Merchant ID]_[Abbreviated Product Name]

Step 1) Find your PayPal [Merchant ID], that looks like this: 1DONT29USE96C

PayPal directions to locate your merchant ID from within your PayPal account here.

Step 2) Add the [abbreviated merchant name], we recommend using the first part of your MyShopify URL. yourstore.myshopify.com Shorten further if needed.

Step 3) Add [Abbreviated Product Name], OCU will work just fine in this place.

The final result that you can use whenever a Source Website Identifier is requested for PayPal will look something like this, but with YOUR information:

yourstore_1DONT29USE96C_OCU

Check the number of characters here. Has to be 32 or less characters, with no spaces. The SWI is only for PayPal internal use and is a way to clearly delineate your store from other stores.

Any new merchant using the OCU app in EMEA Region will be required to have the FraudNet data activated in order to have Reference Transactions enabled for their account.

EMEA Region users, after you create your own Source Website Identifier, share it with your PayPal representative when setting up Reference Transactions with PayPal. The account manager or customer service representative will then open a request ticket to activate the Reference Transactions services on your account at that time.

For all users, once you've created your own Source Website Identifier from PayPal, enter it into this field in the Settings > Payments > PayPal Processor:

FraudNet protection is working only for reference transactions (post-purchase offers) and not for the initial checkout transaction. There is no ability to check how this protection works in a PayPal Merchant account. This information can be requested in your PayPal Business support or account manager only.

Hide the "PayPal" button on the OCU checkout:

The PayPal button can be hidden from the first step of the OCU checkout using this setting. You may want to do that if you're doing a Free + Shipping model for example. Or if you think your customer demographic would prefer not having the PayPal button there. If you'd like to hide the PayPal button from the first step of OCU checkout, just click the switch to the "On" position and "Save". 

*Note: If you enable this setting, PayPal will still be an available option at the "Payment Method" step of checkout which is the last step. 

Display only certain credit card Logos on the OCU checkout:

By default, all credit card logos are shown. You can choose specifically which credit card logos you want shown in-case your store only accepts certain ones through PayPal. 

This section allows you to check/uncheck the supported credit card icons you want shown on the PayPal section of the checkout page after the customer signs in to PayPal and is redirected back to Checkout to complete their order. 

Just make your selections and click "Save".

Checkout Order Flow Examples

Example 1: PayPal button clicked on first step of checkout

If you include the PayPal button on the first step of OCU checkout (default), the following flow will be used:

  • Customer clicks the PayPal button
  • Customer is redirected to PayPal to login
  • Customer chooses payment method in their PayPal account
  • Customer clicks the continue button and is redirected back to the "Shipping Method" step of OCU checkout
    Note: Make sure your Phone Field is set to either Optional or Hidden.
  • Customer selects Shipping method and goes to the "Payment method" step
  • Customer clicks "Complete order" button
  • Customer is redirected to First Post-Purchase Upsell Page

Example 2: PayPal method is chosen at "Payment method" step of checkout

If you've enabled the Hide the "PayPal" button on the OCU checkout setting, then the PayPal button will not show at the first step of checkout. Instead, PayPal will be an available option at the "Payment method" step of checkout.

  • Customer chooses the PayPal option at the "Payment method" step of checkout
  • Customer clicks the "Complete order" button
  • Customer is redirected to PayPal to login
  • Customer chooses payment method in their PayPal account
  • Customer clicks the confirm/pay now button in their PayPal account
  • Customer is redirected to First Post-Purchase Upsell Page

Important Technical Notes:

1. Make sure that the "Phone Number" field (Settings > Page Defaults > Checkout Page > Form Options) for OneClickUpsell checkout is either set to either Optional or Hidden

If it's set to Required, then it can cause an issue with the order flow since the Phone Number field can't be auto-filled by PayPal. So the customer will be sent back to the Customer Information step of checkout to add their phone number instead of the Shipping Method step to select their shipping method and complete the order after being redirected back to OneClickUpsell checkout from PayPal. 

2. If your theme has the PayPal button on the Cart page of your store and you customer clicks the button there, the OCU checkout will not be used even if you've enabled our integration. 

To hide the PayPal button from the Cart page you can either use an app from the Shopify app store, or do it manually. To do this manually, within your Shopify admin go to Online Store > Themes > Actions > Edit Code > and Open the cart.liquid  file

Find this code and comment it out:

{% if additional_checkout_buttons %} 
<div class="additional-checkout-buttons">
{{ content_for_additional_checkout_buttons }}
</div>
{% endif %}

The final result will look like this:

{%comment%}
{% if additional_checkout_buttons %}
<div class="additional-checkout-buttons">
{{ content_for_additional_checkout_buttons }}
</div>
{% endif %}
{%endcomment%}

That's it, you're done! The PayPal button will now be hidden on the Cart page and will be shown on the Shopify and OCU checkout pages instead. This will ensure that your customers will use the OCU checkout for your trigger products.

*Note: The steps above apply to most standard themes. If your theme's cart.liquid  file doesn't have the mentioned code, then we recommend to use an app instead.

3. When a customer uses the PayPal Express payment option and also uses a discount at checkout, the PayPal invoice will not show the initial order's product description. This is to prevent inaccuracies in the Total Price shown on the invoice sent by PayPal. The standard Order Confirmation email sent by Shopify will still be sent with the total order details, including the initial order's product description.

4. The customer is required to login to their PayPal account to pay for the order using this integration. They won't be able to checkout as a guest by using a debit/credit card from the PayPal popup window.

5. The same PayPal account that was used to connect the integration cannot be used to place an order on OCU checkout on the store. If that is attempted, the following error notification will appear:

"You are logging into the account of the seller for this purchase. Please change your login information and try again."

Did this answer your question?