Warning: Undefined property: stdClass::$id in createToken() (line 29 of modules/php/php.module(81) : eval()'d code).
Warning: Undefined property: stdClass::$id in createToken() (line 29 of modules/php/php.module(81) : eval()'d code).
Warning: Undefined property: stdClass::$id in createToken() (line 29 of modules/php/php.module(81) : eval()'d code).
Payment Widget Omni Tokens
Last updated:January 17, 2025
Payment Widget allows you to securely collect card data from shopper and initiate provisioning
of an omni token in the Token Vault.
To better understand omni tokens for eCommerce and inStore, please read
Tokenization Guide.
To use network tokens issued by the card networks for your payments,
please be informed that an enhanced integration will be made available.
The merchant collects card data from shopper via widget and initiates omni tokenization. No payment request/flow involved.
An omni token is synchronously provisioned and returned back to the merchant. The omni token can then be used in subsequent payments.
Perform a server-to-server POST request to prepare the checkout with the required customer data, including createOmniToken=true
but excluding paymentType. The response to a successful request is a card.omniToken required in the second step to create the omni token form.
Sample request:
2. Create the omni token form
Create the omni form by adding the following lines of HTML/JavaScript to your page:
Perform a server-to-server POST request over the omni token retrieved in the previous step.
Alternatively, use one-click checkout to authorize the payment with a
selected stored omni token.
Sample request:
Tokenization during payment
The merchant collects card data from shopper via widget and initiates omni tokenization along an account verification (zero amount auth) or initial purchase.
An omni token is synchronously provisioned and returned to the merchant once the payment is complete. The omni token can then be used in subsequent payments.
There are two ways to store the raw card details during a payment checkout:
Merchant-determined tokenization (see below).
Add createOmniToken=true in the checkout request.
Shopper-determined
tokenization. Add a checkbox to the Payment Widget form to let the customer decide whether
or not to store the raw card details.
Find out if the payment and omni token were successful.
Transactions:
1. Prepare the checkout
Perform a server-to-server POST request to prepare the checkout with the required payment and customer data, including the order type,
amount and currency. The response to a successful request is a card.omniToken required in the second step to create the payment form.
Sample request:
2. Create the payment form
Create the payment form by adding the following lines of HTML/JavaScript to your page:
Once the payment request is processed, the customer is redirected to your shopperResultUrl along with a GET parameter resourcePath.
resourcePath=/v1/checkouts/{checkout_id}/payment
Sample request:
One-click checkout
Speed up of the checkout process by re-using the raw card data a shopper entered previously. A shopper returns on the
merchant’s website (card is already omni tokenized). An unscheduled one-click purchase with one of the saved omni tokens is performed.
A cardholder initiated (CIT) payment is authorized with the real card data as retrieved from the Token Vault for the omni token.
Perform a server-to-server POST request to prepare the checkout with the required payment data, including the omni token IDs.
The stored card on files should be sent in the omniToken[n].id parameter, where n is a sequence number from zero, incrementing for
each of the customer's omni token IDs. The response to a successful request is an id required in the second step to
create the one-click payment form.
Sample request:
2. Create the payment form
Create the payment form by adding the following lines of HTML/JavaScript to your page:
When Payment Widget builds up the payment form it automatically fetches the omni token data from the server and displays the pre-filled widgets to the shopper.
Sample form:
3. Get the payment status
Once the payment request is processed, the customer is redirected to your shopperResultUrl along with a GET parameter resourcePath.