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

idstringRequired

The Rutter generated unique ID of the transaction.

platform_idstringnullable

The platform specific ID of the transaction.

order_idstringnullableRequired

The Rutter ID of the Order linked to the transaction.

platform_customer_idstringnullable

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

payment_method_typeenumRequired

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.
statusenumRequired

The status of the transaction.

One ofsuccessfailurependingcancelledrefunded, or other.
typeenumRequired

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.
amountnumbernullableRequired

The amount associated with the transaction.

feenumber

The fee associated with the transaction.

gatewaystringnullableRequired

The gateway associated with the transaction.

gateway_datanullable

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_codestringnullableRequired

The ISO 4217 currency code of the transaction.

platform_typestring

The platform type associated with the transaction.

descriptionstringnullable

The description of the transaction

created_atstringRequired

The ISO 8601 timestamp that the transaction was created.

updated_atstringRequired

The ISO 8601 timestamp that the transaction was last updated.

platform_dataobject
Endpoints
GET
/transactions

List Transactions

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

Request Parameters

    access_tokenstringqueryRequired

    The access token of the connection.

    created_at_maxintegerquery

    Unix Timestamp in milliseconds representing the maximum created_at datetime to fetch entities from.

    created_at_minintegerquery

    Unix Timestamp in milliseconds representing the minimum created_at datetime to fetch entities from.

    cursorstringquery

    The cursor to use for pagination. This value is passed in from next_cursor field in a previous request.

    force_fetchenumquery

    Force a response even if the underlying connection hasn't finished the initial sync.

    One oftrue or false.
    limitintegerquery

    The limit on the number of entities returned.

    sortenumquery
    One ofdesc or asc.
    updated_at_maxintegerquery

    Unix Timestamp in milliseconds representing the maximum updated_at datetime to fetch entities from.

    updated_at_minintegerquery

    Unix Timestamp in milliseconds representing the minimum updated_at datetime to fetch entities from.

Response Body

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

Have questions?

Contact support for personalized guidance.

Contact support