Transactions

The OrderTransaction Object

A Rutter Transaction represents any money movement related to the merchant's store, including charges, refunds, payouts, chargebacks, etc.

Platform Differences

There can be some differences in field values due to platform-specific limitations or if the connection is missing required scopes.

Rutter represents maps each unique transaction in the platform to a unique transaction in our API. Typically, a transaction will be updated over time as the status changes, but it will remain 1 object in the API. However, sometimes platforms will create a new transaction when an existing transaction in a pending state is processed successfully.

Rutter preserves the sign of the transaction amount from the platform to avoid misrepresenting data. We suggest using the transaction type to determine the type of transaction, and using the absolute value of the amount for consistency.

Shopify

A Shopify Order can have multiple transactions which represent different states for the same payment, e.g. a capture or an authorization. Each of these is a separate object in the API.

BigCommerce

A BigCommerce Order can have multiple transactions which represent different states for the same payment, e.g. a capture or an authorization. Each of these is a separate object in the API.

eBay

Rutter currently fetches 90 days worth of orders due to eBay's own limitation.

Properties

idstring

The Rutter generated unique ID of the transaction.

platform_idstringnullableOptional

The platform specific ID of the transaction.

order_idstringnullable

The Rutter ID of the Order linked to the transaction.

platform_customer_idstringnullableOptional

The platform specific ID of the customer linked to the transaction.

payment_method_typeenum

The payment method associated with the transaction. Some enum value clarifications:

  • cash - this type will mainly appear on self-hosted platforms like WooCommerce where Cash on Delivery is available.
  • card - includes credit or debit card payments
One ofcashcard, or other.
statusenum

The status of the transaction.

One ofsuccessfailurependingcancelledrefunded, or other.
typeenum

The transaction type associated with the transaction. Some enum value clarifications:

  • void - means a cancellation of a pending transaction.
  • payout - means the merchant transferred the money held in the platform to the merchant's own bank account.
  • other - If the transaction can't fit into any of the above types. This happens more often on self-hosted platforms where merchants create their own transaction types / have them in a different language.
One ofsalerefundvoidpayoutfee, or other.
amountnumbernullable

The amount associated with the transaction.

feenumberOptional

The fee associated with the transaction.

gatewaystringnullable

The gateway associated with the transaction.

gateway_datanullableOptional

The gateway data associated with the transaction. An object containing additional metadata. This field is only populated for commerce platforms like Shopify that do their own payment processing & partner with another processor (Stripe), which attaches metadata to the transaction. Otherwise the value is null. The properties depend on the payment gateway used.

iso_currency_codestringnullable

The ISO 4217 currency code of the transaction.

platform_typestringOptional

The platform type associated with the transaction.

descriptionstringnullableOptional

The description of the transaction

created_atstring

The ISO 8601 timestamp that the transaction was created.

updated_atstring

The ISO 8601 timestamp that the transaction was last updated.

platform_dataobjectOptional
Endpoints
GET
/transactions

List Transactions

GEThttps://production.rutterapi.com/versioned/transactions

Request Parameters

    access_tokenstringqueryRequired

    The access token of the connection.

    cursorstringqueryOptional

    Used to paginate to the next batch of objects. Should be a copy of the next_cursor value from the previous response.

    limitintegerqueryOptional

    Used to limit the number of returned objects. Defaults to 50.

    sortenumqueryOptional

    Sortable fields:

    created_at_maxintegerqueryOptional

    Used to filter objects with a created_at value less than or equal to the supplied value. Should be a Unix time in milliseconds.

    created_at_minintegerqueryOptional

    Used to filter objects with a created_at value greater than or equal to the supplied value. Should be a Unix time in milliseconds.

    updated_at_maxintegerqueryOptional

    Used to filter objects with a updated_at value less than or equal to the supplied value. Should be a Unix time in milliseconds.

    updated_at_minintegerqueryOptional

    Used to filter objects with a updated_at value greater than or equal to the supplied value. Should be a Unix time in milliseconds.

    force_fetchenumqueryOptional

    Used to force a response even if the underlying connection has not finished its initial sync.

    One oftrue or false.

Response Body

Support by integration
  • Shopify
    Shopify
  • WooCommerce
    WooCommerce
  • Amazon
    Amazon
  • Stripe
    Stripe
200
Example Response Body
JSON
1
{
2
"transactions": [
3
{
4
"id": "00000000-0000-0000-0000-000000000000",
5
"platform_id": "12345678",
6
"order_id": "00000000-0000-0000-0000-000000000000",
7
"platform_customer_id": "12345678",
8
"payment_method_type": "card",
9
"status": "success",
10
"type": "sale",
11
"amount": 12.34,
12
"fee": 1,
13
"gateway": "bank_account",
14
"gateway_data": "123456789",
15
"iso_currency_code": "USD",
16
"platform_type": "card",
17
"description": "For order 1234",
18
"created_at": "2023-01-02T02:34:56.000Z",
19
"updated_at": "2023-01-02T02:34:56.000Z",
20
"platform_data": {
21
"id": 123,
22
"data": "Varies by platform"
23
}
24
}
25
],
26
"next_cursor": "MTY3NDgzMTk0Ml82MDY4ZDI0ZC02NGRmLTRmN2EtYTM0Ny0zN2ZmNjY5MGVmMjU=",
27
"connection": {
28
"id": "00000000-0000-0000-0000-000000000000",
29
"orgId": "00000000-0000-0000-0000-000000000000",
30
"platform": "SHOPIFY"
31
}
32
}

Have questions?

Contact support for personalized guidance.

Contact support