Invoice Credit Memos

The InvoiceCreditMemo Object

A Rutter Invoice Credit Memo represents an invoice credit memo issued to a customer that can be applied against an invoice. Every invoice credit memo is linked to an Customer and zero or more Invoices.

Properties

idstring

The Rutter generated unique ID of the invoice credit memo.

platform_idstring

The platform specific ID of the invoice credit memo.

account_idstringnullable

The Rutter ID of the Account linked to the invoice. Represents the account being debited. This is typically the primary Accounts Receivable account.

customer_idstringnullable

The Rutter ID of the Customer linked to the invoice credit memo.

allocated_atstringnullable

The ISO 8601 timestamp for when the invoice credit memo was allocated.

issue_datestringnullable

The ISO 8601 timestamp for when the invoice credit memo was issued.

currency_codestringnullable

The ISO 4217 currency code of the invoice credit memo.

document_numberstringnullable

The buyer facing document number of the invoice credit memo.

memostringnullable

The memo of the invoice credit memo.

remaining_amountstringnullable

The remaining unapplied amount of the invoice credit memo.

statusenumnullable

The status of the invoice credit memo.

One ofOPENAPPLIEDPARTIALLY_APPLIEDDRAFTUNKNOWN, or null.
total_amountstringnullable

The total amount of the invoice credit memo.

linked_invoicesarray

An array of Rutter IDs of Invoices linked to the invoice credit memo.

Show linked_invoices attributes
line_itemsarray

An array of line items containing details about the invoice credit memo.

Show line_items attributes
created_atstringfilterablenullable

The ISO 8601 timestamp that the invoice credit memo was created.

updated_atstringfilterablenullable

The ISO 8601 timestamp that the invoice credit memo was last updated.

last_synced_atstringfilterable

The ISO 8601 timestamp when the invoice credit memo 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/invoice_credit_memos
GET
/accounting/invoice_credit_memos/:id
POST
/accounting/invoice_credit_memos
PATCH
/accounting/invoice_credit_memos/:id
DELETE
/accounting/invoice_credit_memos/:id
POST
/accounting/invoice_credit_applications

List Invoice Credit Memos

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

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 yet supported on Sage Intacct or Dynamics 365 Business Central. 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: updated_at, created_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 Dynamics 365 Business Central. For those platforms, only updated_at and last_synced_at fields are supported.

    Sortable fields: updated_at, created_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

Support by integration
  • QuickBooks
    QuickBooks
  • Xero
    Xero
  • QuickBooks Desktop
    QuickBooks Desktop
  • NetSuite
    NetSuite
200
Example Response Body
JSON
1
{
2
"invoice_credit_memos": [
3
{
4
"id": "00000000-0000-0000-0000-000000000000",
5
"platform_id": "12345678",
6
"account_id": "00000000-0000-0000-0000-000000000000",
7
"customer_id": "00000000-0000-0000-0000-000000000000",
8
"allocated_at": "2023-01-02T02:34:56.000Z",
9
"issue_date": "2023-01-02T02:34:56.000Z",
10
"currency_code": "USD",
11
"document_number": "CUSTCRED-1",
12
"memo": "Discount for future Rutter shirts.",
13
"remaining_amount": "0",
14
"status": "APPLIED",
15
"total_amount": "3",
16
"linked_invoices": [
17
{
18
"id": "00000000-0000-0000-0000-000000000000",
19
"allocated_amount": "3"
20
}
21
],
22
"line_items": [
23
{
24
"id": "00000000-0000-0000-0000-000000000000",
25
"platform_id": "12345678",
26
"account_id": "00000000-0000-0000-0000-000000000000",
27
"class_id": "00000000-0000-0000-0000-000000000000",
28
"item_id": "00000000-0000-0000-0000-000000000000",
29
"tax_rate_id": "00000000-0000-0000-0000-000000000000",
30
"amount": "14.34",
31
"description": "A Rutter shirt.",
32
"discount_amount": "0",
33
"discount_percentage": "0",
34
"quantity": 1,
35
"sub_total": "12.34",
36
"tax_amount": "2",
37
"unit_amount": "12.34"
38
}
39
],
40
"created_at": "2023-01-02T02:34:56.000Z",
41
"updated_at": "2023-01-02T02:34:56.000Z",
42
"last_synced_at": "2023-01-02T02:34:56.000Z",
43
"platform_url": "https://platform.com/resource?id=123",
44
"platform_data": {
45
"id": 123,
46
"data": "Varies by platform"
47
}
48
}
49
],
50
"next_cursor": "MTY3NDgzMTk0Ml82MDY4ZDI0ZC02NGRmLTRmN2EtYTM0Ny0zN2ZmNjY5MGVmMjU=",
51
"connection": {
52
"id": "00000000-0000-0000-0000-000000000000",
53
"orgId": "00000000-0000-0000-0000-000000000000",
54
"platform": "NETSUITE"
55
}
56
}

Fetch an Invoice Credit Memo

GEThttps://production.rutterapi.com/versioned/accounting/invoice_credit_memos/: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 yet supported on Sage Intacct or Dynamics 365 Business Central.

    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

Support by integration
  • QuickBooks
    QuickBooks
  • Xero
    Xero
  • QuickBooks Desktop
    QuickBooks Desktop
  • NetSuite
    NetSuite
200
Example Response Body
JSON
1
{
2
"invoice_credit_memo": {
3
"id": "00000000-0000-0000-0000-000000000000",
4
"platform_id": "12345678",
5
"account_id": "00000000-0000-0000-0000-000000000000",
6
"customer_id": "00000000-0000-0000-0000-000000000000",
7
"allocated_at": "2023-01-02T02:34:56.000Z",
8
"issue_date": "2023-01-02T02:34:56.000Z",
9
"currency_code": "USD",
10
"document_number": "CUSTCRED-1",
11
"memo": "Discount for future Rutter shirts.",
12
"remaining_amount": "0",
13
"status": "APPLIED",
14
"total_amount": "3",
15
"linked_invoices": [
16
{
17
"id": "00000000-0000-0000-0000-000000000000",
18
"allocated_amount": "3"
19
}
20
],
21
"line_items": [
22
{
23
"id": "00000000-0000-0000-0000-000000000000",
24
"platform_id": "12345678",
25
"account_id": "00000000-0000-0000-0000-000000000000",
26
"class_id": "00000000-0000-0000-0000-000000000000",
27
"item_id": "00000000-0000-0000-0000-000000000000",
28
"tax_rate_id": "00000000-0000-0000-0000-000000000000",
29
"amount": "14.34",
30
"description": "A Rutter shirt.",
31
"discount_amount": "0",
32
"discount_percentage": "0",
33
"quantity": 1,
34
"sub_total": "12.34",
35
"tax_amount": "2",
36
"unit_amount": "12.34"
37
}
38
],
39
"created_at": "2023-01-02T02:34:56.000Z",
40
"updated_at": "2023-01-02T02:34:56.000Z",
41
"last_synced_at": "2023-01-02T02:34:56.000Z",
42
"platform_url": "https://platform.com/resource?id=123",
43
"platform_data": {
44
"id": 123,
45
"data": "Varies by platform"
46
}
47
},
48
"connection": {
49
"id": "00000000-0000-0000-0000-000000000000",
50
"orgId": "00000000-0000-0000-0000-000000000000",
51
"platform": "NETSUITE"
52
}
53
}

Create an Invoice Credit Memo

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

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.
    invoice_credit_memoobject
    Show invoice_credit_memo attributes

Response Body

Support by integration
  • QuickBooks
    QuickBooks
  • Xero
    Xero
  • QuickBooks Desktop
    QuickBooks Desktop
  • NetSuite
    NetSuite
Example Request Body
JSON
1
{
2
"invoice_credit_memo": {
3
"account_id": "00000000-0000-0000-0000-000000000000",
4
"customer_id": "00000000-0000-0000-0000-000000000000",
5
"issue_date": "2023-01-02T02:34:56.000Z",
6
"currency_code": "USD",
7
"line_items": [
8
{
9
"account_id": "00000000-0000-0000-0000-000000000000",
10
"description": "Discount for future Rutter shirts.",
11
"total_amount": "3",
12
"item": {
13
"id": "00000000-0000-0000-0000-000000000000",
14
"quantity": 1,
15
"unit_amount": "3"
16
}
17
}
18
]
19
}
20
}
200
Example Response Body
JSON
1
{
2
"invoice_credit_memo": {
3
"id": "00000000-0000-0000-0000-000000000000",
4
"platform_id": "12345678",
5
"account_id": "00000000-0000-0000-0000-000000000000",
6
"customer_id": "00000000-0000-0000-0000-000000000000",
7
"allocated_at": "2023-01-02T02:34:56.000Z",
8
"issue_date": "2023-01-02T02:34:56.000Z",
9
"currency_code": "USD",
10
"document_number": "CUSTCRED-1",
11
"memo": "Discount for future Rutter shirts.",
12
"remaining_amount": "0",
13
"status": "APPLIED",
14
"total_amount": "3",
15
"linked_invoices": [
16
{
17
"id": "00000000-0000-0000-0000-000000000000",
18
"allocated_amount": "3"
19
}
20
],
21
"line_items": [
22
{
23
"id": "00000000-0000-0000-0000-000000000000",
24
"platform_id": "12345678",
25
"account_id": "00000000-0000-0000-0000-000000000000",
26
"class_id": "00000000-0000-0000-0000-000000000000",
27
"item_id": "00000000-0000-0000-0000-000000000000",
28
"tax_rate_id": "00000000-0000-0000-0000-000000000000",
29
"amount": "14.34",
30
"description": "A Rutter shirt.",
31
"discount_amount": "0",
32
"discount_percentage": "0",
33
"quantity": 1,
34
"sub_total": "12.34",
35
"tax_amount": "2",
36
"unit_amount": "12.34"
37
}
38
],
39
"created_at": "2023-01-02T02:34:56.000Z",
40
"updated_at": "2023-01-02T02:34:56.000Z",
41
"last_synced_at": "2023-01-02T02:34:56.000Z",
42
"platform_url": "https://platform.com/resource?id=123",
43
"platform_data": {
44
"id": 123,
45
"data": "Varies by platform"
46
}
47
}
48
}

Update an Invoice Credit Memo

PATCHhttps://production.rutterapi.com/versioned/accounting/invoice_credit_memos/:id

Request Parameters

    idstringpathRequired

    The Rutter generated unique ID of the object.

    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.
    invoice_credit_memoobject
    Show invoice_credit_memo attributes

Response Body

Support by integration
  • QuickBooks Desktop
    QuickBooks Desktop
Example Request Body
JSON
1
{
2
"invoice_credit_memo": {
3
"account_id": "00000000-0000-0000-0000-000000000000",
4
"customer_id": "00000000-0000-0000-0000-000000000000",
5
"issue_date": "2023-01-02T02:34:56.000Z",
6
"currency_code": "USD",
7
"line_items": [
8
{
9
"account_id": "00000000-0000-0000-0000-000000000000",
10
"description": "Discount for future Rutter shirts.",
11
"total_amount": "3",
12
"item": {
13
"id": "00000000-0000-0000-0000-000000000000",
14
"quantity": 1,
15
"unit_amount": "3"
16
}
17
}
18
]
19
}
20
}
200
Example Response Body
JSON
1
{
2
"invoice_credit_memo": {
3
"id": "00000000-0000-0000-0000-000000000000",
4
"platform_id": "12345678",
5
"account_id": "00000000-0000-0000-0000-000000000000",
6
"customer_id": "00000000-0000-0000-0000-000000000000",
7
"allocated_at": "2023-01-02T02:34:56.000Z",
8
"issue_date": "2023-01-02T02:34:56.000Z",
9
"currency_code": "USD",
10
"document_number": "CUSTCRED-1",
11
"memo": "Discount for future Rutter shirts.",
12
"remaining_amount": "0",
13
"status": "APPLIED",
14
"total_amount": "3",
15
"linked_invoices": [
16
{
17
"id": "00000000-0000-0000-0000-000000000000",
18
"allocated_amount": "3"
19
}
20
],
21
"line_items": [
22
{
23
"id": "00000000-0000-0000-0000-000000000000",
24
"platform_id": "12345678",
25
"account_id": "00000000-0000-0000-0000-000000000000",
26
"class_id": "00000000-0000-0000-0000-000000000000",
27
"item_id": "00000000-0000-0000-0000-000000000000",
28
"tax_rate_id": "00000000-0000-0000-0000-000000000000",
29
"amount": "14.34",
30
"description": "A Rutter shirt.",
31
"discount_amount": "0",
32
"discount_percentage": "0",
33
"quantity": 1,
34
"sub_total": "12.34",
35
"tax_amount": "2",
36
"unit_amount": "12.34"
37
}
38
],
39
"created_at": "2023-01-02T02:34:56.000Z",
40
"updated_at": "2023-01-02T02:34:56.000Z",
41
"last_synced_at": "2023-01-02T02:34:56.000Z",
42
"platform_url": "https://platform.com/resource?id=123",
43
"platform_data": {
44
"id": 123,
45
"data": "Varies by platform"
46
}
47
}
48
}

Delete an Invoice Credit Memo

DELETEhttps://production.rutterapi.com/versioned/accounting/invoice_credit_memos/:id

Request Parameters

    idstringpathRequired

    The Rutter generated unique ID of the object.

    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.

Response Body

Support by integration
  • NetSuite
    NetSuite
200
Example Response Body
JSON
1
{
2
"code": "deleted",
3
"success": true
4
}

Create an Invoice Credit Memo Application

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

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.
    invoice_credit_applicationobject
    Show invoice_credit_application attributes

Response Body

Support by integration
  • QuickBooks
    QuickBooks
  • Xero
    Xero
  • QuickBooks Desktop
    QuickBooks Desktop
  • NetSuite
    NetSuite
Example Request Body
JSON
1
{
2
"invoice_credit_application": {
3
"account_id": "00000000-0000-0000-0000-000000000000",
4
"customer_id": "00000000-0000-0000-0000-000000000000",
5
"invoice_credit_memo_id": "00000000-0000-0000-0000-000000000000",
6
"transaction_date": "2023-01-02T02:34:56.000Z",
7
"currency_code": "USD",
8
"memo": "Applying vendor credit for the invoice.",
9
"linked_invoices": [
10
{
11
"id": "00000000-0000-0000-0000-000000000000",
12
"allocated_amount": 12.34
13
}
14
]
15
}
16
}
200
Example Response Body
JSON
1
{
2
"invoice_credit_application": {
3
"success": true
4
}
5
}

Have questions?

Contact support for personalized guidance.

Contact support