Using device fingerprinting in the run transaction flow with your own form

Background
Before starting this tutorial, make sure you understand the following topics from the Quick start section:

❗️

Notice

Only use this workflow if needed, such as for recurring payments with Openpay. For assistance, contact Integrations Support.

When you are using your own form, you can create a device fingerprint while running a transaction or while saving a card token.

After you have created a fingerprint, it is automatically saved with the card token and then sent and purged with the first auth (or, after 12 hours of no use, the system automatically purges the fingerprint). Card tokens can be used to process through any MID on your account. They are not restricted to a specific merchant account or currency.

Generally, you use a device fingerprint for the first transaction with a card. Openpay requires a new device fingerprint to be created with every transaction, while it is strongly recommended for Kount. For information about device fingerprinting requirements, see the gateway-specific information for the Connections you use.

👍

Prerequisites

In order to take advantage of device fingerprinting, you must meet one of the following prerequisites:

  • Kount must be enabled on the merchant account. If necessary, contact Integrations Support to ensure Kount is enabled on the merchant account.
  • You must have a gateway that requires a device fingerprint. For example, the Openpay gateway.

There are two options for fingerprinting a device while running a transaction.

You may create a new fingerprint at the time of running the transaction,
or you may use a saved fingerprint.

Running a transaction with a new card

In the run transaction flow with your own form, use a device fingerprint with a new card by following these steps:

  1. Complete the steps for saving a card token using either of the following tutorials:
  1. Complete steps 1-5 of the Creating a card checkout page with your own form tutorial.

  2. Listen for Nexio's response to determine where to send the customer next. For example, a success page could be a receipt. You may also want to send a receipt to the customer via email.

Running a transaction with a card that is on file

In the run transaction flow with your own form, use a device fingerprint with a card that is on file by following these steps:

  1. Complete the steps for saving a card token in the Using device fingerprinting in the save card flow with your own form tutorial.

This step results in a card token that you can use to send for the transaction.

While saving the card token for the card on file, you must have saved the entire data object that is part of the fingerprintPosted event.

For example, the object may look like the following:

{
  "data": {
    "key": "6f852fba-bd27-4568-85d0-4d23b5f018ec",
    "openpay": "afuPnSfJhSOrEDeeqGr0CvmheLKfPFK8",
    "kount": "6f852fbabd27456885d04d23b5f018ec"
  }
}

  1. Complete steps 1-3 of the Creating a card checkout page with your own form tutorial.

  2. When the customer accesses the checkout page, chooses to pay with a card that is on file, and submits for payment, send a POST request to the Run card transaction endpoint.

In the body of the request, include at least the required parameters of the payment amount (as data.amount) and the card token from step 1 (as tokenex.token).

To include the previous device fingerprint, also include the fingerprint object with all the parameters included in the fingerprintPosted.data object (see step 1), as in the following example:

curl -X POST https://api.nexiopaysandbox.com/pay/v3/process \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Basic [Base64_encoded_login]'
  -d '{
  "data": {
    "amount": 29.99,
  },
  "tokenex": {
    "token": "6ee140a0-05d1-4958-8325-b38a690dbb9d"
  },
  "fingerprint": {
    "key": "6f852fba-bd27-4568-85d0-4d23b5f018ec",
    "openpay": "afuPnSfJhSOrEDeeqGr0CvmheLKfPFK8",
    "kount": "6f852fbabd27456885d04d23b5f018ec"
  }
}'

  1. Listen for Nexio's response to determine where to send the customer next. For example, a success page could be a receipt. You may also want to send a receipt to the customer via email.

See also

Alternately, you can use device fingerprinting with the following other options: