Adding the payment source

How to add a Braintree payment source to an order

Problem

You have a pending order with a selected payment method that is associated with a Braintree payment integration. You want to give your customer the possibility to select one of the payment sources available from that gateway — e.g. a credit card — and use it to process the payment.

Solution

To add a Braintree payment source to an order, you have to create a Braintree payment source object and associate it with the order, as described in the Checkout guide.

Adding a payment sourcechevron-right

Example

1. Get the payment source type

The following request retrieves the attributes of the payment method associated with the order identified by the "qaMAhZkZvd" ID:

curl -g -X GET \
  'http://yourdomain.commercelayer.io/api/orders/qaMAhZkZvd?include=payment_method' \
  -H 'Authorization: Bearer your-access-token' \
  -H 'Accept: application/vnd.api+json'

2. Create the payment source and associate it with the order

The following request creates a Braintree payment object and associates it with the order identified by the "qaMAhZkZvd" ID:

curl -g -X POST \
  'http://yourdomain.commercelayer.io/api/braintree_payments' \
  -H 'Accept: application/vnd.api+json' \
  -H 'Authorization: Bearer your-access-token' \
  -H 'Content-Type: application/vnd.api+json' \
  -d '{
  "data": {
    "type": "braintree_payments",
    "attributes": {},
    "relationships": {
      "order": {
        "data": {
          "type": "orders",
          "id": "qaMAhZkZvd"
        }
      }
    }
  }
}'

Additional notes

Client token generation

At the moment of the Braintree payment source creation, Commerce Layer generates a client token using your Braintree account API credentials — see Braintree documentationarrow-up-right for any reference — and returns it in the client_token attribute of the Braintree payment object. It contains all the authorization and configuration information your client needs to initialize the Braintree SDKarrow-up-right.

More to read

See our documentation if you need more information on how to retrieve an orderarrow-up-right, include associationsarrow-up-right, or create a Braintree paymentarrow-up-right.

Last updated