Server-Side Implementation
Important
Your integration may be impacted by upcoming certificate changes. Visit our
best practices guide
to learn more.
NoteGraphQLClick here to view the server-side
implementation using GraphQL.
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 deviceDataFromTheClient in the
transaction.
- PHP
$result = $gateway->transaction()->sale([
'amount' => '10.00',
'paymentMethodNonce' => $nonceFromTheClient,
'deviceData' => $deviceDataFromTheClient,
'options' => [
'submitForSettlement' => True
],
'billing' => [
'postalCode' => $postalCodeFromTheClient
]
]);
Note
For certain account setups, it is recommended that merchants collect and pass billing address
information when storing payment methods and/or creating transactions. Passing billing address
details (postal code at minimum) can help increase the likelihood of a successful authorization.
To learn more about your specific account setup,
contact us.
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.storeInVault or options.storeInVaultOnSuccess