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:
| Processor | Description |
|---|---|
| American Express Direct | For 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. |
| Barclays | The 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. |
| Elavon | Elavon limits authorization and capture amounts to 999999999999 (twelve 9s). |
| FDC Nashville Global | Merchant descriptor information is always provided to the processor for all capture and credit transactions. |
| GPN | Amounts for authorizations, captures, and credits are limited to 10 digits. |
| HSBC | The 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 Gateway | Amounts for authorizations and captures are limited to 8 digits. |
| Streamline | Streamline 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 Solutions | TSYS 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 Connect | Visa 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:
| Processor | Description |
|---|---|
| FDC Nashville Global | Merchant descriptor information is always provided to the processor for all capture and credit transactions. |
| Streamline | Streamline 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 Connect | Visa 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:
| Processor | Description |
|---|---|
| TSYS Acquiring Solutions | TSYS 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 Connect | Visa 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:
| Processor | Description |
|---|---|
| Barclays | The 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:
| Processor | Description |
|---|---|
| Visa Platform Connect | Visa 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:
| Field | Type | Description |
|---|---|---|
consumerAuthenticationInformation.cavv | Set 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.number | Set this field to the payment network token value. | |
paymentInformation.card.expirationMonth / paymentInformation.tokenizedCard.expirationMonth | Set this field to the payment network token expiration month value. | |
paymentInformation.card.expirationYear / paymentInformation.tokenizedCard.expirationYear | Set this field to the payment network token expiration year value. | |
processingInformation.commerceIndicator | Set this field to aesk. | |
paymentInformation.tokenizedCard.cryptogram | Set this field to the network token cryptogram. | |
paymentInformation.tokenizedCard.transactionType | Set this field to 1. | |
processingInformation.paymentSolution | Set 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:
| Field | Type | Description |
|---|---|---|
consumerAuthenticationInformation.cavv | Set this field to the 3-D Secure cryptogram of the payment network token. | |
paymentInformation.card.number | Set this field to the payment network token value. | |
paymentInformation.card.expirationMonth / paymentInformation.tokenizedCard.expirationMonth | Set this field to the payment network token expiration month value. | |
paymentInformation.card.expirationYear / paymentInformation.tokenizedCard.expirationYear | Set this field to the payment network token expiration year value. | |
consumerAuthenticationInformation.eciRaw | Set this field to the ECI value contained in the Samsung Pay reply message. | |
paymentInformation.tokenizedCard.cryptogram | Set this field to the network token cryptogram. | |
paymentInformation.tokenizedCard.transactionType | Set this field to 1. | |
processingInformation.paymentSolution | Set 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:
| Field | Type | Description |
|---|---|---|
paymentInformation.card.number | Set this field to the payment network token value. | |
paymentInformation.card.expirationMonth / paymentInformation.tokenizedCard.expirationMonth | Set this field to the payment network token expiration month value. | |
paymentInformation.card.expirationYear / paymentInformation.tokenizedCard.expirationYear | Set this field to the payment network token expiration year value. | |
processingInformation.commerceIndicator | Set this field to spa. | |
paymentInformation.tokenizedCard.cryptogram | Set this field to the network token cryptogram. | |
paymentInformation.tokenizedCard.transactionType | Set this field to 1. | |
processingInformation.paymentSolution | Set this field to 008. | |
consumerAuthenticationInformation.ucafAuthenticationData | Set this field to the 3-D Secure cryptogram of the payment network token. | |
consumerAuthenticationInformation.ucafCollectionIndicator | Set 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:
| Field | Type | Description |
|---|---|---|
consumerAuthenticationInformation.cavv | Set this field to the 3-D Secure cryptogram of the payment network token. | |
paymentInformation.card.number | Set this field to the payment network token value. | |
paymentInformation.card.expirationMonth / paymentInformation.tokenizedCard.expirationMonth | Set this field to the payment network token expiration month value. | |
paymentInformation.card.expirationYear / paymentInformation.tokenizedCard.expirationYear | Set this field to the payment network token expiration year value. | |
consumerAuthenticationInformation.eciRaw | For JCB transactions, set this field to the ECI value contained in the Samsung Pay reply message. | |
processingInformation.commerceIndicator | Set this field to internet. | |
paymentInformation.tokenizedCard.cryptogram | Set this field to the network token cryptogram. | |
paymentInformation.tokenizedCard.transactionType | Set this field to 1. | |
processingInformation.paymentSolution | Set this field to 008. |
Thanks for your feedback!
Last published: September 29, 2026