Transactions overview

How does Bond manage transactions and what are the attributes of a transaction.

The Bond /transactions API manages all operations related to transactions. The attributes of the transaction object are valid for all types of payments; card, ACH, RDC, and account.

▶ Run in Postman

The transaction object contains the details object shown in the table below.

ObjectDescription
detailsContains the attributes specific to a transaction type. For example:
  • The details object for an ACH transfer includes the external_account_id.
  • The details object for a card purchase includes the retailer's MCC.
For information on the details object attributes for various transaction types, see Payment types.

An example of the details that are associated with a specific transaction is shown below.

{
    "page": 1,
    "pages": 1,
    "count": 2,
    "next_page": null,
    "transactions": [
       "page": 1,
    "pages": 1,
    "count": 2,
    "next_page": null,
    "transactions": [
        {
            "transaction_id": "b9b8da9a-5ff2-4e5c-84ee-587b7d092f6b",
            "bond_brand_id": "8ed5c9fe-581b-490a-9dcb-3302db235a4b",
            "customer_id": "6493109c-7cb5-4f21-9d19-d9c3901d452d",
            "account_id": "9dc86a8a-4c12-4107-84a8-e7cf6a76586f",
            "payment_type": "card",
            "transaction_type": "credit",
            "previous_transaction_id": null,
            "state": "pending",
            "amount": "5.30",
            "currency": "USD",
            "created_time": "2021-02-02T22:27:13+00:00",
            "updated_time": "2021-03-02T20:39:56+00:00",
            "balances": {
                "prior_balance": "68.83",
                "new_balance": "63.53"
            },
            "details": {
                "card_id": "71efc729-830f-455f-9525-281c19bb4bb4",
                "mcc": "3542",
                "mcc_description": "matrix dynamic eyeballs",
                "currency": "USD",
                "exchange_rate": "0.00",
                "merchant_id": "9le8DI5z8am54O3b",
                "merchant_name": "Baldwin, Wright and Martinez",
                "merchant_city": "New Nathanshire",
                "merchant_state": "Missouri",
                "merchant_country": "Colombia",
                "merchant_postal_code": "34100",
                "merchant_currency": "",
                "merchant_amount": "",
                "exchange_rate": "",
                "cardholder_presence": true,
                "statement_descriptor": "Target #4744",
                "arn": "000091556011",
                "fraud_rule_triggered": "spend_velocity"
            }
        },
        {
            "transaction_id": "6460856a-e431-4d5f-a6d2-deb87c01042f",
            "bond_brand_id": "4b3fab91-7b67-4300-95f7-437dacac5e78",
            "customer_id": "00b9a8ed-03b5-4ce4-a0dd-9bb47aefd2b0",
            "account_id": "9e5f7953-743d-46d0-88ae-dacc395e8030",
            "payment_type": "ach",
            "transaction_type": "credit",
            "previous_transaction_id": null,
            "state": "pending",
            "amount": "3.22",
            "currency": "USD",
            "created_time": "2021-01-17T06:37:44+00:00",
            "updated_time": "2021-03-04T01:09:46+00:00",
            "balances": {
                "prior_balance": "57.10",
                "new_balance": "53.88"
            },
            "details": {
                "card_id": "21775c4e-c74e-40e8-83ec-1e2c9781d587",
                "external_account_id": "d6517906-a318-43b5-849f-0b42032c0a1f",
                "class_code": "ppd",
                "direction": "credit",
                "network": "ach",
                "description": "Testing",
                "failure_reason": "Invalid ACH routing number",
                "return_code": "R13"
            }
        }
    ]
}

The following table describes all possible transactions attributes. Note that not all of them may be present for any specific transaction.

AttributeType
transaction_idUnique ID for a Bond transaction.
transaction_typeVaries, based on the payment_type.
payment_typeType of payment made. Valid values; card, ach, rdc, account.
For details, see Payment Types.
stateVaries, based on payment_type.
For details, see Transaction states.
bond_brand_idThe UUID of your brand.
customer_idThe UUID for your customer.
account_idThe UUID of the account. Each customer_id can have more than one account_id associated with it.
amountThe value of the transaction in USD.
currencyThe currency used in the transaction.
Currently only USD is supported.
merchant_currencyISO currency for the transaction, for example USD.
merchant_amountThe original value of the transaction before an currency conversions.
exchange_rateThe conversion rate used for the transaction.
created_timeThe time the transaction is initiated. If the user swipes a card at a POS terminal, this timestamp displays the time at the POS.
updated_timeThe time the transaction was updated.
balancesNote that the current names are misleading, and will be changed in a future version.

prior_balanceActually refers to the "current" balance. The current balance includes all completed transactions, but not pending transactions.
new_balance— Actually refers to the "available" balance. The available balance includes all transactions, pending and completed.

For a complete specification and interactive examples, see Transactions in the Bond API Reference.