Vendors
The Vendor Object
A Rutter Vendor represents a business or contact that the business entity has purchased from. In some accounting systems, a vendor may be called a Supplier. The vendor object contains contact information as well as shipping and billing addresses.
Properties
id
stringThe Rutter generated unique ID of the vendor.
platform_id
stringThe platform specific ID of the vendor.
status
enumThe status of the address.
bank_account_number
stringnullableThe bank account number of vendor. Supported for Sage Business Cloud and Xero.
contact_name
stringnullableThe name of the primary contact associated with the vendor.
currency
enumnullableThe ISO 4217 currency code of the vendor.
email
stringnullableThe email of the primary contact associated with the vendor.
phone
stringnullableThe phone number of the primary contact associated with the vendor.
registration_number
stringnullableThe registration number of the vendor
tax_number
stringnullableThe tax number of the vendor.
vendor_name
stringfilterablenullableThe name of the vendor as it would appear in the platform's listings ("display name").
website
stringnullableThe website associated with the vendor.
subsidiaries
arrayAn array of Subsidiaries linked to the vendor. Supported for NetSuite. A subsidiary_id query parameter can be optionally included in GET requests to filter the vendor results.
subsidiaries
attributesaddresses
arrayAn array of addresses associated with the vendor.
addresses
attributescreated_at
stringfilterableThe ISO 8601 timestamp that the vendor was created.
updated_at
stringfilterableThe ISO 8601 timestamp that the vendor was last updated.
last_synced_at
stringfilterableThe ISO 8601 timestamp when the vendor 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 Vendors
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
stringqueryOptionalNot 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: vendor_name
, created_at
, updated_at
, last_synced_at
.
sort
stringqueryOptionalUsed 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_min
, updated_at_max
and last_synced_at_min
fields are supported and not deprecated.
Sortable fields: vendor_name
, created_at
, updated_at
, last_synced_at
.
expand
enumqueryOptionalInclude platform specific data (includes additional fields not provided by the Rutter object).
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.
vendor_name
stringfilterablequeryOptionalDeprecated - use filter
instead. The exact vendor name to filter on. Not currently supported on Sage Intacct or Sage Business Cloud.
force_fetch
enumqueryOptionalUsed to force a response even if the underlying connection has not finished its initial sync.
Response Body
- QuickBooks
- Xero
- QuickBooks Desktop
- NetSuite
1{
2 "vendors": [
3 {
4 "id": "00000000-0000-0000-0000-000000000000",
5 "platform_id": "12345678",
6 "status": "active",
7 "bank_account_number": "123456",
8 "contact_name": "Eric Yu",
9 "currency": "USD",
10 "email": "eric@rutter.com",
11 "phone": "1234567890",
12 "registration_number": "123456789",
13 "tax_number": "12-3456789",
14 "vendor_name": "Rutter",
15 "website": "https://rutter.com",
16 "subsidiaries": [
17 {
18 "id": "00000000-0000-0000-0000-000000000000",
19 "primary": true
20 },
21 {
22 "id": "00000000-0000-0000-0000-000000000000",
23 "primary": false
24 },
25 {
26 "id": "00000000-0000-0000-0000-000000000000",
27 "primary": false
28 }
29 ],
30 "addresses": [
31 {
32 "type": "billing",
33 "address1": "123 Rutter Road",
34 "address2": "Floor 4",
35 "city": "San Francisco",
36 "country": "US",
37 "postal_code": "94110",
38 "region": "CA"
39 }
40 ],
41 "created_at": "2023-01-02T02:34:56.000Z",
42 "updated_at": "2023-01-02T02:34:56.000Z",
43 "last_synced_at": "2023-01-02T02:34:56.000Z",
44 "platform_url": "https://platform.com/resource?id=123",
45 "platform_data": {
46 "id": 123,
47 "data": "Varies by platform"
48 }
49 }
50 ],
51 "next_cursor": "MTY3NDgzMTk0Ml82MDY4ZDI0ZC02NGRmLTRmN2EtYTM0Ny0zN2ZmNjY5MGVmMjU=",
52 "connection": {
53 "id": "00000000-0000-0000-0000-000000000000",
54 "orgId": "00000000-0000-0000-0000-000000000000",
55 "platform": "NETSUITE"
56 }
57}
Fetch a Vendor
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 currently supported on Sage Intacct or Sage Business Cloud.
force_fetch
enumqueryOptionalUsed to force a response even if the underlying connection has not finished its initial sync.
Response Body
- QuickBooks
- Xero
- QuickBooks Desktop
- NetSuite
1{
2 "vendor": {
3 "id": "00000000-0000-0000-0000-000000000000",
4 "platform_id": "12345678",
5 "status": "active",
6 "bank_account_number": "123456",
7 "contact_name": "Eric Yu",
8 "currency": "USD",
9 "email": "eric@rutter.com",
10 "phone": "1234567890",
11 "registration_number": "123456789",
12 "tax_number": "12-3456789",
13 "vendor_name": "Rutter",
14 "website": "https://rutter.com",
15 "subsidiaries": [
16 {
17 "id": "00000000-0000-0000-0000-000000000000",
18 "primary": true
19 },
20 {
21 "id": "00000000-0000-0000-0000-000000000000",
22 "primary": false
23 },
24 {
25 "id": "00000000-0000-0000-0000-000000000000",
26 "primary": false
27 }
28 ],
29 "addresses": [
30 {
31 "type": "billing",
32 "address1": "123 Rutter Road",
33 "address2": "Floor 4",
34 "city": "San Francisco",
35 "country": "US",
36 "postal_code": "94110",
37 "region": "CA"
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 "connection": {
50 "id": "00000000-0000-0000-0000-000000000000",
51 "orgId": "00000000-0000-0000-0000-000000000000",
52 "platform": "NETSUITE"
53 }
54}
Create a Vendor
Request Parameters
access_token
stringqueryRequiredThe access token of the connection.
Request Body
response_mode
enumOptionalThe 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.
vendor
objectvendor
attributesResponse Body
- QuickBooks
- Xero
- QuickBooks Desktop
- NetSuite
1{
2 "vendor": {
3 "contact_name": "Eric Yu",
4 "currency": "USD",
5 "vendor_name": "Rutter",
6 "email": "eric@rutter.com",
7 "phone": "1234567890",
8 "registration_number": "123456789",
9 "tax_number": "12-3456789",
10 "website": "https://rutter.com",
11 "subsidiaries": [
12 {
13 "id": "00000000-0000-0000-0000-000000000000",
14 "primary": true
15 },
16 {
17 "id": "00000000-0000-0000-0000-000000000000",
18 "primary": false
19 },
20 {
21 "id": "00000000-0000-0000-0000-000000000000",
22 "primary": false
23 }
24 ],
25 "addresses": [
26 {
27 "type": "billing",
28 "address1": "123 Rutter Road",
29 "address2": "Floor 4",
30 "city": "San Francisco",
31 "country": "US",
32 "postal_code": "94110",
33 "region": "CA"
34 }
35 ]
36 }
37}
1{
2 "vendor": {
3 "id": "00000000-0000-0000-0000-000000000000",
4 "platform_id": "12345678",
5 "status": "active",
6 "bank_account_number": "123456",
7 "contact_name": "Eric Yu",
8 "currency": "USD",
9 "email": "eric@rutter.com",
10 "phone": "1234567890",
11 "registration_number": "123456789",
12 "tax_number": "12-3456789",
13 "vendor_name": "Rutter",
14 "website": "https://rutter.com",
15 "subsidiaries": [
16 {
17 "id": "00000000-0000-0000-0000-000000000000",
18 "primary": true
19 },
20 {
21 "id": "00000000-0000-0000-0000-000000000000",
22 "primary": false
23 },
24 {
25 "id": "00000000-0000-0000-0000-000000000000",
26 "primary": false
27 }
28 ],
29 "addresses": [
30 {
31 "type": "billing",
32 "address1": "123 Rutter Road",
33 "address2": "Floor 4",
34 "city": "San Francisco",
35 "country": "US",
36 "postal_code": "94110",
37 "region": "CA"
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}
Update a Vendor
Request Parameters
id
stringpathRequiredThe Rutter generated unique ID of the object.
access_token
stringqueryRequiredThe access token of the connection.
Request Body
response_mode
enumOptionalThe 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.
vendor
objectvendor
attributesResponse Body
- QuickBooks
- Xero
- QuickBooks Desktop
- NetSuite
1{
2 "vendor": {
3 "contact_name": "Eric Yu",
4 "currency": "USD",
5 "email": "eric@rutter.com",
6 "phone": "1234567890",
7 "registration_number": "123456789",
8 "tax_number": "12-3456789",
9 "vendor_name": "Rutter",
10 "website": "https://rutter.com",
11 "addresses": [
12 {
13 "type": "billing",
14 "address1": "123 Rutter Road",
15 "address2": "Floor 4",
16 "city": "San Francisco",
17 "country": "US",
18 "postal_code": "94110",
19 "region": "CA"
20 }
21 ]
22 }
23}
1{
2 "vendor": {
3 "id": "00000000-0000-0000-0000-000000000000",
4 "platform_id": "12345678",
5 "status": "active",
6 "bank_account_number": "123456",
7 "contact_name": "Eric Yu",
8 "currency": "USD",
9 "email": "eric@rutter.com",
10 "phone": "1234567890",
11 "registration_number": "123456789",
12 "tax_number": "12-3456789",
13 "vendor_name": "Rutter",
14 "website": "https://rutter.com",
15 "subsidiaries": [
16 {
17 "id": "00000000-0000-0000-0000-000000000000",
18 "primary": true
19 },
20 {
21 "id": "00000000-0000-0000-0000-000000000000",
22 "primary": false
23 },
24 {
25 "id": "00000000-0000-0000-0000-000000000000",
26 "primary": false
27 }
28 ],
29 "addresses": [
30 {
31 "type": "billing",
32 "address1": "123 Rutter Road",
33 "address2": "Floor 4",
34 "city": "San Francisco",
35 "country": "US",
36 "postal_code": "94110",
37 "region": "CA"
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}
Have questions?
Contact support for personalized guidance.