Submitted by Pam Fassett on Fri, 06/30/2023 - 19:31
Content

By integrating with our OpenCart plugin, you'll gain access to the full range of our solutions, including PCI DSS scope reduction via Hosted Fields (Drop-In UI), credit and debit processing, Digital Wallets, Card Storage, 3D Secure, and Order Management.

Specifications

Categories: Payment Gateways

Version: Global Payments

Created: 7 Jun 2022

Compatibility: 3.0.3.8, 3.0.3.8, 3.0.3.8, 3.0.3.8, 3.0.3.8, 3.0.3.8, 3.0.3.8, 3.0.3.8, 3.0.3.8, 3.0.3.8, 3.0.3.8, 3.0.3.8

Tags: creditcard, payment, gateway, debit, credit, secure, currency, free, globalpayments, sca, cardstorage, 3DS, token, tokenize, save cards, digital, wallets

Step 1: Installation

Install the plugin

Click the button below to download the plugin that is compatible with your OpenCart version and view any related documentation available.

Go to Plugin/Marketplace

Activate the extension:

  1. In your OpenCart Admin panel, go to Extension Installer.
  2. Upload the archive, and wait for the upload to finish successfully.
  3. When the upload is complete, go to Extensions > Payment Methods and locate our plugin.
  4. Activate it according to the documentation.

Credentials

Sandbox credentials

Our OpenCart plugin requires credentials to our Unified Payments gateway. Test credentials can be obtained after registering with our developer portal. Once registration is complete, the required App Key and App Id can be found under the Unified Payments Apps section of the Profile menu. For more information and instructions, see our Unified Payments Apps article.

Apple Pay credentials

To integrate with Apple Pay, you’ll need to obtain the encrypted payment credentials. To do this, follow the steps in the applicable Apple guide below:

For more Apple Pay setup information, see our Apple Pay article.

Configuration

To configure this plugin, follow these steps.

  1. Log in to the Admin panel for OpenCart.
  2. Navigate to Extensions > Extensions, and choose the Payments plugin type.
  3. Locate the Unified Payments Payment Method, and click Install and then Edit
  4. From here, you can configure the Unified Payments gateway as well as the various payment methods supported by OpenCart.

Settings

The Unified Payments gateway offers payment through credit and debit cards. Additional payment methods like Digital Wallets (Google Pay, Apple Pay, and PayPal), Buy Now Pay Later (Affirm, Clearpay, and Klarna), and Bank Payment can be enabled via the Unified Payments gateway. 

Unified Payments settings

The Unified Payments Settings tab allows you to enter your overall account credentials.

The following table describes the fields that appear on the Unified Payments Settings tab for OpenCart. 

Field Description
Enable/Disable Determines if the payment method is available at your OpenCart store’s checkout.
Title Description of the payment method displayed to the customer at checkout, e.g.,"Credit Card."
Live Mode Allows you to switch between the Live and Sandbox version of your account with us.
Sandbox/Live App Id The App Id and Key are used to obtain a bearer access token to execute API actions. For more information, see the Sandbox credentials section.
Sandbox/Live App Key
Credentials Check Determines if your credentials are valid.
Note: The payment methods will not be displayed at checkout if the credentials are not correct.
Enable Logging Allows logging of all requests to and from the gateway. Can also log private data and should only be enabled in a development or stage environment. The requests will be logged in the storage/logs folder. The structure for the name of the log file is as follows:
log_{current_date}.txt
Contact Url A link to an About or Contact page on your website with customer care information (max length: 256). This field is mandatory.
Enable 3D Secure Enables the 3D Secure feature. For more details, see the 3D Secure section.
Sort Order Sort order for checkout.

The Unified Payments Payment tab allows you to make selections regarding payment actions. The following table describes the fields that appear on the Unified Payments Payment tab for OpenCart.

Field Description
Payment Action The Sale transaction can be flagged for automatic capture (Authorize + Capture) or flagged as requiring a separate capture action later (Authorize only).
Allow Card Saving Determines whether customer's cards can be saved to our Card Storage following a successful transaction.
If set to Yes, a checkbox displays on the Hosted Fields form that gives the customer the choice to store their card.
If set to No, no checkbox displays, and the card is not stored.
Order Transaction Descriptor During a Capture or Authorize payment action, this value will be passed along as the transaction-specific descriptor listed on the customer's bank account.

Google Pay settings

For this payment method to work, you’ll need to fully configure the Unified Payments gateway. For more information, see the Unified Payments settings section.

info

The Google Pay Settings tab allows you to enter your overall account credentials. The following table describes the fields that appear on the Google Pay Settings tab for OpenCart.

Field Description
Enable/Disable Determines if the payment method is available at your OpenCart store’s checkout.
Title Description of the payment method displayed to the customer at checkout, e.g., "Pay with Google Pay." 
Merchant ID The Merchant ID provided by us.
Google Merchant ID The Merchant ID provided by Google.
Accepted Cards Determines what card types can be used at checkout when paying with Google Pay.
Allowed Card Auth Methods

Methods allowed to authenticate a card transaction:
PAN_ONLY: This authentication method is associated with payment cards stored on file with the user's Google account. 
CRYPTOGRAM_3DS: This authentication method is associated with cards stored as Android device tokens.

PAN_ONLY can expose the Funding Primary Account Number (FPAN), which requires an additional Strong Customer Authentication (SCA) step up to a 3DS check. Currently, we don’t support the Google Pay SCA challenge with an FPAN. For the best acceptance, we recommend that you provide only the CRYPTOGRAM_3DS option.

Button Color Determines the color of the Google Pay button displayed at checkout.
Payment Action The Sale transaction can be flagged for automatic capture (Charge) or flagged as requiring a separate capture action later (Authorize).

Apple Pay settings

For this payment method to work, you’ll need to fully configure the Unified Payments gateway. For more information, see the Unified Payments settings section.

info

The Apple Pay Settings tab allows you to enter your overall account credentials. The following table describes the fields that appear on the Apple Pay Settings tab for OpenCart.

Field Description
Enable/Disable Determines if the payment method is available at your OpenCart store’s checkout.
Title Description of the payment method displayed to the customer at checkout, e.g., "Pay with Apple Pay."
Apple Merchant ID The Merchant ID provided by Apple. 
Apple Merchant Cert Path The path for the .crt.pem file. This path is the relative path from the DIR_STORAGE. For example, if you store this certificate as
DIR_STORAGE/.well-known/ApplePay.crt.pem, the path should be .well-known/ApplePay.crt.pem
For more Apple Pay setup information, see the Apple Pay credentials section or our Apple Pay article.
Apple Merchant Key Path The path for the .key.pem file. For more Apple Pay setup information, see the Apple Pay credentials section or our Apple Pay article.
Apple Merchant Key Passphrase The encryption key for the .key.pem file. If the .key.pem file is not encrypted, this field must be empty.
Apple Merchant Domain To fill this field, you first need to register and validate your domain in your Apple account. Follow the steps in the Apple Developer Account Help (see the “Register a merchant domain” and “Verify a merchant domain” sections). Once validated, the value that must be inserted in this field is the Domain value you have in your Apple account, for the current domain.
Apple Merchant Display Name The text displayed to the customer in the Apple Pay dialog.
Accepted Cards Determines what types of cards can be used at checkout when paying with Apple Pay.
Button Color Determines the color of the Apple Pay button displayed at checkout.
Payment Action The Sale transaction can be flagged for automatic capture (Charge) or flagged as requiring a separate capture action later (Authorize).

PayPal settings

For this payment method to work, you’ll need to fully configure the Unified Payments gateway. For more information, see the Unified Payments settings section.

info

The PayPal Settings tab allows you to enter your overall account credentials. The following table describes the fields that appear on the PayPal Settings tab for OpenCart. 

Field Description
Enable/Disable Determines if the payment method is available at your OpenCart store’s checkout.
Title Description of the payment method displayed to the customer at checkout, e.g., "Pay with PayPal." The title will also be recorded in OpenCart to indicate how the transaction was processed.
Payment Action The sale transaction can be flagged for automatic capture (Charge) or flagged as requiring a separate capture action later (Authorize).
Sort Order Sort order of checkout.

Affirm settings

For this payment method to work, you’ll need to fully configure the Unified Payments gateway. For more information, see the Unified Payments settings section.

info

The Affirm Settings tab allows you to enter your overall account credentials. The following table describes the fields that appear on the Affirm Settings tab for OpenCart. 

Field Description
Enable/Disable Determines if the payment method is available at your OpenCart store’s checkout.
Title Description of the payment method displayed to the customer at checkout, e.g., "Pay with Affirm." The title will also be recorded in Opencart to indicate how the transaction was processed.
Payment Action The Sale transaction can be flagged for automatic capture (Charge) or flagged as requiring a separate capture action later (Authorize).

Clearpay settings

For this payment method to work, you’ll need to fully configure the Unified Payments gateway. For more information, see the Unified Payments settings section.

info

The Clearpay Settings tab allows you to enter your overall account credentials. The following table describes the fields that appear on the Clearpay Settings tab for OpenCart. 

Field Description
Enable/Disable Determines if the payment method is available at your OpenCart store’s checkout.
Title Description of the payment method displayed to the customer at checkout, e.g., "Pay with Clearpay." The title will also be recorded in Opencart to indicate how the transaction was processed.
Payment Action The Sale transaction can be flagged for automatic capture (Charge) or flagged as requiring a separate capture action later (Authorize).

Klarna settings

For this payment method to work, you’ll need to fully configure the Unified Payments gateway. For more information, see the Unified Payments settings section.

info

The Klarna Settings tab allows you to enter your overall account credentials. The following table describes the fields that appear on the Klarna Settings tab for OpenCart. 

Field Description
Enable/Disable Determines if the payment method is available at your Opencart store’s checkout.
Title Description of the payment method displayed to the customer at checkout, e.g., "Pay with Klarna." The title will also be recorded in Opencart to indicate how the transaction was processed.
Payment Action The Sale transaction can be flagged for automatic capture (Charge) or flagged as requiring a separate capture action later (Authorize).

Bank Payment settings

For this payment method to work, you’ll need to fully configure the Unified Payments gateway. For more information, see the Unified Payments settings section.

info

The Bank Payment Settings tab allows you to enter your overall account credentials. The following table describes the fields that appear on the Bank Payment Settings tab. 

Field Description
Enable/Disable Determines if the payment method is available at your OpenCart store’s checkout.
Title Description of the payment method displayed to the customer at checkout, e.g., "Bank Payment." The title will also be recorded in OpenCart to indicate how the transaction was processed.
Payment Action The sale transaction can be flagged for automatic capture (Charge) or flagged as requiring a separate capture action later (Authorize). Currently, the Authorize mode is not supported.
Account Number Account number for bank transfers within the United Kingdom (UK-to-UK bank). Required only if no bank details are stored on the account.
Account Name Name of the individual or business on the bank account. Required only if no bank details are stored on the account.
Sort Code Six digits that identify the bank and branch of an account. Included with the account number for UK-to-UK bank transfers. Required only if no bank details are stored on the account.
IBAN Key field for bank transfers for Europe-to-Europe transfers. Required only if no bank details are stored on account. Required only for EUR-transacting merchants.
Countries Allows you to input a COUNTRY or string of COUNTRIES to limit what is shown to the customer. Including a country overrides your default account configuration.   Format: List of ISO 3166-2 (two characters) codes separated by a | Example: FR|GB|IE
Currencies The payment method will be displayed at checkout only for the selected currencies.
Sort Order Sort order checkout.

Step 2: Test integration

Use the test card numbers below to verify that your integration was set up properly. For testing, you can use any cardholder name, any expiry date in the future, and any CVN security code.

For a full list of test cards, see our Test Cards article.

Visa
Successful
4263-9700-0000-5262
Visa
Declined
4000 1200 0000 1154

Step 3: Going live

Now that you’ve successfully installed the plugin and tested to see if it was installed properly, you’re all set to go live in the Production environment. For more information, see our Integration Validation to Go Live article.

Connect your integration for Production:

  • Input your Production App Id / App Key into your gateway configuration in the OpenCart Admin panel, and enable the “Live Mode” for the Unified Payments  gateway. 

Go to Production with Google Pay:

  • This gateway shares the Sandbox/Production mode with the Unified Payments gateway.
  • Process test transactions:
    • Google does not offer test cards, so you’ll have to use real ones.
    • In Sandbox mode, our gateway allows only specific order amount values; all other values will be automatically declined. You can check the allowed values in the Google Pay section of our Test Cards article.

Go to Production with Apple Pay:

  • This gateway shares the Sandbox/Production mode with the Unified Payments gateway.
  • Process test transactions:
    • You first need to configure a Sandbox account for Apple. For information on how to create a Sandbox account and test cards, see the Apple’s Sandbox Testing article.
    • In Sandbox mode, our gateway allows only specific order amount values; all other values will be automatically declined. You can check the allowed values in the Apple Pay section of our Test Cards article.

Go to Production with PayPal

  • This payment method shares the Sandbox/Production mode with the Unified Payments gateway.

  • Process test transactions:

    • Contact the Unified Payments team and ask them to enable PayPal for your current account (see Integration Support).
    • Once you get redirected to the PayPal payment page, create an account and process different transactions.

Going to Production with Affirm:

  • This payment method shares the Sandbox/Production mode with the Unified Payments gateway.
  • Process test transactions:
    • Contact the Unified Payments team and ask them to enable Buy Now Pay Later for your current account (see Integration Support).
    • This payment method will be displayed at checkout only for the following currency - country cases: USD - US and CAD - CA.
    • Once you get redirected to the Affirm payment page, create an account and process different transactions.

Going to Production with Clearpay:

  • This payment method shares the Sandbox/Production mode with the Unified Payments gateway.
  • Process test transactions:
    • Contact the Unified Payments team and ask them to enable Buy Now Pay Later for your current account (see Integration Support).
    • This payment method will be displayed at checkout only for the following currency - country cases: USD - US, CAD - CA, GBP - GB, AUD - AU, and NZD - NZ.
    • Once you get redirected to the Clearpay payment page, create an account and process different transactions.

Going to Production with Klarna:

  • This payment method shares the Sandbox/Production mode with the Unified Payments gateway.
  • Process test transactions:
    • Contact the Unified Payments team and ask them to enable Buy Now Pay Later for your current account  (see Integration Support).
    • This payment method will be displayed at checkout only for the following currency - country cases: USD - US, CAD - CA, GBP - GB, AUD - AU, NZD - NZ, EUR - AT, EUR - BE, EUR - DE, EUR - ES, EUR - FI, EUR - FR, EUR - IT, EUR - NL, CHF - CH, DKK - DK, NOK - NO, PLN - PL, and SEK - SE.
    • Once you get redirected to the Klarna payment page, create an account and process different transactions.

Go to Production with PayPal

  • This payment method shares the Sandbox/Production mode with the Unified Payments gateway.

  • Process test transactions:
    • Contact the Unified Payments team and ask them to enable PayPal for your current account (see Integration Support).
    • Once you get redirected to the PayPal payment page, create an account and process different transactions.

Additional information

This section contains information on payment solutions such as Hosted Fields and Hosted Payment Page, risk management solutions such as 3D Secure, as well as enhanced features such as Card Management and Order Management.

For the Buy Now Pay Later payment methods (Affirm, Clearpay, and Klarna), additional information on checkout flow can be found in the Async Payment Methods section.

Hosted Fields

For information on our PCI DSS requirement-reducing hosted solution, Hosted Fields (Drop-In UI), see our Hosted Fields - Overview page.

Hosted Payment Page

For information on our Hosted Payment Page for Unified Payments REST API integrators, see our Hosted Payment Page - Overview page.

3D Secure

For information on our 3D Secure solutions, see our 3D Secure - Overview page. We provide a Simulator Issuer Access Control Server that allows you to test different 3D Secure scenarios. For more information, see the 3D Secure section of our Test Cards article.

Card Management

All card data is tokenized using our tokenization service.

Registered customers can save their card information by selecting the “Save to account” checkbox in the checkout form. The OpenCart plugin securely stores card data with us and receives a token representation of the card, which is stored in the OpenCart vault, with no increased PCI compliance requirements.

  1. The customer can choose from the list of their stored cards.
    Send payment method tab with Confirm Order button
  2. Registered customers can see the list of their stored cards under My Account > Cards. Here, they can delete the stored cards or add new ones.

Async Payment Methods

This section applies only to the Buy Now Pay Later payment methods (Affirm, Clearpay, and Klarna) and the Bank Payment payment method. All sections except “Receiving the final payment status” apply to PayPal as well.

info

Because these payment methods are handled by third-party services and require further processing from these third parties, the checkout flow has some differences compared with the Unified Payments or Digital Wallets ones.

Initiate the payment

  1. When a customer clicks the Place Order button, the order is placed with a “Waiting for payment” status.
  2. Once the order has been created, an Initial Payment request type will occur.

Redirect to third-party service

If the Initiate Payment request is successful, the customer will be redirected to the third-party service to pay.

Affirm page with mobile number field and continue button
Example of Third-Party Service Redirect

Redirect back to your website

Cancel the payment
Successfully completing the payment
  1. If the customer successfully completes the payment, they will be redirected to the success page.
  2. At this point, the order will still have a Pending Payment status. For more details, see the next section.

Receiving the final payment status

  1. If the customer decides to cancel the payment using the option provided by the third party service (for example, clicking the X button on top left of the screen), they will be redirected to the cart page and the order that was previously created will be canceled.
    Affirm confirmation message to cancel loan request
  2. The order canceling will not be processed in your website if the customer decides to leave the page using another option (for example, browser back button, browser X button, or closing the tab); therefore, the order will still have the ‘Waiting for payment’ status in these cases.

If you are using Apache, you will need a version greater than 2.4.47 and the following directive added to your config: SetEnv proxy-sendcl 1. Otherwise, the orders within your platform will not be updated as expected.

info
  1. Since these payment methods are asynchronous, the final transaction status might not be available immediately.
  2. Once our system gets the final status, it will notify your website.
  3. At that point, the order status will be changed to Processing.
‘Waiting for payment’ orders
  1. In cases where the orders are stuck in a Pending Payment status, we provide a Get Transaction Details button.
  2. Clicking Get Transaction Details fetches all the information about the current transaction and displays it in a pop-up window.
    Transaction details popup
  3. Based on the Transaction Status, you can manually cancel the order or just continue with the normal flow.

Order Management

  1. Detailed information relating to the transaction outcome is available in the Orders section for OpenCart.
  2. If payment was successful, the order status will be set to Processing.

Create an invoice – capture a transaction

Merchants who use “Authorize only” at checkout will authorize the funds on the customer's card, but the transaction won't be placed in the settlement file until we capture it.

The amount of time the funds can remain ring-fenced on the customer's card may vary between different Issuers and Acquirers. Card brands like Visa and Mastercard have their own rules around how long transactions can wait to be captured.

  1. You can view the response returned by us in the Unified Payments tab.
  2. When viewing the order, scroll down to the bottom of the page. The details of the response from us will be displayed.
  3. If successfully authorized, the funds will now be ring-fenced on the customer's account. When you want to include the transaction in the next settlement file (also known as a batch) you can simply send a Capture (Settle) request. When the transaction is captured with the Acquirer, the funds are deducted from the customer's account and settled into the merchant's account.
  4. Once complete, the result of the Settle request will be displayed.

Refund a captured transaction

Once an order has been successfully settled with your Acquirer, you can rebate the customer for 0% to 115% of the original order value. To do this, you must create a Partial Refund in OpenCart. 

  1. Navigate to Sales > Orders, and select the order you want to rebate.
  2. Click Refund. If no amount entered, a full refund of the authorized amount will be requested.
  3. This will send the rebate request to us. You can change the amount to rebate by editing the input field. 
  4. Once complete, you will be returned to the Order page. A message will display indicating the outcome of the rebate request. A comment will be also added to the Unified Payments tab.

Reverse a transaction

You can cancel a transaction before it is sent for funding. The transaction will be fully reversed. If you already captured (settled) the transaction, see the Refund a captured transaction section. 

  1. Scenario 1: If the gateway has the payment action set to Authorize only:
    1. In the Admin panel, select the order you want to reverse. It will have the status Processing.
    2. Open the Order History, and select the Unified Payments tab.
  2. Scenario 2: If the gateway has the payment action set to Authorize & Capture:
    1. In the Admin panel, select the order you want to reverse. It will have the status Processing.
    2. Open the Order History, and select the Unified Payments tab.
  3. Next, click Reverse. A warning message appears, asking if you want to proceed with the reverse.
  4. Click OK.
  5. Notice that a new entry line was added to the Payment Information list, indicating the voided (reversed) amount with the Payment Action “reverse.”
  6. Finally, go to Add Order History and manually change the Order Status from Processing to Reversed. Click Add History
    Drop-down list of order statuses with Reversed selected
Tags
Subtitle
Use this plugin to take payments with our hosted solution.
Show Content Nav
On
Internal Title
REST API