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
id
stringThe Rutter generated unique ID of the transaction.
platform_id
stringnullableOptionalThe platform specific ID of the transaction.
order_id
stringnullableThe Rutter ID of the Order linked to the transaction.
platform_customer_id
stringnullableOptionalThe platform specific ID of the customer linked to the transaction.
payment_method_type
enumThe 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
status
enumThe status of the transaction.
type
enumThe 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.
amount
numbernullableThe amount associated with the transaction.
fee
numberOptionalThe fee associated with the transaction.
gateway
stringnullableThe gateway associated with the transaction.
gateway_data
nullableOptionalThe 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_code
stringnullableThe ISO 4217 currency code of the transaction.
platform_type
stringOptionalThe platform type associated with the transaction.
description
stringnullableOptionalThe description of the transaction
created_at
stringThe ISO 8601 timestamp that the transaction was created.
updated_at
stringThe ISO 8601 timestamp that the transaction was last updated.
platform_data
objectOptionalList Transactions
Request Parameters
access_token
stringqueryRequiredThe access token of the connection.
cursor
stringqueryOptionalUsed to paginate to the next batch of objects. Should be a copy of the next_cursor
value from the previous response.
limit
integerqueryOptionalUsed to limit the number of returned objects. Defaults to 50.
sort
enumqueryOptionalSortable fields:
created_at_max
integerqueryOptionalUsed 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_min
integerqueryOptionalUsed 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_max
integerqueryOptionalUsed 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_min
integerqueryOptionalUsed to filter objects with a updated_at
value greater than or equal to the supplied value. Should be a Unix time in milliseconds.
force_fetch
enumqueryOptionalUsed to force a response even if the underlying connection has not finished its initial sync.
Response Body
- Shopify
- WooCommerce
- Amazon
- Stripe
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.