Braintree Auth is in closed beta. To request access, email auth@braintreepayments.com.

In addition to using Braintree Auth to take actions on a connected merchant's behalf, the Shared Vault feature allows you, as the platform owner, to store all credit cards and customer data in your own Braintree Vault. You can then share that data with connected merchants at the point of transaction. This Shared Vault model delivers a network benefit to all your connected merchants, helping boost checkout conversion.


To use the Shared Vault feature, you must have your own Braintree account where you will store the payment methods ready to be shared with your connected merchants. You can use the account where you created your OAuth application if you wish.

Creating a transaction with a shared payment method

Payment method sharing is what enables the Shared Vault feature, specifically the shared_vault_transactions right. A payment method sharing call resembles a typical transaction create call, but with slightly different parameters. The calls look like this:

gateway = Braintree::Gateway.new(
  :access_token => use_access_token_for_merchant

result = gateway.transaction.sale(
  :shared_payment_method_token => your_payment_method_token,
  :amount => "100.00"

Payment methods shared this way can never be updated by the merchant, and they can't be stored in the merchant’s Vault.


In addition to payment methods, you can also share a customer’s billing addresses and shipping addresses. The full list of parameters that can be used when creating a transaction with payment method sharing is:

Name Description
shared_payment_method_token The payment method token of a card stored in the Partner's Vault that will be charged. Required for payment method sharing.
shared_customer_id The ID of a customer stored in the Partner's Vault. Will populate the customer_details of the transaction.
shared_billing_address_id The ID of an address in the Partner's Vault. Will populate the billing_address_details of the transaction.
shared_shipping_address_id The ID of an address in the Partner's Vault. Will populate the shipping_address_details of the transaction.

Next: Testing and Go Live →

Still have questions?

If you can’t find an answer, contact our Support team.