Skip to main content

Safetech tokenization

Safetech tokenization is an acquirer-level token, separate from other types of tokens in the payment industry such as network tokens (issued by the card networks) and mobile wallets that use tokens for mobile payments. Safetech tokenization replaces the consumer’s card and account information stored in your system with a value (or token).

Tip

Safetech Page Encryption is not a prerequisite for you to use Safetech tokenization.

How Safetech tokenization works

  1. The consumer enters their payment card information into your system. 
  2. You send a request to tokenize the credentials using the Tokenization API. 
  3. J.P. Morgan sends the Safetech token back to you. 
  4. You store the token in your database for future use. 
  5. When the consumer checks out, you send the Safetech token to J.P. Morgan.
  6. J.P. Morgan translates the token to a PAN. 
  7. J.P. Morgan sends the transaction to the Payment Network with the message transport layer security (TLS)-encrypted. 
  8. The payment network sends the transaction to the card issuer. 
  9. The card issuer sends the authorization response back to the payment network.
  10. The payment network sends the authorization response to J.P. Morgan with the message TLS-encrypted.

The following is a sample request to request a Safetech token:

HTTP Method: POST

Endpoint: /acquirertoken

Json
{
    "accountInformation": {
        "cardNumber": "379296848452209002",
        "cardSource": "KEY_ENTERED"
    }
}

Response:  

Json
{
    "identifier": "5bc5f837-b772-48f3-ad29-32fcdfe368ff",
    "tokenInformation": {
        "acquirerTokenNumber": "379296576034739002"
    },
    "responseStatus": "SUCCESS",
    "responseCode": "ACCEPTED",
    "responseMessage": "Request Accepted"
}

HTTP Method: POST

Endpoint: /payments

The following is a sample request on how to use the Safetech token for a payment:

Json
{
    "amount": 1234,
    "currency": "USD",
    "initiatorType": "CARDHOLDER",
    "accountOnFile": "TO_BE_STORED",
    "merchant": {
        "merchantSoftware": {
            "companyName": "Shipping UAT",
            "productName": "Application Name",
            "version": 1.235
        },
        "merchantCategoryCode": 4899
    },
    "paymentMethodType": {
        "card": {
            "accountNumberType": "SAFETECH_TOKEN",
            "accountNumber": 4112340803104113,
            "expiry": {
                "month": 5,
                "year": 2022
            }
        }
    }
}

Response:

Json
{
    "transactionId": "f9b9a1ec-8842-4a07-952f-21dad4364183",
    "requestId": "274ab31c-55c7-4388-a65c-83c82b20e949",
    "transactionState": "CLOSED",
    "responseStatus": "SUCCESS",
    "responseCode": "APPROVED",
    "responseMessage": "Transaction approved by Issuer",
    "paymentMethodType": {
        "card": {
            "accountNumberType": "SAFETECH_TOKEN",
            "cardType": "VI",
            "cardTypeName": "VISA",
            "maskedAccountNumber": "411234XXXXXX4113",
            "networkResponse": {
                "addressVerificationResult": "NOT_REQUESTED",
                "networkTransactionId": "013291692160631",
                "paymentAccountReference": "Q1J4Z28RKA1EBL470G9XYG90R5D3E",
                "networkResponseCode": "00"
            }
        }
    }
}