Samsung Pay

Server-Side Implementationanchor

Click here to view the server-side implementation using GraphQL.


Samsung Pay is currently available to US merchants using versions v3 and v4.4 and higher of our Android SDK.

Creating transactionsanchor

Like all Braintree SDK integrations, you will receive a payment method nonce when your user successfully authorizes payment. Pass this nonce to your server, and create a transaction.

Collect device data from the client and include the device_data_from_the_client in the transaction.

  1. Ruby
result =
  :amount => "10.00",
  :payment_method_nonce => nonce_from_the_client,
  :device_data => device_data_from_the_client,
  :options => {
    :submit_for_settlement => true
  :billing => {
    :postal_code => postal_code_from_the_client

The amount you specify in your client-side payment request object should reflect the actual amount you authorize and submit for settlement; transactions will still process in cases where the amount changes during order fulfillment.

Vaulting Samsung Payanchor

Samsung Pay cards can only be saved to your Vault for specific use cases; see the support article for details.

If your use case is supported, you can store a customer's Samsung Pay card in your Vault in a few different ways:

  • In a separate linkToReferenceRequest 'payment-method' 'create' request
  • In a separate linkToReferenceRequest 'customer' 'create' or linkToReferenceRequest 'customer' 'update' request
  • In your linkToReferenceRequest 'transaction' 'sale' request by using linkToReferenceRequest 'transaction' 'sale' param='options.store_in_vault' or linkToReferenceRequest 'transaction' 'sale' param='options.store_in_vault_on_success'

Next Page: Testing and Go Live