Invoices

The Invoice Object

A Rutter Invoice represents an invoice issued by the business entity that a customer must pay. Every invoice is linked to an accounts receivable Account, a Customer, Invoice Payments, and Invoice Credit Memos.

The invoice line item contains information regarding the items sold and accounts affected in the invoice. Every invoice line item is linked to a credit Account, Tax Rate, or Item.

Files can be attached to Rutter Invoices in the form of Rutter Attachments.

Properties

idstringRequired

The Rutter generated unique ID of the invoice.

platform_idstringRequired

The platform specific ID of the invoice.

account_idstringRequired

The Rutter ID of the Account linked to the invoice. Represents the account being debited.

customer_idstringnullableRequired

The Rutter ID of the Customers linked to the invoice.

subsidiary_idstringnullableRequired

The Rutter ID of the Subsidiary linked to the invoice. This feature is currently only supported on NetSuite.

due_datestringnullableRequired

The ISO 8601 timestamp for when the invoice is/was due.

issue_datestringRequired

The ISO 8601 timestamp for when the invoice was issued.

statusenumRequired

The status of the invoice.

One ofopenpartially_paidpaidvoiddraftunknown, or submitted.
currency_codestringnullableRequired

The ISO 4217 currency code of the invoice.

document_numberstringnullableRequired

The buyer facing document number of the invoice.

memostringnullable

The memo of the invoice.

amount_duestringnullableRequired

The current amount due on the invoice. Represents the remainder after invoice payments or invoice credit memos are applied against the total amount.

sub_totalstringnullableRequired

The subtotal of the invoice, without the tax amount.

tax_amountstringnullableRequired

The total tax amount applied to the invoice.

total_amountstringnullableRequired

The total amount due on the invoice.

total_discountstringnullableRequired

The total amount of discounts applied to the invoice.

linked_paymentsarrayRequired

An array of Rutter IDs of Invoice Payments and Invoice Credit Memos applied against the invoice.

Show linked_payments attributes
line_itemsarrayRequired

An array of line items associated with the invoice.

Show line_items attributes
created_atstringnullableRequired

The ISO 8601 timestamp that the invoice was created.

updated_atstringnullableRequired

The ISO 8601 timestamp that the invoice was last updated.

last_synced_atstringRequired

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

platform_dataobject

The raw platform data corresponding to the Rutter object.

Endpoints
GET
/accounting/invoices
GET
/accounting/invoices/:id
POST
/accounting/invoices
PATCH
/accounting/invoices/:id
DELETE
/accounting/invoices/:id

List Invoices

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

Request Parameters

    access_tokenstringqueryRequired

    The access token of the connection.

    cursorstringquery

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

    document_numberstringquery

    The document_number to filter on. Supported for QuickBooks Desktop only.

    expandenumquery

    Used to request inclusion of optional objects.

    Can beplatform_data.
    force_fetchenumquery

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

    One oftrue or false.
    last_synced_at_minintegerquery

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

    limitintegerquery

    The limit on the number of entities returned.

    sortstringquery

    The field and direction to sort by (ASC or DESC), e.g. last_synced_at ASC. Currently supports the fields: updated_at, last_synced_at. If a field is provided but ASC or DESC is not, defaults to ASC. If this field is omitted, defaults, to updated_at DESC.

    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
    invoicesarrayRequired
    Show invoices attributes
    next_cursorstringnullable
Support by integration
  • QuickBooks
    QuickBooks
  • Netsuite
    Netsuite
  • Xero
    Xero
  • QuickBooks Desktop
    QuickBooks Desktop
Example Response Body
JSON
1
{
2
"connection": {
3
"id": "00000000-0000-0000-0000-000000000000",
4
"orgId": "00000000-0000-0000-0000-000000000000",
5
"platform": "NETSUITE"
6
},
7
"invoices": [
8
{
9
"id": "00000000-0000-0000-0000-000000000000",
10
"platform_id": "12345678",
11
"account_id": "00000000-0000-0000-0000-000000000000",
12
"customer_id": "00000000-0000-0000-0000-000000000000",
13
"subsidiary_id": "00000000-0000-0000-0000-000000000000",
14
"due_date": "2023-01-02T02:34:56.000Z",
15
"issue_date": "2023-01-02T02:34:56.000Z",
16
"status": "partially_paid",
17
"currency_code": "USD",
18
"document_number": "CUSTINVC-1",
19
"memo": "For a Rutter shirt.",
20
"amount_due": "9.34",
21
"sub_total": "12.34",
22
"tax_amount": "2",
23
"total_amount": "14.34",
24
"total_discount": "0",
25
"linked_payments": [
26
{
27
"id": "00000000-0000-0000-0000-000000000000",
28
"date": "2023-01-02T02:34:56.000Z",
29
"type": "INVOICE_PAYMENT",
30
"amount": "3"
31
},
32
{
33
"id": "00000000-0000-0000-0000-000000000000",
34
"date": "2023-01-02T02:34:56.000Z",
35
"type": "INVOICE_CREDIT_MEMO",
36
"amount": "2"
37
}
38
],
39
"line_items": [
40
{
41
"id": "00000000-0000-0000-0000-000000000000",
42
"platform_id": "12345678",
43
"account_id": "00000000-0000-0000-0000-000000000000",
44
"class_id": "00000000-0000-0000-0000-000000000000",
45
"item_id": "00000000-0000-0000-0000-000000000000",
46
"tax_rate_id": "00000000-0000-0000-0000-000000000000",
47
"description": "A Rutter shirt.",
48
"quantity": 1,
49
"amount": "14.34",
50
"discount_amount": "0",
51
"discount_percentage": "0",
52
"sub_total": "12.34",
53
"tax_amount": "2",
54
"unit_amount": "12.34"
55
}
56
],
57
"created_at": "2023-01-02T02:34:56.000Z",
58
"updated_at": "2023-01-02T02:34:56.000Z",
59
"last_synced_at": "2023-01-02T02:34:56.000Z",
60
"platform_data": {
61
"id": 123,
62
"data": "Varies by platform"
63
}
64
}
65
],
66
"next_cursor": "MTY3NDgzMTk0Ml82MDY4ZDI0ZC02NGRmLTRmN2EtYTM0Ny0zN2ZmNjY5MGVmMjU="
67
}

Fetch an Invoice

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

Request Parameters

    idstringpathRequired

    The Rutter generated unique ID of the object.

    access_tokenstringqueryRequired

    The access token of the connection.

    force_fetchenumquery

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

    One oftrue or false.

Response Body

    connectionobjectRequired
    Show connection attributes
    invoiceobjectRequired
    Show invoice attributes
Support by integration
  • QuickBooks
    QuickBooks
  • Netsuite
    Netsuite
  • Xero
    Xero
  • QuickBooks Desktop
    QuickBooks Desktop
Example Response Body
JSON
1
{
2
"connection": {
3
"id": "00000000-0000-0000-0000-000000000000",
4
"orgId": "00000000-0000-0000-0000-000000000000",
5
"platform": "NETSUITE"
6
},
7
"invoice": {
8
"id": "00000000-0000-0000-0000-000000000000",
9
"platform_id": "12345678",
10
"account_id": "00000000-0000-0000-0000-000000000000",
11
"customer_id": "00000000-0000-0000-0000-000000000000",
12
"subsidiary_id": "00000000-0000-0000-0000-000000000000",
13
"due_date": "2023-01-02T02:34:56.000Z",
14
"issue_date": "2023-01-02T02:34:56.000Z",
15
"status": "partially_paid",
16
"currency_code": "USD",
17
"document_number": "CUSTINVC-1",
18
"memo": "For a Rutter shirt.",
19
"amount_due": "9.34",
20
"sub_total": "12.34",
21
"tax_amount": "2",
22
"total_amount": "14.34",
23
"total_discount": "0",
24
"linked_payments": [
25
{
26
"id": "00000000-0000-0000-0000-000000000000",
27
"date": "2023-01-02T02:34:56.000Z",
28
"type": "INVOICE_PAYMENT",
29
"amount": "3"
30
},
31
{
32
"id": "00000000-0000-0000-0000-000000000000",
33
"date": "2023-01-02T02:34:56.000Z",
34
"type": "INVOICE_CREDIT_MEMO",
35
"amount": "2"
36
}
37
],
38
"line_items": [
39
{
40
"id": "00000000-0000-0000-0000-000000000000",
41
"platform_id": "12345678",
42
"account_id": "00000000-0000-0000-0000-000000000000",
43
"class_id": "00000000-0000-0000-0000-000000000000",
44
"item_id": "00000000-0000-0000-0000-000000000000",
45
"tax_rate_id": "00000000-0000-0000-0000-000000000000",
46
"description": "A Rutter shirt.",
47
"quantity": 1,
48
"amount": "14.34",
49
"discount_amount": "0",
50
"discount_percentage": "0",
51
"sub_total": "12.34",
52
"tax_amount": "2",
53
"unit_amount": "12.34"
54
}
55
],
56
"created_at": "2023-01-02T02:34:56.000Z",
57
"updated_at": "2023-01-02T02:34:56.000Z",
58
"last_synced_at": "2023-01-02T02:34:56.000Z",
59
"platform_data": {
60
"id": 123,
61
"data": "Varies by platform"
62
}
63
}
64
}

Create an Invoice

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

Request Parameters

    access_tokenstringqueryRequired

    The access token of the connection.

Request Body

    invoiceobjectRequired
    Show invoice attributes

Response Body

    Any of:

    invoiceobjectRequired
    Show invoice attributes
    async_responseobject
    Show async_response attributes
    errorsarray
    Show errors attributes
Support by integration
  • QuickBooks
    QuickBooks
  • Netsuite
    Netsuite
  • Xero
    Xero
  • QuickBooks Desktop
    QuickBooks Desktop
Example Request Body
JSON
1
{
2
"invoice": {
3
"customer_id": "00000000-0000-0000-0000-000000000000",
4
"due_date": "2023-01-02T02:34:56.000Z",
5
"issue_date": "2023-01-02T02:34:56.000Z",
6
"currency_code": "USD",
7
"document_number": "CUSTINVC-1",
8
"memo": "For a Rutter shirt.",
9
"line_items": [
10
{
11
"total_amount": 12.34,
12
"description": "A Rutter Shirt",
13
"item": {
14
"id": "00000000-0000-0000-0000-000000000000",
15
"quantity": 1,
16
"unit_amount": 12.34
17
}
18
}
19
]
20
}
21
}
Example Response Body
JSON
1
{
2
"invoice": {
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
"subsidiary_id": "00000000-0000-0000-0000-000000000000",
8
"due_date": "2023-01-02T02:34:56.000Z",
9
"issue_date": "2023-01-02T02:34:56.000Z",
10
"status": "partially_paid",
11
"currency_code": "USD",
12
"document_number": "CUSTINVC-1",
13
"memo": "For a Rutter shirt.",
14
"amount_due": "9.34",
15
"sub_total": "12.34",
16
"tax_amount": "2",
17
"total_amount": "14.34",
18
"total_discount": "0",
19
"linked_payments": [
20
{
21
"id": "00000000-0000-0000-0000-000000000000",
22
"date": "2023-01-02T02:34:56.000Z",
23
"type": "INVOICE_PAYMENT",
24
"amount": "3"
25
},
26
{
27
"id": "00000000-0000-0000-0000-000000000000",
28
"date": "2023-01-02T02:34:56.000Z",
29
"type": "INVOICE_CREDIT_MEMO",
30
"amount": "2"
31
}
32
],
33
"line_items": [
34
{
35
"id": "00000000-0000-0000-0000-000000000000",
36
"platform_id": "12345678",
37
"account_id": "00000000-0000-0000-0000-000000000000",
38
"class_id": "00000000-0000-0000-0000-000000000000",
39
"item_id": "00000000-0000-0000-0000-000000000000",
40
"tax_rate_id": "00000000-0000-0000-0000-000000000000",
41
"description": "A Rutter shirt.",
42
"quantity": 1,
43
"amount": "14.34",
44
"discount_amount": "0",
45
"discount_percentage": "0",
46
"sub_total": "12.34",
47
"tax_amount": "2",
48
"unit_amount": "12.34"
49
}
50
],
51
"created_at": "2023-01-02T02:34:56.000Z",
52
"updated_at": "2023-01-02T02:34:56.000Z",
53
"last_synced_at": "2023-01-02T02:34:56.000Z",
54
"platform_data": {
55
"id": 123,
56
"data": "Varies by platform"
57
}
58
}
59
}

Update an Invoice

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

If a field value is provided, that field will take the updated value. If the field is not provided, the existing value will persist.

Request Parameters

    idstringpathRequired

    The Rutter generated unique ID of the object.

    access_tokenstringqueryRequired

    The access token of the connection.

Request Body

    invoiceobjectRequired
    Show invoice attributes

Response Body

    Any of:

    invoiceobjectRequired
    Show invoice attributes
    async_responseobject
    Show async_response attributes
    errorsarray
    Show errors attributes
Support by integration
  • QuickBooks
    QuickBooks
  • Netsuite
    Netsuite
  • Xero
    Xero
  • QuickBooks Desktop
    QuickBooks Desktop
Example Request Body
JSON
1
{
2
"invoice": {
3
"due_date": "2023-01-02T02:34:56.000Z",
4
"document_number": "CUSTINVC-2",
5
"line_items": [
6
{
7
"total_amount": 12.34,
8
"description": "A Rutter Shirt",
9
"item": {
10
"id": "00000000-0000-0000-0000-000000000000",
11
"quantity": 1,
12
"unit_amount": 12.34
13
}
14
}
15
]
16
}
17
}
Example Response Body
JSON
1
{
2
"invoice": {
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
"subsidiary_id": "00000000-0000-0000-0000-000000000000",
8
"due_date": "2023-01-02T02:34:56.000Z",
9
"issue_date": "2023-01-02T02:34:56.000Z",
10
"status": "partially_paid",
11
"currency_code": "USD",
12
"document_number": "CUSTINVC-1",
13
"memo": "For a Rutter shirt.",
14
"amount_due": "9.34",
15
"sub_total": "12.34",
16
"tax_amount": "2",
17
"total_amount": "14.34",
18
"total_discount": "0",
19
"linked_payments": [
20
{
21
"id": "00000000-0000-0000-0000-000000000000",
22
"date": "2023-01-02T02:34:56.000Z",
23
"type": "INVOICE_PAYMENT",
24
"amount": "3"
25
},
26
{
27
"id": "00000000-0000-0000-0000-000000000000",
28
"date": "2023-01-02T02:34:56.000Z",
29
"type": "INVOICE_CREDIT_MEMO",
30
"amount": "2"
31
}
32
],
33
"line_items": [
34
{
35
"id": "00000000-0000-0000-0000-000000000000",
36
"platform_id": "12345678",
37
"account_id": "00000000-0000-0000-0000-000000000000",
38
"class_id": "00000000-0000-0000-0000-000000000000",
39
"item_id": "00000000-0000-0000-0000-000000000000",
40
"tax_rate_id": "00000000-0000-0000-0000-000000000000",
41
"description": "A Rutter shirt.",
42
"quantity": 1,
43
"amount": "14.34",
44
"discount_amount": "0",
45
"discount_percentage": "0",
46
"sub_total": "12.34",
47
"tax_amount": "2",
48
"unit_amount": "12.34"
49
}
50
],
51
"created_at": "2023-01-02T02:34:56.000Z",
52
"updated_at": "2023-01-02T02:34:56.000Z",
53
"last_synced_at": "2023-01-02T02:34:56.000Z",
54
"platform_data": {
55
"id": 123,
56
"data": "Varies by platform"
57
}
58
}
59
}

Delete an Invoice

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

Request Parameters

    idstringpathRequired

    The Rutter generated unique ID of the object.

    access_tokenstringqueryRequired

    The access token of the connection.

Response Body

    deleted_invoiceobjectRequired
    Show deleted_invoice attributes
Support by integration
  • QuickBooks
    QuickBooks
Example Response Body
JSON
1
{
2
"deleted_invoice": {
3
"code": "deleted",
4
"success": true
5
}
6
}

Have questions?

Contact support for personalized guidance.

Contact support