Submitted by Pam Fassett on Mon, 07/03/2023 - 16:45
Content

By integrating with our WooCommerce 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

WordPress version: 5.4 or higher 
Tested up to: 6.1.1 
PHP version: 7.1 or higher 

Step 1: Installation

Access plugin

Click the button below to download this plugin and view any related documentation available.

Go to Plugin/Marketplace

Credentials

Sandbox credentials

Our WooCommerce 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 WooCommerce.
  2. Navigate to WooCommerce > Settings > Payments
  3. From here, you can click Manage to configure the Unified Payments gateway as well as the various payment methods supported by WooCommerce.
    Note: If this is your first time activating this plugin, the Settings page will appear first.

Settings

The Unified Payments gateway offers payment through credit and debit cards. Additional payment methods like Digital Wallets (Google PayApple 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. 

  1. Navigate to WooCommerce > Settings > Payments
  2. Use the toggle under Enabled to select the Unified Payments gateway.
    Note: If this is your first time activating this plugin, the Settings page will appear.
  3. If you already enabled the plugin and want to change the settings, click Manage.

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

Field Description
Enable/Disable Determines if the payment method is available at your WooCommerce store’s checkout.
Title Description of the payment method displayed to the customer at checkout, e.g.,"Credit Card." The title will also be recorded in WooCommerce to indicate how the transaction was processed.
Live Mode Allows you to switch between the Live and Sandbox versions of your account with us.
Sandbox/Live App Id The App Id and App 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.
Allow Card Saving Determines whether a customer's card can be saved to our Card Storage solution 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.
Enable Logging Allows logging of all requests to and from the gateway. Can also log private data. Should only be enabled in a development or stage environment. Logs can be found at WooCommerce > Status > Logs.
Contact Url A link to an About or Contact page on your website with customer care information (maxLength: 50).
Enable 3D Secure Enables the 3D Secure feature. For more details, see the 3D Secure section.
Payment Action The sale transaction can be flagged for automatic capture (Authorize + Capture) or flagged as requiring a separate capture action later (Authorize only).
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 WooCommerce.

Field Description
Enable/Disable Determines if the payment method is available at your WooCommerce store’s checkout.
Title Description of the payment method displayed to the customer at checkout, e.g., "Pay with Google Pay." The title will also be recorded in WooCommerce to indicate how the transaction was processed.
Client ID The Client ID provided by us.
Google Merchant ID The Merchant ID provided by Google.
Google Merchant Display Name Text displayed to the customer in the Google Pay dialog box.
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 WooCommerce.

Field Description
Enable/Disable Determines if the payment method is available at your WooCommerce store’s checkout.
Title Description of the payment method displayed to the customer at checkout, e.g., "Pay with Apple Pay." The title will also be recorded in WooCommerce to indicate how the transaction was processed.
Apple Merchant ID The Merchant ID provided by Apple. For more info on creating an Apple Merchant ID, see Apple Pay Programming.
Apple Merchant Cert Path

The path for the .crt.pem file. This path is the relative path from the root.
For example, if you store this certificate as <wordpress_location>/.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 box.
Accepted Cards Determines what types of cards can be used at checkout when paying with Apple Pay.
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 Affirm Settings tab allows you to enter your overall account credentials. The following table describes the fields that appear on the Settings tab. 

Field Description
Enable/Disable Determines if the payment method is available at your WooCommerce 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 WooCommerce 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 WooCommerce. 

Field Description
Enable/Disable Determines if the payment method is available at your WooCommerce 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 WooCommerce 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 PayPal Settings tab allows you to enter your overall account credentials. The following table describes the fields that appear on the Settings tab. 

Field Description
Enable/Disable Determines if the payment method is available at your WooCommerce 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 WooCommerce 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).

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 Klarna Settings tab allows you to enter your overall account credentials. The following table describes the fields that appear on the Settings tab. 

Field Description
Enable/Disable Determines if the payment method is available at your WooCommerce 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 WooCommerce 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 Settings tab. 

Field Description
Enable/Disable Determines if the payment method is available at your WooCommerce 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 WooCommerce to indicate how the transaction was processed.
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.
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.

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 WooCommerce 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 Bank Payment

  • 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 Open Banking for your current account (see Integration Support).
    • Once you get redirected to the Bank Payment 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.

info

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

  1. The customer can choose from the list of their stored cards.
    Credit card selection list and Place Order button
    • Registered customers can see the list of their stored cards under My Account > Payment Methods.
      Payment methods list of stored cards
    • Registered customers can add new payment methods by navigating to My Account > Payment Methods > Add Payment Method. A validation of the payment method is done to ensure it can be used to create a transaction at a later time and the card data is received through Hosted Fields.
      Credit card details page and Add Payment Method button

    Order Management

    Detailed information relating to the transaction outcome is available in the Orders section for WooCommerce. 

    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 Transaction ID returned by us under the order details.
      Edit order details screen
    2. If successfully authorized, the funds will 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.
    3. To capture a transaction, on the right-hand menu, go to Order actions. Select Capture credit card authorization to send the request to us.
      Choose an action drop-down list with Capture Credit Card Authorization selected
    4. When finished, click Update. A Capture request with the total amount authorized will now be sent.  
    5. Once complete, the result of the Settle request will be displayed as a comment in the Order notes. For example: Transaction captured. Transaction ID for the capture: TRN_Q5LIgwyAGg19h6OSmTWPSHTtygss5c_0426b98fcb98).
      two order notes with saved transaction information

    Refund a captured transaction

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

    1. Navigate to WooCommerce > Orders, and select the order you want to rebate. 
    2. You can edit the amount to rebate by editing the adjustment fields provided by WooCommerce.
      Refund input fields with buttons for refunding manually or via Unified Payments
    3. Once complete, the result of the Refund request will be displayed as a comment in the Order notes. For example: €10.00 was reversed or refunded. Transaction ID: TRN_USaGaxBIRCQajDlqcqPolBkUwfRAL4_0426b98fcb98.

    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 login screen with enter mobile number field and Continue button
    Example of Third-Party Service Redirect

    Redirect back to your website

    Cancel the payment
    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.
      Popup message to confirm cancelation without completing 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.
    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

    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. Because 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 View Transaction Info button.
      Transaction status page with View Transaction Info button
    2. Clicking View Transaction Info fetches all the information about the current transaction and displays it in a pop-up window.
      Pop-up window with transaction details
    3. Based on the Transaction Status, you can manually cancel the order or just continue with the normal flow.
    Tags
    Subtitle
    Use this plugin to take payments with our hosted solution.
    Show Content Nav
    On
    Internal Title
    REST API