Customer Refunds

The AccountingCustomerRefund Object

A Rutter Customer Refund represents a transfer of money issued by the business entity to its customer. A Customer Refund transfers money back to the customer reversing previous paid invoices unlike a Credit Memo, which is a discount held by the business entity against future customer Invoices. Every customer refund is linked to a bank Account and a Customer.

The customer refund line item contains information regarding the items that were refunded. In most cases, customer refund line items are linked to an Item.

Properties

idstring

The Rutter generated unique ID of the customer refund.

platform_idstring

The platform specific ID of the customer refund.

account_idstring

The Rutter ID of the Account linked to the customer refund.

class_idstringnullable

The Rutter ID of the Class linked to the customer refund.

customer_idstringnullable

The Rutter ID of the Customer linked to the customer refund.

department_idstringnullable

The Rutter ID of the Class linked to the customer refund.

tax_rate_idstringnullable

The Rutter ID of the Tax Rate linked to the customer refund. Supported for Xero.

transaction_datestringnullable

The ISO 8601 timestamp for when the transaction was logged.

total_amountnumber

The total amount of the customer refund.

discount_amountnumbernullable

The discount amount that was applied on the invoice to be reversed. This amount decreases from the customer refund total. Supported for QuickBooks.

document_numberstringnullable

The document number of the customer refund. Supported for Xero.

tax_amountnumbernullable

The total tax amount on the customer refund. This amount increases the customer refund total. Supported for QuickBooks.

line_itemsarray

An array of line items associated with the customer refund.

Show line_items attributes
created_atstringfilterablenullable

The ISO 8601 timestamp that the customer refund was created.

updated_atstringfilterablenullable

The ISO 8601 timestamp that the customer refund was last updated.

last_synced_atstringfilterable

The ISO 8601 timestamp when the customer refund was last synced by Rutter.

platform_urlstringnullable

A URL pointing to the object in the underlying platform. When no URL exists for the specific object, the value may be a larger URL containing the object.

platform_dataobjectOptional

The raw platform data corresponding to the Rutter object.

Endpoints
GET
/accounting/customer_refunds
GET
/accounting/customer_refunds/:id
POST
/accounting/customer_refunds

List Customer Refunds

GEThttps://production.rutterapi.com/versioned/accounting/customer_refunds

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.

    filterstringqueryOptional

    Not currently supported on Sage Intacct or Sage Business Cloud. Used to specify a filtering criteria for response objects. Refer to Filtering Objects to understand the syntax for the filtering criteria. The filtering syntax only supports fields decorated with a filterable tag in the response object.

    Filterable fields: created_at, updated_at, last_synced_at.

    sortstringqueryOptional

    Used to sort the response objects, e.g. last_synced_at ASC. If a value is provided but ASC or DESC is not, defaults to ASC. If omitted, defaults to updated_at DESC. Supports only fields decorated with a filterable tag in the response object except on Sage Intacct and Sage Business Cloud. For those platforms, only updated_at_min, updated_at_max and last_synced_at_min fields are supported and not deprecated.

    Sortable fields: created_at, updated_at, last_synced_at.

    expandenumqueryOptional

    Include platform specific data (includes additional fields not provided by the Rutter object).

    Must beplatform_data.
    last_synced_at_minintegerqueryOptional

    Deprecated - use filter instead. Used to filter objects with a last_synced_at value greater than or equal to the supplied value. Should be a Unix time in milliseconds.

    updated_at_maxintegerqueryOptional

    Deprecated - use filter instead. 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

    Deprecated - use filter instead. 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

200
Example Response Body
JSON
1
{
2
"customer_refunds": [
3
{
4
"id": "00000000-0000-0000-0000-000000000000",
5
"platform_id": "12345678",
6
"account_id": "00000000-0000-0000-0000-000000000000",
7
"class_id": "00000000-0000-0000-0000-000000000000",
8
"customer_id": "00000000-0000-0000-0000-000000000000",
9
"department_id": "00000000-0000-0000-0000-000000000000",
10
"tax_rate_id": "00000000-0000-0000-0000-000000000000",
11
"transaction_date": "2023-01-02",
12
"total_amount": 123.45,
13
"discount_amount": 20,
14
"document_number": "CUSTRFD-1",
15
"tax_amount": 23.45,
16
"line_items": [
17
{
18
"account_id": "00000000-0000-0000-0000-000000000000",
19
"class_id": "00000000-0000-0000-0000-000000000000",
20
"tax_rate_id": "00000000-0000-0000-0000-000000000000",
21
"total_amount": 123.45,
22
"description": "This is a description.",
23
"item": {
24
"id": "00000000-0000-0000-0000-000000000000",
25
"quantity": 1,
26
"unit_amount": 123.45
27
}
28
}
29
],
30
"created_at": "2023-01-02T02:34:56.000Z",
31
"updated_at": "2023-01-02T02:34:56.000Z",
32
"last_synced_at": "2023-01-02T02:34:56.000Z",
33
"platform_url": "https://platform.com/resource?id=123",
34
"platform_data": {
35
"id": 123,
36
"data": "Varies by platform"
37
}
38
}
39
],
40
"next_cursor": "MTY3NDgzMTk0Ml82MDY4ZDI0ZC02NGRmLTRmN2EtYTM0Ny0zN2ZmNjY5MGVmMjU=",
41
"connection": {
42
"id": "00000000-0000-0000-0000-000000000000",
43
"orgId": "00000000-0000-0000-0000-000000000000",
44
"platform": "NETSUITE"
45
}
46
}

Support by integration

Expand to view platform rules
  • QuickBooks
    QuickBooks
  • Xero
    Xero

Fetch a Customer Refund

GEThttps://production.rutterapi.com/versioned/accounting/customer_refunds/:id

Request Parameters

    idstringpathRequired

    The unique ID of the object.

    access_tokenstringqueryRequired

    The access token of the connection.

    id_typeenumqueryOptional

    Used to indicate the type of id that is supplied. Defaults to rutter. Not currently supported on Sage Intacct or Sage Business Cloud.

    One ofrutter or platform.
    force_fetchenumqueryOptional

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

    One oftrue or false.

Response Body

200
Example Response Body
JSON
1
{
2
"customer_refund": {
3
"id": "00000000-0000-0000-0000-000000000000",
4
"platform_id": "12345678",
5
"account_id": "00000000-0000-0000-0000-000000000000",
6
"class_id": "00000000-0000-0000-0000-000000000000",
7
"customer_id": "00000000-0000-0000-0000-000000000000",
8
"department_id": "00000000-0000-0000-0000-000000000000",
9
"tax_rate_id": "00000000-0000-0000-0000-000000000000",
10
"transaction_date": "2023-01-02",
11
"total_amount": 123.45,
12
"discount_amount": 20,
13
"document_number": "CUSTRFD-1",
14
"tax_amount": 23.45,
15
"line_items": [
16
{
17
"account_id": "00000000-0000-0000-0000-000000000000",
18
"class_id": "00000000-0000-0000-0000-000000000000",
19
"tax_rate_id": "00000000-0000-0000-0000-000000000000",
20
"total_amount": 123.45,
21
"description": "This is a description.",
22
"item": {
23
"id": "00000000-0000-0000-0000-000000000000",
24
"quantity": 1,
25
"unit_amount": 123.45
26
}
27
}
28
],
29
"created_at": "2023-01-02T02:34:56.000Z",
30
"updated_at": "2023-01-02T02:34:56.000Z",
31
"last_synced_at": "2023-01-02T02:34:56.000Z",
32
"platform_url": "https://platform.com/resource?id=123",
33
"platform_data": {
34
"id": 123,
35
"data": "Varies by platform"
36
}
37
},
38
"connection": {
39
"id": "00000000-0000-0000-0000-000000000000",
40
"orgId": "00000000-0000-0000-0000-000000000000",
41
"platform": "NETSUITE"
42
}
43
}

Support by integration

Expand to view platform rules
  • QuickBooks
    QuickBooks
  • Xero
    Xero

Create a Customer Refund

POSThttps://production.rutterapi.com/versioned/accounting/customer_refunds

Request Parameters

    access_tokenstringqueryRequired

    The access token of the connection.

Request Body

    response_modeenumOptional

    The response mode for our async endpoints. prefer_sync allows calling the API in a best-effort, synchronous fashion and wait for the response. If this takes too long we will instead return the asynchronous response. This is the default behavior. async makes the API respond with the asynchronous response. See Asynchronous Operations.

    One ofasync or prefer_sync.
    customer_refundobject
    Show customer_refund attributes

Response Body

Example Request Body
JSON
1
{
2
"customer_refund": {
3
"account_id": "00000000-0000-0000-0000-000000000000",
4
"class_id": "00000000-0000-0000-0000-000000000000",
5
"customer_id": "00000000-0000-0000-0000-000000000000",
6
"department_id": "00000000-0000-0000-0000-000000000000",
7
"tax_rate_id": "00000000-0000-0000-0000-000000000000",
8
"transaction_date": "2023-01-02",
9
"document_number": "CUSTRFD-1",
10
"line_items": [
11
{
12
"tax_rate_id": "00000000-0000-0000-0000-000000000000",
13
"description": "This is a description.",
14
"total_amount": 123.45,
15
"item": {
16
"id": "00000000-0000-0000-0000-000000000000",
17
"quantity": 1,
18
"unit_amount": 123.45
19
}
20
}
21
]
22
}
23
}
200
Example Response Body
JSON
1
{
2
"customer_refund": {
3
"id": "00000000-0000-0000-0000-000000000000",
4
"platform_id": "12345678",
5
"account_id": "00000000-0000-0000-0000-000000000000",
6
"class_id": "00000000-0000-0000-0000-000000000000",
7
"customer_id": "00000000-0000-0000-0000-000000000000",
8
"department_id": "00000000-0000-0000-0000-000000000000",
9
"tax_rate_id": "00000000-0000-0000-0000-000000000000",
10
"transaction_date": "2023-01-02",
11
"total_amount": 123.45,
12
"discount_amount": 20,
13
"document_number": "CUSTRFD-1",
14
"tax_amount": 23.45,
15
"line_items": [
16
{
17
"account_id": "00000000-0000-0000-0000-000000000000",
18
"class_id": "00000000-0000-0000-0000-000000000000",
19
"tax_rate_id": "00000000-0000-0000-0000-000000000000",
20
"total_amount": 123.45,
21
"description": "This is a description.",
22
"item": {
23
"id": "00000000-0000-0000-0000-000000000000",
24
"quantity": 1,
25
"unit_amount": 123.45
26
}
27
}
28
],
29
"created_at": "2023-01-02T02:34:56.000Z",
30
"updated_at": "2023-01-02T02:34:56.000Z",
31
"last_synced_at": "2023-01-02T02:34:56.000Z",
32
"platform_url": "https://platform.com/resource?id=123",
33
"platform_data": {
34
"id": 123,
35
"data": "Varies by platform"
36
}
37
}
38
}

Support by integration

Expand to view platform rules
  • QuickBooks
    QuickBooks
  • Xero
    Xero

Have questions?

Contact support for personalized guidance.

Contact support