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
id
stringThe Rutter generated unique ID of the invoice.
platform_id
stringThe platform specific ID of the invoice.
account_id
stringnullableThe Rutter ID of the Account linked to the invoice. Represents the account being debited.
class_id
stringnullableOptionalThe Rutter ID of the Class linked to the invoice. Supported for QuickBooks.
customer_id
stringnullableThe Rutter ID of the Customers linked to the invoice.
subsidiary_id
stringnullableThe Rutter ID of the Subsidiary linked to the invoice. Supported for NetSuite.
due_date
stringnullableThe ISO 8601 timestamp for when the invoice is/was due.
issue_date
stringThe ISO 8601 timestamp for when the invoice was issued.
status
enumThe status of the invoice.
amount_due
numbernullableThe current amount due on the invoice. Represents the remainder after invoice payments or invoice credit memos are applied against the total amount.
currency_code
enumnullableThe ISO 4217 currency code of the invoice.
discount_amount
numbernullableThe total amount of discounts applied to the invoice.
document_number
stringfilterablenullableThe seller facing document number of the invoice.
memo
stringnullableThe memo of the invoice.
sub_total
numbernullableThe subtotal of the invoice, without the tax amount.
tax_amount
numbernullableThe total tax amount applied to the invoice.
total_amount
numbernullableThe total amount due on the invoice.
linked_payments
arrayAn array of Rutter IDs of Invoice Payments and Invoice Credit Memos applied against the invoice.
linked_payments
attributesline_items
arrayline_items
attributesadditional_fields
objectOptionalAdditional fields required only for a narrow set of use cases.
additional_fields
attributescreated_at
stringfilterablenullableThe ISO 8601 timestamp that the invoice was created.
updated_at
stringfilterablenullableThe ISO 8601 timestamp that the invoice was last updated.
last_synced_at
stringfilterableThe ISO 8601 timestamp when the invoice was last synced by Rutter.
platform_url
stringnullableA 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_data
objectOptionalThe raw platform data corresponding to the Rutter object.
List Invoices
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.
filter
stringqueryOptionalUsed to specify criteria to filter out the objects returned. Supports all filterable
fields. Check Filtering Objects for more information. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.
sort
stringqueryOptionalUsed to sort the returned objects, e.g. last_synced_at ASC
. Supports all filterable
fields except on QuickBooks Desktop, Sage Intacct, and Dynamics 365. For those platforms only updated_at
and last_synced_at
fields are supported. If a value is provided but ASC
or DESC
is not, defaults to ASC
. If omitted, defaults to updated_at DESC
.
expand
enumqueryOptionalInclude platform specific data (includes additional fields not provided by the Rutter object).
document_number
stringqueryOptionalDeprecated - use filter
instead. The exact document number to filter on. Not supported on Sage Intacct, or Dynamics 365.
last_synced_at_min
integerqueryOptionalDeprecated - 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_max
integerqueryOptionalDeprecated - 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_min
integerqueryOptionalDeprecated - 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_fetch
enumqueryOptionalUsed to force a response even if the underlying connection has not finished its initial sync.
Response Body
invoices
arrayinvoices
attributesnext_cursor
stringnullableOptionalconnection
objectconnection
attributes- QuickBooks
- NetSuite
- Xero
- QuickBooks Desktop
1{
2 "invoices": [
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 "subsidiary_id": "00000000-0000-0000-0000-000000000000",
9 "due_date": "2023-01-02T02:34:56.000Z",
10 "issue_date": "2023-01-02T02:34:56.000Z",
11 "status": "partially_paid",
12 "amount_due": 9.34,
13 "currency_code": "USD",
14 "discount_amount": 0,
15 "document_number": "CUSTINVC-1",
16 "memo": "For a Rutter shirt.",
17 "sub_total": 12.34,
18 "tax_amount": 2,
19 "total_amount": 14.34,
20 "linked_payments": [
21 {
22 "id": "00000000-0000-0000-0000-000000000000",
23 "allocated_date": "2023-01-02T02:34:56.000Z",
24 "allocated_amount": 3,
25 "type": "INVOICE_PAYMENT"
26 },
27 {
28 "id": "00000000-0000-0000-0000-000000000000",
29 "allocated_date": "2023-01-02T02:34:56.000Z",
30 "allocated_amount": 2,
31 "type": "INVOICE_CREDIT_MEMO"
32 }
33 ],
34 "line_items": [
35 {
36 "platform_id": "12345678",
37 "account_id": "00000000-0000-0000-0000-000000000000",
38 "class_id": "00000000-0000-0000-0000-000000000000",
39 "tax_rate_id": "00000000-0000-0000-0000-000000000000",
40 "description": "A Rutter shirt.",
41 "discount_amount": 0,
42 "discount_percentage": 0,
43 "sub_total": 12.34,
44 "tax_amount": 2,
45 "total_amount": 14.34,
46 "item": {
47 "id": "00000000-0000-0000-0000-000000000000",
48 "quantity": 1,
49 "unit_amount": 12.34
50 }
51 }
52 ],
53 "created_at": "2023-01-02T02:34:56.000Z",
54 "updated_at": "2023-01-02T02:34:56.000Z",
55 "last_synced_at": "2023-01-02T02:34:56.000Z",
56 "platform_url": "https://platform.com/resource?id=123",
57 "platform_data": {
58 "id": 123,
59 "data": "Varies by platform"
60 }
61 }
62 ],
63 "next_cursor": "MTY3NDgzMTk0Ml82MDY4ZDI0ZC02NGRmLTRmN2EtYTM0Ny0zN2ZmNjY5MGVmMjU=",
64 "connection": {
65 "id": "00000000-0000-0000-0000-000000000000",
66 "orgId": "00000000-0000-0000-0000-000000000000",
67 "platform": "NETSUITE"
68 }
69}
Fetch an Invoice
Request Parameters
id
stringpathRequiredThe unique ID of the object.
access_token
stringqueryRequiredThe access token of the connection.
id_type
enumqueryOptionalUsed to indicate the type of id
that is supplied. Defaults to rutter
. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.
force_fetch
enumqueryOptionalUsed to force a response even if the underlying connection has not finished its initial sync.
Response Body
invoice
objectinvoice
attributesconnection
objectconnection
attributes- QuickBooks
- NetSuite
- Xero
- QuickBooks Desktop
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 "amount_due": 9.34,
12 "currency_code": "USD",
13 "discount_amount": 0,
14 "document_number": "CUSTINVC-1",
15 "memo": "For a Rutter shirt.",
16 "sub_total": 12.34,
17 "tax_amount": 2,
18 "total_amount": 14.34,
19 "linked_payments": [
20 {
21 "id": "00000000-0000-0000-0000-000000000000",
22 "allocated_date": "2023-01-02T02:34:56.000Z",
23 "allocated_amount": 3,
24 "type": "INVOICE_PAYMENT"
25 },
26 {
27 "id": "00000000-0000-0000-0000-000000000000",
28 "allocated_date": "2023-01-02T02:34:56.000Z",
29 "allocated_amount": 2,
30 "type": "INVOICE_CREDIT_MEMO"
31 }
32 ],
33 "line_items": [
34 {
35 "platform_id": "12345678",
36 "account_id": "00000000-0000-0000-0000-000000000000",
37 "class_id": "00000000-0000-0000-0000-000000000000",
38 "tax_rate_id": "00000000-0000-0000-0000-000000000000",
39 "description": "A Rutter shirt.",
40 "discount_amount": 0,
41 "discount_percentage": 0,
42 "sub_total": 12.34,
43 "tax_amount": 2,
44 "total_amount": 14.34,
45 "item": {
46 "id": "00000000-0000-0000-0000-000000000000",
47 "quantity": 1,
48 "unit_amount": 12.34
49 }
50 }
51 ],
52 "created_at": "2023-01-02T02:34:56.000Z",
53 "updated_at": "2023-01-02T02:34:56.000Z",
54 "last_synced_at": "2023-01-02T02:34:56.000Z",
55 "platform_url": "https://platform.com/resource?id=123",
56 "platform_data": {
57 "id": 123,
58 "data": "Varies by platform"
59 }
60 },
61 "connection": {
62 "id": "00000000-0000-0000-0000-000000000000",
63 "orgId": "00000000-0000-0000-0000-000000000000",
64 "platform": "NETSUITE"
65 }
66}
Create an Invoice
Request Parameters
access_token
stringqueryRequiredThe access token of the connection.
Request Body
invoice
objectinvoice
attributesResponse Body
Any of:
invoice
objectinvoice
attributesasync_response
objectOptionalasync_response
attributeserrors
arrayOptionalerrors
attributes- QuickBooks
- NetSuite
- Xero
- QuickBooks Desktop
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}
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 "amount_due": 9.34,
12 "currency_code": "USD",
13 "discount_amount": 0,
14 "document_number": "CUSTINVC-1",
15 "memo": "For a Rutter shirt.",
16 "sub_total": 12.34,
17 "tax_amount": 2,
18 "total_amount": 14.34,
19 "linked_payments": [
20 {
21 "id": "00000000-0000-0000-0000-000000000000",
22 "allocated_date": "2023-01-02T02:34:56.000Z",
23 "allocated_amount": 3,
24 "type": "INVOICE_PAYMENT"
25 },
26 {
27 "id": "00000000-0000-0000-0000-000000000000",
28 "allocated_date": "2023-01-02T02:34:56.000Z",
29 "allocated_amount": 2,
30 "type": "INVOICE_CREDIT_MEMO"
31 }
32 ],
33 "line_items": [
34 {
35 "platform_id": "12345678",
36 "account_id": "00000000-0000-0000-0000-000000000000",
37 "class_id": "00000000-0000-0000-0000-000000000000",
38 "tax_rate_id": "00000000-0000-0000-0000-000000000000",
39 "description": "A Rutter shirt.",
40 "discount_amount": 0,
41 "discount_percentage": 0,
42 "sub_total": 12.34,
43 "tax_amount": 2,
44 "total_amount": 14.34,
45 "item": {
46 "id": "00000000-0000-0000-0000-000000000000",
47 "quantity": 1,
48 "unit_amount": 12.34
49 }
50 }
51 ],
52 "created_at": "2023-01-02T02:34:56.000Z",
53 "updated_at": "2023-01-02T02:34:56.000Z",
54 "last_synced_at": "2023-01-02T02:34:56.000Z",
55 "platform_url": "https://platform.com/resource?id=123",
56 "platform_data": {
57 "id": 123,
58 "data": "Varies by platform"
59 }
60 }
61}
Update an Invoice
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
id
stringpathRequiredThe Rutter generated unique ID of the object.
access_token
stringqueryRequiredThe access token of the connection.
Request Body
invoice
objectinvoice
attributesResponse Body
Any of:
invoice
objectinvoice
attributesasync_response
objectOptionalasync_response
attributeserrors
arrayOptionalerrors
attributes- QuickBooks
- NetSuite
- Xero
- QuickBooks Desktop
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}
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 "amount_due": 9.34,
12 "currency_code": "USD",
13 "discount_amount": 0,
14 "document_number": "CUSTINVC-1",
15 "memo": "For a Rutter shirt.",
16 "sub_total": 12.34,
17 "tax_amount": 2,
18 "total_amount": 14.34,
19 "linked_payments": [
20 {
21 "id": "00000000-0000-0000-0000-000000000000",
22 "allocated_date": "2023-01-02T02:34:56.000Z",
23 "allocated_amount": 3,
24 "type": "INVOICE_PAYMENT"
25 },
26 {
27 "id": "00000000-0000-0000-0000-000000000000",
28 "allocated_date": "2023-01-02T02:34:56.000Z",
29 "allocated_amount": 2,
30 "type": "INVOICE_CREDIT_MEMO"
31 }
32 ],
33 "line_items": [
34 {
35 "platform_id": "12345678",
36 "account_id": "00000000-0000-0000-0000-000000000000",
37 "class_id": "00000000-0000-0000-0000-000000000000",
38 "tax_rate_id": "00000000-0000-0000-0000-000000000000",
39 "description": "A Rutter shirt.",
40 "discount_amount": 0,
41 "discount_percentage": 0,
42 "sub_total": 12.34,
43 "tax_amount": 2,
44 "total_amount": 14.34,
45 "item": {
46 "id": "00000000-0000-0000-0000-000000000000",
47 "quantity": 1,
48 "unit_amount": 12.34
49 }
50 }
51 ],
52 "created_at": "2023-01-02T02:34:56.000Z",
53 "updated_at": "2023-01-02T02:34:56.000Z",
54 "last_synced_at": "2023-01-02T02:34:56.000Z",
55 "platform_url": "https://platform.com/resource?id=123",
56 "platform_data": {
57 "id": 123,
58 "data": "Varies by platform"
59 }
60 }
61}
Delete an Invoice
Request Parameters
id
stringpathRequiredThe Rutter generated unique ID of the object.
access_token
stringqueryRequiredThe access token of the connection.
Response Body
Any of:
deleted_invoice
objectdeleted_invoice
attributesasync_response
objectOptionalasync_response
attributeserrors
arrayOptionalerrors
attributes- QuickBooks
1{
2 "deleted_invoice": {
3 "code": "deleted",
4 "success": true
5 }
6}
Have questions?
Contact support for personalized guidance.