Apple Pay
Server-Side Implementation
Creating transactions
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.
- Ruby
result = gateway.transaction.sale(
: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.
If you've already integrated our SDKs to handle payment method nonces for other payment methods, you should reuse your existing implementation. The example above will work with a payment method nonce associated with any new payment methods that you choose to accept in the future.
Vaulting Apple Pay
Apple 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 Apple Pay card in your Vault in a few different ways:
- In a separate Payment Method: Create request
- In a separate Customer: Create or Customer: Update request
- In your Transaction: Sale request by using options.store_in_vault or options.store_in_vault_on_success
Next Page: Testing and Go Live →