Samsung Pay for Unified Payments API
Beta
Last updated: October 6, 2026
To accept Samsung Pay payments, you must:
- Retrieve the Samsung Pay payment credential. Optionally, tokenize the credential using a Checkout.com payment token.
- Request a Samsung Pay payment.
Contact your account manager to enable Samsung Pay on your account, and to get your Checkout.com entity ID.
Use Samsung's Web Checkout SDK to get the payment credential. Samsung does not provide a server-to-server method to create the credential, so you must open the Samsung Pay payment screen in the customer's browser.
When the customer approves the payment, Samsung returns the credential as a compact JSON Web Encryption (JWE) payload.
Note
Do not write the Samsung Pay payload to your logs. It contains sensitive payment data.
You can decrypt the payload and request a payment using the network token details, or you can tokenize the credential using a Checkout.com payment token.
When you receive the payload from Samsung, call the Request a token endpoint. We decrypt the credential, store the wallet data, and return a Checkout.com token that starts with tok_.
Information
Your base URL's {prefix} value is unique to your account and environment. To learn how to retrieve your base URLs for the sandbox and production environments, see API endpoints.
post
https://{prefix}.api.checkout.com/tokens
In your request:
- Set
typetosamsungpay. - Provide the Samsung payload in the
token_dataobject, using one of the following formats:
1{2"type": "samsungpay",3"token_data": {4"data": "<samsung-compact-jwe>"5}6}
Replace <samsung-compact-jwe> with the payload that Samsung returned.
1{2"type": "samsungpay",3"token": "tok_ymu4qlccztkedmd6b7c3hcf6ae",4"expires_on": "2019-10-21T10:48:35Z",5"expiry_month": 8,6"expiry_year": 2023,7"scheme": "Visa",8"last4": "6222",9"bin": "481891",10"card_type": "DEBIT",11"card_category": "CONSUMER",12"issuer": "Test Bank",13"issuer_country": "GB",14"product_id": "F",15"product_type": "Visa Classic"16}
Use the value from the token field of the response in your payment request.
Call the Request a payment endpoint, providing the following fields:
source.typeset totokensource.tokenset to thetok_token you received when you tokenized the credential
Information
Your base URL's {prefix} value is unique to your account and environment. To learn how to retrieve your base URLs for the sandbox and production environments, see API endpoints.
post
https://{prefix}.api.checkout.com/payments
1{2"source": {3"type": "token",4"token": "tok_ubfj2q76miwundwlk72vxt2i7q"5},6"amount": 6540,7"currency": "GBP"8}
If the approved field is true, your authorization was successful. A failed authorization can indicate the payment used an invalid or expired card, or a card with an insufficient available balance.
Handle errors and timeouts in your integration, and wait for a Gateway webhook before you start your order fulfillment process.
To test Samsung Pay payments, first create a test Checkout.com account.
Complete a test payment in your sandbox environment, and confirm that we accept the credential and process the payment. Resolve any domain, account setup, or credential submission issues before you go live.