Customers

The AccountingCustomer Object

A Rutter Customer is an individual or company that buys goods or services from a business. Customers relate to a corresponding invoice for a business. You can retrieve a list of all the customers of a company.

For customers from a commerce platform, see Customers.

Properties

idstringRequired

The Rutter generated unique ID of the customer.

platform_idstringnullableRequired

The platform specific ID of the customer.

parent_idstringnullable

QuickBooks only: link the parent customer to this customer.

subsidiary_idstringnullableRequired

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

statusenumRequired
One ofACTIVEINACTIVE, or UNKNOWN.
contact_namestringnullableRequired

The name of the primary contact of the customer.

currency_codestringnullableRequired

The ISO 4217 currency code of the customer.

customer_namestringnullableRequired

The business name of the customer.

emailstringnullableRequired

The email of the customer.

phonestringnullableRequired

The phone number of the customer.

registration_numberstringnullableRequired

The registration number of the customer

tax_numberstringnullableRequired
addressesarrayRequired

An array of addresses linked to the customer.

Show addresses attributes
updated_atstringRequired
last_synced_atstringRequired

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

platform_dataobject

The raw platform data corresponding to the Rutter object.

Endpoints
GET
/accounting/customers
GET
/accounting/customers/:id
POST
/accounting/customers
PATCH
/accounting/customers/:id

List Customers

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

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.

    customer_namestringquery

    The exact customer name 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
    customersarrayRequired
    Show customers 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
"customers": [
8
{
9
"id": "00000000-0000-0000-0000-000000000000",
10
"platform_id": "12345678",
11
"subsidiary_id": "00000000-0000-0000-0000-000000000000",
12
"status": "ACTIVE",
13
"contact_name": "Eric Yu",
14
"currency_code": "USD",
15
"customer_name": "Rutter API",
16
"email": "eric@rutter.com",
17
"phone": "1234567890",
18
"registration_number": "123456789",
19
"tax_number": "12-3456789",
20
"addresses": [
21
{
22
"type": "billing",
23
"address1": "123 Rutter Road",
24
"address2": "Floor 4",
25
"city": "San Francisco",
26
"country": "US",
27
"postal_code": "94110",
28
"region": "CA"
29
}
30
],
31
"updated_at": "2023-01-02T02:34:56.000Z",
32
"last_synced_at": "2023-01-02T02:34:56.000Z",
33
"platform_data": {
34
"id": 123,
35
"data": "Varies by platform"
36
}
37
}
38
],
39
"next_cursor": "MTY3NDgzMTk0Ml82MDY4ZDI0ZC02NGRmLTRmN2EtYTM0Ny0zN2ZmNjY5MGVmMjU="
40
}

Fetch a Customer

GEThttps://production.rutterapi.com/versioned/accounting/customers/: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.
    id_typeenumquery

    Optionally, search for a connection by Rutter ID or platform ID. Defaults to rutter. Not supported on QuickBooks Desktop, Sage Intacct, or Dynamics 365.

    One ofrutter or platform.

Response Body

    connectionobjectRequired
    Show connection attributes
    customerobjectRequired
    Show customer 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
"customer": {
8
"id": "00000000-0000-0000-0000-000000000000",
9
"platform_id": "12345678",
10
"subsidiary_id": "00000000-0000-0000-0000-000000000000",
11
"status": "ACTIVE",
12
"contact_name": "Eric Yu",
13
"currency_code": "USD",
14
"customer_name": "Rutter API",
15
"email": "eric@rutter.com",
16
"phone": "1234567890",
17
"registration_number": "123456789",
18
"tax_number": "12-3456789",
19
"addresses": [
20
{
21
"type": "billing",
22
"address1": "123 Rutter Road",
23
"address2": "Floor 4",
24
"city": "San Francisco",
25
"country": "US",
26
"postal_code": "94110",
27
"region": "CA"
28
}
29
],
30
"updated_at": "2023-01-02T02:34:56.000Z",
31
"last_synced_at": "2023-01-02T02:34:56.000Z",
32
"platform_data": {
33
"id": 123,
34
"data": "Varies by platform"
35
}
36
}
37
}

Create a Customer

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

Request Parameters

    access_tokenstringqueryRequired

    The access token of the connection.

Request Body

    customerobjectRequired
    Show customer attributes

Response Body

    Any of:

    customerobjectRequired
    Show customer 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
"customer": {
3
"contact_name": "Eric Yu",
4
"customer_name": "Rutter",
5
"email": "eric@rutter.com",
6
"phone": "1234567890",
7
"addresses": [
8
{
9
"type": "billing",
10
"address1": "123 Rutter Road",
11
"address2": "Floor 4",
12
"city": "San Francisco",
13
"country": "US",
14
"postal_code": "94110",
15
"region": "CA"
16
}
17
]
18
}
19
}
Example Response Body
JSON
1
{
2
"customer": {
3
"id": "00000000-0000-0000-0000-000000000000",
4
"platform_id": "12345678",
5
"subsidiary_id": "00000000-0000-0000-0000-000000000000",
6
"status": "ACTIVE",
7
"contact_name": "Eric Yu",
8
"currency_code": "USD",
9
"customer_name": "Rutter API",
10
"email": "eric@rutter.com",
11
"phone": "1234567890",
12
"registration_number": "123456789",
13
"tax_number": "12-3456789",
14
"addresses": [
15
{
16
"type": "billing",
17
"address1": "123 Rutter Road",
18
"address2": "Floor 4",
19
"city": "San Francisco",
20
"country": "US",
21
"postal_code": "94110",
22
"region": "CA"
23
}
24
],
25
"updated_at": "2023-01-02T02:34:56.000Z",
26
"last_synced_at": "2023-01-02T02:34:56.000Z",
27
"platform_data": {
28
"id": 123,
29
"data": "Varies by platform"
30
}
31
}
32
}

Update a Customer

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

Request Parameters

    idstringpathRequired

    The Rutter generated unique ID of the object.

    access_tokenstringqueryRequired

    The access token of the connection.

Request Body

    customerobjectRequired
    Show customer attributes

Response Body

    Any of:

    customerobjectRequired
    Show customer attributes
    async_responseobject
    Show async_response attributes
    errorsarray
    Show errors attributes
Support by integration
  • QuickBooks
    QuickBooks
  • Xero
    Xero
  • QuickBooks Desktop
    QuickBooks Desktop
  • Freshbooks
    Freshbooks
Example Response Body
JSON
1
{
2
"customer": {
3
"id": "00000000-0000-0000-0000-000000000000",
4
"platform_id": "12345678",
5
"subsidiary_id": "00000000-0000-0000-0000-000000000000",
6
"status": "ACTIVE",
7
"contact_name": "Eric Yu",
8
"currency_code": "USD",
9
"customer_name": "Rutter API",
10
"email": "eric@rutter.com",
11
"phone": "1234567890",
12
"registration_number": "123456789",
13
"tax_number": "12-3456789",
14
"addresses": [
15
{
16
"type": "billing",
17
"address1": "123 Rutter Road",
18
"address2": "Floor 4",
19
"city": "San Francisco",
20
"country": "US",
21
"postal_code": "94110",
22
"region": "CA"
23
}
24
],
25
"updated_at": "2023-01-02T02:34:56.000Z",
26
"last_synced_at": "2023-01-02T02:34:56.000Z",
27
"platform_data": {
28
"id": 123,
29
"data": "Varies by platform"
30
}
31
}
32
}

Have questions?

Contact support for personalized guidance.

Contact support