Skip to main content

Authorizations: Merchant Decryption


Overview

When you use the merchant decryption method, your application decrypts the Samsung Pay encrypted payment data and submits the decoded card data directly to . This method requires you to provide the payment network token card number, expiration date, and cryptogram from the decrypted Samsung Pay payload. The required fields differ by card type: American Express, JCB, Mastercard, and Visa each require a specific set of consumer authentication fields.

Supported Processors

Supported processors (14)

American Express Direct, Barclays, Chase Paymentech Solutions, Elavon, Elavon Americas, FDC Compass, FDC Nashville Global, GPN, HSBC, JCN Gateway, OmniPay Direct, Streamline, TSYS Acquiring Solutions, Visa Platform Connect

Supported processors: Chase Paymentech Solutions, Elavon Americas, FDC Nashville Global, Streamline, Visa Platform Connect

Supported processors: TSYS Acquiring Solutions, Visa Platform Connect

Supported processors: Barclays

Supported processors: GPX

Supported processors: Visa Platform Connect

Endpoints

POST /pts/v2/payments

POST /pts/v2/payments

Processor-Specific Authorization and Capture Information

This table describes processor-specific authorization and capture behavior:

ProcessorDescription
American Express DirectFor USD, American Express Direct limits authorization and capture amounts to 9,999,999.00. For other currencies, the maximum amount depends on the currency. Contact American Express for the maximum amounts for the currencies that you are using. Regardless of exponent or currency, the maximum number of digits for the amount value is 12 digits.
BarclaysThe amount is rounded to the correct number of decimal places for the currency. Barclays does not support amounts of 0.01. Barclays supports zero amount authorizations and amounts greater than 0.01. Barclays supports enhanced response codes in authorization response messages. Enhanced response codes provide detailed information about declined transactions. Contact Barclays customer support to have this capability enabled for your account.
ElavonElavon limits authorization and capture amounts to 999999999999 (twelve 9s).
FDC Nashville GlobalMerchant descriptor information is always provided to the processor for all capture and credit transactions.
GPNAmounts for authorizations, captures, and credits are limited to 10 digits.
HSBCThe amount is rounded to the correct number of decimal places for the currency. HSBC supports enhanced response codes in authorization response messages. Enhanced response codes provide detailed information about declined transactions. Contact HSBC customer support to have this capability enabled for your account.
JCN GatewayAmounts for authorizations and captures are limited to 8 digits.
StreamlineStreamline limits authorization and capture amounts to 11 digits, which is 999999999.99. For Cartes Bancaires, the authorization and capture amount must be 0.99 EUR or more. Streamline supports enhanced response codes in authorization response messages. Enhanced response codes provide detailed information about declined transactions. Contact Streamline customer support to have this capability enabled for your account.
TSYS Acquiring SolutionsTSYS Acquiring Solutions limits authorization and capture amounts to the equivalent of 99,999.99 USD. To process an amount greater than this, contact TSYS Acquiring Solutions.
Visa Platform ConnectVisa Platform Connect limits authorization and capture amounts to 999999999999 (twelve 9s).

Processor-Specific Authorization and Capture Information

This table describes processor-specific authorization and capture behavior:

ProcessorDescription
FDC Nashville GlobalMerchant descriptor information is always provided to the processor for all capture and credit transactions.
StreamlineStreamline limits authorization and capture amounts to 11 digits, which is 999999999.99. For Cartes Bancaires, the authorization and capture amount must be 0.99 EUR or more. Streamline supports enhanced response codes in authorization response messages. Enhanced response codes provide detailed information about declined transactions. Contact Streamline customer support to have this capability enabled for your account.
Visa Platform ConnectVisa Platform Connect limits authorization and capture amounts to 999999999999 (twelve 9s).

Processor-Specific Authorization and Capture Information

This table describes processor-specific authorization and capture behavior:

ProcessorDescription
TSYS Acquiring SolutionsTSYS Acquiring Solutions limits authorization and capture amounts to the equivalent of 99,999.99 USD. To process an amount greater than this, contact TSYS Acquiring Solutions.
Visa Platform ConnectVisa Platform Connect limits authorization and capture amounts to 999999999999 (twelve 9s).

Processor-Specific Authorization and Capture Information

This table describes processor-specific authorization and capture behavior:

ProcessorDescription
BarclaysThe amount is rounded to the correct number of decimal places for the currency. Barclays does not support amounts of 0.01. Barclays supports zero amount authorizations and amounts greater than 0.01. Barclays supports enhanced response codes in authorization response messages. Enhanced response codes provide detailed information about declined transactions. Contact Barclays customer support to have this capability enabled for your account.

Processor-Specific Authorization and Capture Information

This table describes processor-specific authorization and capture behavior:

ProcessorDescription
Visa Platform ConnectVisa Platform Connect limits authorization and capture amounts to 999999999999 (twelve 9s).

American Express

Example

{    "clientReferenceInformation": {        "code": "demorefnum"    },    "consumerAuthenticationInformation": {        "cavv": "ABCDEFabcdefABCDEFabcdef0987654321234567",        "xid": "1234567890987654321ABCDEFabcdefABCDEF123"    },    "processingInformation": {        "paymentSolution": "008"    },    "paymentInformation": {        "tokenizedCard": {            "expirationMonth": "12",            "expirationYear": "2021",            "number": "xxxx82246310xxxx",            "transactionType": "1"        }    },    "billTo": {        "firstName": "James",        "lastName": "Smith",        "address1": "111 S. Division St.",        "address2": "Suite 123",        "locality": "Ann Arbor",        "administrativeArea": "MI",        "postalCode": "48104-2201",        "country": "US",        "email": "[email protected]",        "phoneNumber": "9999999999"    },    "orderInformation": {        "amountDetails": {            "currency": "USD",            "totalAmount": "100.00"        }    }}
{    "clientReferenceInformation": {        "code": "demorefnum"    },    "orderInformation": {        "amountDetails": {            "currency": "USD",            "authorizedAmount": "100.00"        }    },    "processingInformation": {        "reconciliationID": "13209256CGJSMQCZ"    },    "processorInformation": {        "approvalCode": "888888",        "responseCode": "100",        "avs": {            "code": "I1"        }    },    "submitTimeUtc": "2015-11-03T205202Z"}

These fields are required when submitting an authorization request using the Merchant decryption method:

FieldTypeDescription
consumerAuthenticationInformation.cavvSet this field to the 3-D Secure cryptogram of the payment network token. Include the whole 20-byte cryptogram in the cavv field. For a 40-byte cryptogram, split the cryptogram into two 20-byte binary values (block A and block B): set the cavv field to the block A value and set the xid field to the block B value.
paymentInformation.card.numberSet this field to the payment network token value.
paymentInformation.card.expirationMonth / paymentInformation.tokenizedCard.expirationMonthSet this field to the payment network token expiration month value.
paymentInformation.card.expirationYear / paymentInformation.tokenizedCard.expirationYearSet this field to the payment network token expiration year value.
processingInformation.commerceIndicatorSet this field to aesk.
paymentInformation.tokenizedCard.cryptogramSet this field to the network token cryptogram.
paymentInformation.tokenizedCard.transactionTypeSet this field to 1.
processingInformation.paymentSolutionSet this field to 008.

JCB

Example

{    "consumerAuthenticationInformation": {        "cavv": "EHuWW9PiBkWvqE5juRwDzAUFBAk=",        "eciRaw": "05"    },    "processingInformation": {        "paymentSolution": "008"    },    "paymentInformation": {        "tokenizedCard": {            "expirationMonth": "12",            "expirationYear": "2031",            "number": "xxxx11111111xxxx",            "transactionType": "1",            "type": "007"        }    },    "billTo": {        "firstName": "Jane",        "lastName": "Smith",        "address1": "123 Main St.",        "address2": "Suite 12345",        "locality": "Small Town",        "administrativeArea": "CA",        "postalCode": "98765",        "country": "US",        "email": "[email protected]",        "phoneNumber": "9999999999"    },    "orderInformation": {        "amountDetails": {            "currency": "USD",            "totalAmount": "100.00"        }    }}
{    "clientReferenceInformation": {        "code": "ref123"    },    "orderInformation": {        "amountDetails": {            "currency": "USD",            "authorizedAmount": "100.00"        }    },    "processingInformation": {        "reconciliationID": "15356268CR2XF23X"    },    "processorInformation": {        "approvalCode": "888888",        "responseCode": "100",        "avs": {            "code": "X",            "codeRaw": "I1"        }    }}

These fields are required when submitting an authorization request using the Merchant decryption method:

FieldTypeDescription
consumerAuthenticationInformation.cavvSet this field to the 3-D Secure cryptogram of the payment network token.
paymentInformation.card.numberSet this field to the payment network token value.
paymentInformation.card.expirationMonth / paymentInformation.tokenizedCard.expirationMonthSet this field to the payment network token expiration month value.
paymentInformation.card.expirationYear / paymentInformation.tokenizedCard.expirationYearSet this field to the payment network token expiration year value.
consumerAuthenticationInformation.eciRawSet this field to the ECI value contained in the Samsung Pay reply message.
paymentInformation.tokenizedCard.cryptogramSet this field to the network token cryptogram.
paymentInformation.tokenizedCard.transactionTypeSet this field to 1.
processingInformation.paymentSolutionSet this field to 008.

Mastercard

Example

{    "clientReferenceInformation": {        "code": "demorefnum"    },    "consumerAuthenticationInformation": {        "ucafAuthenticationData": "ABCDEFabcdefABCDEFabcdef0987654321234567",        "ucafCollectionIndicator": "2"    },    "processingInformation": {        "paymentSolution": "008"    },    "paymentInformation": {        "tokenizedCard": {            "expirationMonth": "12",            "expirationYear": "2021",            "number": "xxxx55555555xxxx",            "transactionType": "1"        }    },    "billTo": {        "firstName": "James",        "lastName": "Smith",        "address1": "111 S. Division St.",        "address2": "Suite 123",        "locality": "Ann Arbor",        "administrativeArea": "MI",        "postalCode": "48104-2201",        "country": "US",        "email": "[email protected]",        "phoneNumber": "9999999999"    },    "orderInformation": {        "amountDetails": {            "currency": "USD",            "totalAmount": "100.00"        }    }}
{    "clientReferenceInformation": {        "code": "demorefnum"    },    "orderInformation": {        "amountDetails": {            "currency": "USD",            "authorizedAmount": "100.00"        }    },    "processingInformation": {        "reconciliationID": "13209255CGJSMQCR"    },    "processorInformation": {        "approvalCode": "888888",        "responseCode": "100",        "avs": {            "code": "I1"        }    },    "submitTimeUtc": "2015-11-03T205035Z"}

These fields are required when submitting an authorization request using the Merchant decryption method:

FieldTypeDescription
paymentInformation.card.numberSet this field to the payment network token value.
paymentInformation.card.expirationMonth / paymentInformation.tokenizedCard.expirationMonthSet this field to the payment network token expiration month value.
paymentInformation.card.expirationYear / paymentInformation.tokenizedCard.expirationYearSet this field to the payment network token expiration year value.
processingInformation.commerceIndicatorSet this field to spa.
paymentInformation.tokenizedCard.cryptogramSet this field to the network token cryptogram.
paymentInformation.tokenizedCard.transactionTypeSet this field to 1.
processingInformation.paymentSolutionSet this field to 008.
consumerAuthenticationInformation.ucafAuthenticationDataSet this field to the 3-D Secure cryptogram of the payment network token.
consumerAuthenticationInformation.ucafCollectionIndicatorSet this field to 2.

Visa

Example

{    "clientReferenceInformation": {        "code": "demorefnum"    },    "consumerAuthenticationInformation": {        "cavv": "ABCDEFabcdefABCDEFabcdef0987654321234567"    },    "processingInformation": {        "commerceIndicator": "internet",        "paymentSolution": "008"    },    "paymentInformation": {        "tokenizedCard": {            "expirationMonth": "12",            "expirationYear": "2021",            "number": "xxxx100000000xxxx",            "transactionType": "1"        }    },    "billTo": {        "firstName": "James",        "lastName": "Smith",        "address1": "111 S. Division St.",        "address2": "Suite 123",        "locality": "Ann Arbor",        "administrativeArea": "MI",        "postalCode": "48104-2201",        "country": "US",        "email": "[email protected]",        "phoneNumber": "9999999999"    },    "orderInformation": {        "amountDetails": {            "currency": "USD",            "totalAmount": "100.00"        }    }}
{    "clientReferenceInformation": {        "code": "demorefnum"    },    "orderInformation": {        "amountDetails": {            "currency": "USD",            "authorizedAmount": "100.00"        }    },    "processingInformation": {        "reconciliationID": "13209254CGJSMQCQ"    },    "processorInformation": {        "approvalCode": "888888",        "responseCode": "100",        "avs": {            "code": "I1"        }    },    "submitTimeUtc": "2015-11-03T205035Z"}

These fields are required when submitting an authorization request using the Merchant decryption method:

FieldTypeDescription
consumerAuthenticationInformation.cavvSet this field to the 3-D Secure cryptogram of the payment network token.
paymentInformation.card.numberSet this field to the payment network token value.
paymentInformation.card.expirationMonth / paymentInformation.tokenizedCard.expirationMonthSet this field to the payment network token expiration month value.
paymentInformation.card.expirationYear / paymentInformation.tokenizedCard.expirationYearSet this field to the payment network token expiration year value.
consumerAuthenticationInformation.eciRawFor JCB transactions, set this field to the ECI value contained in the Samsung Pay reply message.
processingInformation.commerceIndicatorSet this field to internet.
paymentInformation.tokenizedCard.cryptogramSet this field to the network token cryptogram.
paymentInformation.tokenizedCard.transactionTypeSet this field to 1.
processingInformation.paymentSolutionSet this field to 008.

Last published: September 29, 2026