Purchase Orders
The PurchaseOrder Object
A Rutter Purchase Order represents a commercial document issued by a vendor to a customer, indicating the types, quantities, and agreed prices for products or services that the customer wishes to purchase. It serves as a formal offer to buy goods or services from a vendor.
Properties
id
stringThe Rutter generated unique ID of the purchase order.
platform_id
stringThe platform specific ID of the purchase order.
subsidiary_id
stringnullableThe Rutter ID of the Subsidiary linked to the purchase order. Supported for NetSuite.
vendor_id
stringnullableThe Rutter ID of the Vendor linked to the purchase order.
issue_date
stringThe ISO 8601 timestamp for the issue date of the purchase order.
status
enumThe status of the purchase order.
currency_code
enumnullableThe ISO 4217 currency code of the purchase order.
document_number
stringnullableThe buyer facing document number of the purchase order.
memo
stringnullableThe memo of the purchase order.
total_amount
numbernullableThe total payment amount of the purchase order.
total_quantity
numbernullableThe total quantity of items in the purchase order.
line_items
arrayAn array of line items associated with the purchase order.
line_items
attributescreated_at
stringfilterablenullableThe ISO 8601 timestamp that the purchase order was created.
updated_at
stringfilterablenullableThe ISO 8601 timestamp that the purchase order was last updated.
last_synced_at
stringfilterableThe ISO 8601 timestamp when the purchase order 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 Purchase Orders
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).
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
purchase_orders
arraypurchase_orders
attributesnext_cursor
stringnullableOptionalconnection
objectconnection
attributes- QuickBooks
- NetSuite
- Xero
- QuickBooks Desktop
1{
2 "purchase_orders": [
3 {
4 "id": "00000000-0000-0000-0000-000000000000",
5 "platform_id": "12345678",
6 "subsidiary_id": "00000000-0000-0000-0000-000000000000",
7 "vendor_id": "00000000-0000-0000-0000-000000000000",
8 "issue_date": "2023-01-02T02:34:56.000Z",
9 "status": "open",
10 "currency_code": "USD",
11 "document_number": "VENDPO-1",
12 "memo": "Example purchase order top-level memo",
13 "total_amount": 12.34,
14 "total_quantity": 1,
15 "line_items": [
16 {
17 "account_id": "00000000-0000-0000-0000-000000000000",
18 "class_id": "00000000-0000-0000-0000-000000000000",
19 "department_id": "00000000-0000-0000-0000-000000000000",
20 "tax_rate_id": "00000000-0000-0000-0000-000000000000",
21 "description": "Example description",
22 "total_amount": 12.34,
23 "item": {
24 "id": "00000000-0000-0000-0000-000000000000",
25 "quantity": 1,
26 "unit_amount": 12.34
27 }
28 }
29 ],
30 "created_at": "2023-01-02T02:34:56.000Z",
31 "updated_at": "2023-01-02T02:34:56.000Z",
32 "last_synced_at": "2023-01-02T02:34:56.000Z",
33 "platform_url": "https://platform.com/resource?id=123",
34 "platform_data": {
35 "id": 123,
36 "data": "Varies by platform"
37 }
38 }
39 ],
40 "next_cursor": "MTY3NDgzMTk0Ml82MDY4ZDI0ZC02NGRmLTRmN2EtYTM0Ny0zN2ZmNjY5MGVmMjU=",
41 "connection": {
42 "id": "00000000-0000-0000-0000-000000000000",
43 "orgId": "00000000-0000-0000-0000-000000000000",
44 "platform": "NETSUITE"
45 }
46}
Fetch a Purchase Order
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
purchase_order
objectpurchase_order
attributesconnection
objectconnection
attributes- QuickBooks
- NetSuite
- Xero
- QuickBooks Desktop
1{
2 "purchase_order": {
3 "id": "00000000-0000-0000-0000-000000000000",
4 "platform_id": "12345678",
5 "subsidiary_id": "00000000-0000-0000-0000-000000000000",
6 "vendor_id": "00000000-0000-0000-0000-000000000000",
7 "issue_date": "2023-01-02T02:34:56.000Z",
8 "status": "open",
9 "currency_code": "USD",
10 "document_number": "VENDPO-1",
11 "memo": "Example purchase order top-level memo",
12 "total_amount": 12.34,
13 "total_quantity": 1,
14 "line_items": [
15 {
16 "account_id": "00000000-0000-0000-0000-000000000000",
17 "class_id": "00000000-0000-0000-0000-000000000000",
18 "department_id": "00000000-0000-0000-0000-000000000000",
19 "tax_rate_id": "00000000-0000-0000-0000-000000000000",
20 "description": "Example description",
21 "total_amount": 12.34,
22 "item": {
23 "id": "00000000-0000-0000-0000-000000000000",
24 "quantity": 1,
25 "unit_amount": 12.34
26 }
27 }
28 ],
29 "created_at": "2023-01-02T02:34:56.000Z",
30 "updated_at": "2023-01-02T02:34:56.000Z",
31 "last_synced_at": "2023-01-02T02:34:56.000Z",
32 "platform_url": "https://platform.com/resource?id=123",
33 "platform_data": {
34 "id": 123,
35 "data": "Varies by platform"
36 }
37 },
38 "connection": {
39 "id": "00000000-0000-0000-0000-000000000000",
40 "orgId": "00000000-0000-0000-0000-000000000000",
41 "platform": "NETSUITE"
42 }
43}
Create a Purchase Order
Request Parameters
access_token
stringqueryRequiredThe access token of the connection.
Request Body
purchase_order
objectpurchase_order
attributesResponse Body
Any of:
purchase_order
objectpurchase_order
attributesasync_response
objectOptionalasync_response
attributeserrors
arrayOptionalerrors
attributes- NetSuite
- QuickBooks Desktop
1{
2 "purchase_order": {
3 "vendor_id": "00000000-0000-0000-0000-000000000000",
4 "currency": "USD",
5 "line_items": [
6 {
7 "item": "00000000-0000-0000-0000-000000000000",
8 "quantity": 1,
9 "description": "Example description",
10 "unit_amount": 10
11 }
12 ]
13 }
14}
1{
2 "purchase_order": {
3 "id": "00000000-0000-0000-0000-000000000000",
4 "platform_id": "12345678",
5 "subsidiary_id": "00000000-0000-0000-0000-000000000000",
6 "vendor_id": "00000000-0000-0000-0000-000000000000",
7 "posted_date": "2023-01-02T02:34:56.000Z",
8 "currency_code": "USD",
9 "document_number": "VENDPO-1",
10 "memo": "For a Rutter shirt.",
11 "status": "active",
12 "vendor_name": "Rutter API",
13 "total_amount": "12.34",
14 "total_quantity": "1",
15 "line_items": [
16 {
17 "platform_id": "12345678",
18 "account_id": "00000000-0000-0000-0000-000000000000",
19 "class_id": "00000000-0000-0000-0000-000000000000",
20 "item_id": "00000000-0000-0000-0000-000000000000",
21 "tax_rate_id": "00000000-0000-0000-0000-000000000000",
22 "description": "Example description",
23 "item_name": "Rutter shirt",
24 "amount": "12.34",
25 "amount_billed": "12.34",
26 "amount_received": "12.34",
27 "quantity": "1",
28 "quantity_bill": "1",
29 "quantity_received": "1",
30 "unit_amount": "12.34"
31 }
32 ],
33 "created_at": "2023-01-02T02:34:56.000Z",
34 "updated_at": "2023-01-02T02:34:56.000Z",
35 "last_synced_at": "2023-01-02T02:34:56.000Z",
36 "platform_url": "https://platform.com/resource?id=123",
37 "platform_data": {
38 "id": 123,
39 "data": "Varies by platform"
40 }
41 }
42}
Update a Purchase Order
Request Parameters
id
stringpathRequiredThe Rutter generated unique ID of the object.
access_token
stringqueryRequiredThe access token of the connection.
Request Body
purchase_order
objectpurchase_order
attributesResponse Body
Any of:
purchase_order
objectpurchase_order
attributesasync_response
objectOptionalasync_response
attributeserrors
arrayOptionalerrors
attributes- QuickBooks Desktop
1{
2 "purchase_order": {
3 "vendor_id": "00000000-0000-0000-0000-000000000000",
4 "line_items": [
5 {
6 "item": "00000000-0000-0000-0000-000000000000",
7 "quantity": 1,
8 "description": "Example description",
9 "unit_amount": 10
10 }
11 ]
12 }
13}
1{
2 "purchase_order": {
3 "id": "00000000-0000-0000-0000-000000000000",
4 "platform_id": "12345678",
5 "subsidiary_id": "00000000-0000-0000-0000-000000000000",
6 "vendor_id": "00000000-0000-0000-0000-000000000000",
7 "posted_date": "2023-01-02T02:34:56.000Z",
8 "currency_code": "USD",
9 "document_number": "VENDPO-1",
10 "memo": "For a Rutter shirt.",
11 "status": "active",
12 "vendor_name": "Rutter API",
13 "total_amount": "12.34",
14 "total_quantity": "1",
15 "line_items": [
16 {
17 "platform_id": "12345678",
18 "account_id": "00000000-0000-0000-0000-000000000000",
19 "class_id": "00000000-0000-0000-0000-000000000000",
20 "item_id": "00000000-0000-0000-0000-000000000000",
21 "tax_rate_id": "00000000-0000-0000-0000-000000000000",
22 "description": "Example description",
23 "item_name": "Rutter shirt",
24 "amount": "12.34",
25 "amount_billed": "12.34",
26 "amount_received": "12.34",
27 "quantity": "1",
28 "quantity_bill": "1",
29 "quantity_received": "1",
30 "unit_amount": "12.34"
31 }
32 ],
33 "created_at": "2023-01-02T02:34:56.000Z",
34 "updated_at": "2023-01-02T02:34:56.000Z",
35 "last_synced_at": "2023-01-02T02:34:56.000Z",
36 "platform_url": "https://platform.com/resource?id=123",
37 "platform_data": {
38 "id": 123,
39 "data": "Varies by platform"
40 }
41 }
42}
Have questions?
Contact support for personalized guidance.