Retrieve Purchase Order List: /purchase-orders
Purpose
The purpose of this endpoint is to retrieve purchase orders created within the system, including their supplier linkage, currency details, item information, and financial summaries. It allows procurement and finance teams to monitor supplier transactions, validate order details, and ensure accurate tracking of purchase order lifecycles.
Use Case
This endpoint is used when organizations need to review purchase orders tied to supplier accounts. For example, after creating a supplier account and adding items with defined sales amounts and inventory, users can generate purchase orders. By calling this endpoint, teams can fetch those records to confirm order status, review item quantities and pricing snapshots, and assess financial obligations such as subtotals, taxes, and totals. It is particularly useful for procurement workflows, supplier management, and financial reporting.
Path Parameters
No path parameters required for this endpoint.
Query Parameters
| Category | Parameter / Field | Type | Operators | Description | Example |
|---|---|---|---|---|---|
| Sorting | order_by | string | N/A | Field name to sort results. | order_by=code |
| direction | string | N/A |
Sorting direction. Accepts asc or desc. | direction=asc | |
| Pagination | limit | integer | N/A |
Number of records per page. | limit=50 |
| offset | integer | N/A |
Records to skip from the start. | offset=0 | |
| Filtering | status | enum | eq, ne | Filter by purchase order status. Status type: ACTIVE, INACTIVE, DELETED, DRAFT |
purchase-orders/status eq 'OPEN' |
| code | string | eq, ne, contain, not_contain | Filter by purchase order code. | purchase-orders/code eq 'PO-2025-001' | |
| supplier_invoice_id | string | eq, ne, contain, not_contain | Filter by supplier invoice reference. | purchase-orders/supplier_invoice_id eq 'INV-88991' | |
| created_by | string | eq, ne | Filter by creator of the purchase order. | purchase-orders/created_by eq 'procurement_admin' | |
| created_on | date | eq, ne, gt, ge, lt, le | Filter by creation date. Date format: 'yyyy-mm-dd' |
purchase-orders/created_on gt '2025-01-01' | |
| last_updated_by | string | eq, ne | Filter by user who last updated. | purchase-orders/last_updated_by eq 'supply_chain_manager' | |
| last_updated_on | date | eq, ne, gt, ge, lt, le | Filter by last update date. Date format: 'yyyy-mm-dd' |
purchase-orders/last_updated_on le '2025-09-01' |
*Here, eq = equal, ne = not equal, gt = greater than, ge = greater or equal, lt = less than, le = less or equal.*
Request Body
The endpoint does not require a request body.
Response
The response returns a structured list of purchase orders with comprehensive details. Each purchase order includes identifiers such as the purchase order ID and UUID, supplier account linkage, currency information, issue and due dates, and financial values like subtotal, tax, and total. Item-level details are provided, including item IDs, names, quantities, pricing rules, and tax configurations. Additionally, KPIs such as total expenses, outstanding amounts, overdue metrics, and invoice history are included to support financial analysis. Pagination metadata is also returned, showing record counts, limits, offsets, and navigation URLs to manage large datasets efficiently.
Response Body
{
"purchase_orders": [
{
"status": "STATUS",
"id": "PURCHASE_ORDER_ID",
"currency": {
"uuid": "CURRENCY_UUID",
"name": "CURRENCY_NAME",
"link": "CURRENCY_LINK"
},
"supplier_invoice_id": "SUPPLIER_INVOICE_ID",
"issue_date": "ISSUE_DATE",
"due_date": "DUE_DATE",
"expected_completion_date": "EXPECTED_COMPLETION_DATE",
"subtotal": "SUBTOTAL",
"tax": "TAX",
"total": "TOTAL",
"price_tax_inclusive": "PRICE_TAX_INCLUSIVE",
"purchase_order_note": "PURCHASE_ORDER_NOTE",
"account_id": "ACCOUNT_ID",
"created_by": "CREATED_BY",
"created_on": "CREATED_ON",
"last_updated_by": "LAST_UPDATED_BY",
"last_updated_on": "LAST_UPDATED_ON",
"uuid": "PURCHASE_ORDER_UUID",
"version": "VERSION",
"custom_attributes": [
{
"name": "CUSTOM_ATTRIBUTE_NAME",
"value": "CUSTOM_ATTRIBUTE_VALUE"
}
],
"custom_objects": [],
"lines": [
{
"subtotal": "LINE_SUBTOTAL",
"total": "LINE_TOTAL",
"tax": "LINE_TAX",
"item_uuid": "ITEM_UUID",
"item_id": "ITEM_ID",
"item_name": "ITEM_NAME",
"item_quantity": "ITEM_QUANTITY",
"item_price_snapshot": {
"pricing_rule": {
"uuid": "PRICING_RULE_UUID",
"version": "PRICING_RULE_VERSION",
"price_type": "PRICE_TYPE",
"price": "PRICE",
"uom": "UOM",
"warehouse": "WAREHOUSE",
"pricing_version": "PRICING_VERSION"
}
},
"item_purchase_tax_configuration": {
"purchase_price_is_tax_inclusive": "PURCHASE_PRICE_TAX_INCLUSIVE",
"tax_code": {
"uuid": "TAX_CODE_UUID",
"code": "TAX_CODE",
"rate": "TAX_RATE",
"link": "TAX_CODE_LINK"
}
},
"item_price_tax_exempt": "ITEM_PRICE_TAX_EXEMPT",
"item_price_tax": {
"uuid": "TAX_UUID",
"code": "TAX_CODE",
"rate": "TAX_RATE",
"link": "TAX_LINK"
},
"purchase_order_note": "LINE_PURCHASE_ORDER_NOTE",
"item_accounting_code": {
"cost_of_goods_sold": "COST_OF_GOODS_SOLD_CODE"
},
"uuid": "LINE_UUID",
"version": "LINE_VERSION"
}
],
"kpis": {
"total_expense": "TOTAL_EXPENSE",
"estimated_total": "ESTIMATED_TOTAL",
"total_outstanding": "TOTAL_OUTSTANDING",
"total_overdue": "TOTAL_OVERDUE",
"last_invoice_issue_date": "LAST_INVOICE_ISSUE_DATE",
"last_invoice_total": "LAST_INVOICE_TOTAL",
"total_purchase_invoice": "TOTAL_PURCHASE_INVOICE",
"last_reactivated_on": "LAST_REACTIVATED_ON",
"last_calcelled_on": "LAST_CANCELLED_ON",
"last_changed_on": "LAST_CHANGED_ON",
"last_deleted_on": "LAST_DELETED_ON",
"issue_date": "ISSUE_DATE"
}
}
],
"pagination": {
"records": "TOTAL_RECORDS",
"limit": "LIMIT",
"offset": "OFFSET",
"previous_page": "PREVIOUS_PAGE_LINK",
"next_page": "NEXT_PAGE_LINK"
}
}
| Attribute | Type | Description |
|---|---|---|
| purchase_orders | Array | List of retrieved purchase orders. |
| status | String | Current status of the purchase order. |
| id | String | Human-readable purchase order ID. |
| currency | Object | Currency information associated with the purchase order. |
| uuid | UUID | Unique identifier for the currency. |
| name | String | Currency name or code (example: AUD). |
| link | URL | API link to retrieve detailed currency information. |
| supplier_invoice_id | String | Identifier of the supplier invoice linked to this purchase order. |
| issue_date | Date | Date when the purchase order was issued. |
| due_date | Date | Payment due date. |
| expected_completion_date | Date | Expected completion or delivery date. |
| subtotal | Number | Subtotal amount before tax. |
| tax | Number | Total tax amount. |
| total | Number | Total payable amount including tax. |
| price_tax_inclusive | Boolean | Indicates whether the prices include tax. |
| purchase_order_note | String | Additional notes or comments related to the purchase order. |
| account_id | String | Associated account identifier. |
| created_by | String | Name or ID of the user who created the purchase order. |
| created_on | DateTime | Timestamp when the record was created (ISO 8601). |
| last_updated_by | String | Name or ID of the user who last updated the purchase order. |
| last_updated_on | DateTime | Timestamp of the last update (ISO 8601). |
| uuid | UUID | Unique identifier for the purchase order. |
| version | String | Version number of the purchase order record. |
| custom_attributes | Array | List of user-defined attributes for additional metadata. |
| name | String | Name of the custom attribute. |
| value | String | Value of the custom attribute. |
| custom_objects | Array | List of custom objects associated with this purchase order (if any). |
| lines | Array | Line items included in the purchase order. |
| subtotal | Number | Line-level subtotal amount before tax. |
| total | Number | Line-level total amount including tax. |
| tax | Number | Tax amount applicable to the line. |
| item_uuid | UUID | Unique identifier for the purchased item. |
| item_id | String | Human-readable item ID. |
| item_name | String | Name of the purchased item. |
| item_quantity | Number | Quantity of the item ordered. |
| item_price_snapshot | Object | Snapshot of pricing rule applied at the time of purchase. |
| pricing_rule | Object | Pricing rule details used to calculate the line price. |
| uuid | UUID | Unique identifier for the pricing rule. |
| version | String | Version of the pricing rule used. |
| price_type | String | Type of pricing applied (example: fixed, tiered). |
| price | Number | Price value from the rule. |
| uom | String | Unit of measure for the price (example: per unit, per kg). |
| warehouse | String | Warehouse associated with the pricing rule. |
| pricing_version | String | Version of pricing data applied. |
| item_purchase_tax_configuration | Object | Tax configuration for item purchase. |
| purchase_price_is_tax_inclusive | Boolean | Indicates whether the purchase price includes tax. |
| tax_code | Object | Tax code details used in this purchase line. |
| uuid | UUID | Unique identifier for the tax code. |
| code | String | Tax code value. |
| rate | Number | Applicable tax rate. |
| link | URL | API link to tax code details. |
| item_price_tax_exempt | Boolean | Indicates whether this line is exempt from tax. |
| item_price_tax | Object | Tax applied to the item’s price. |
| uuid | UUID | Unique identifier for the applied tax. |
| code | String | Tax code applied. |
| rate | Number | Tax rate applied. |
| link | URL | API link for tax details. |
| purchase_order_note | String | Line-level note or comment. |
| item_accounting_code | Object | Accounting codes associated with the item. |
| cost_of_goods_sold | String | Accounting code for cost of goods sold. |
| uuid | UUID | Unique identifier for the purchase order line. |
| version | String | Version number of the line record. |
| kpis | Object | Key performance indicators related to the purchase order. |
| total_expense | Number | Total expense recorded for this purchase order. |
| estimated_total | Number | Estimated total cost. |
| total_outstanding | Number | Outstanding balance amount. |
| total_overdue | Number | Total overdue amount. |
| last_invoice_issue_date | Date | Date when the last invoice was issued. |
| last_invoice_total | Number | Total amount of the last invoice. |
| total_purchase_invoice | Number | Count of total purchase invoices linked to this order. |
| last_reactivated_on | Date | Date when the purchase order was last reactivated. |
| last_calcelled_on | Date | Date when the purchase order was last cancelled. |
| last_changed_on | Date | Date when the purchase order was last modified. |
| last_deleted_on | Date | Date when the purchase order was deleted. |
| issue_date | Date | Issue date reference for KPI tracking. |
| pagination | Object | Contains pagination metadata for the response. |
| records | Number | Total number of purchase order records available. |
| limit | Number | Number of records returned per page. |
| offset | Number | Record offset used in pagination. |
| previous_page | URL | API link to the previous page of results. |
| next_page | URL | API link to the next page of results. |
Retrieve Purchase Order Details: /purchase-orders/{purchase_order_id}
Purpose
The purpose of this endpoint is to retrieve detailed information about a specific purchase order by its unique identifier. It allows to review the order’s metadata, supplier linkage, currency details, and financial values, ensuring accurate tracking and management of individual purchase orders.
Use Case
This endpoint is used to fetch comprehensive details of a single purchase order for auditing, supplier management, or financial reporting. By providing the purchase order ID, users can access information such as the supplier account, issue and due dates, subtotal, tax, and total amounts. It is particularly useful for validating supplier transactions, monitoring order lifecycles, and ensuring compliance with procurement processes.
Path Parameters
|
Parameter |
Type |
Description |
|---|---|---|
|
purchase_order_id |
string |
The unique identifier of the purchase order. |
Query Parameters
This endpoint does not have any query parameters.
Request Body
No request body is required for this endpoint.
Response
The response returns a structured object containing the purchase order’s metadata and financial details. It includes the purchase order ID, status, supplier account ID, currency information, issue and due dates, expected completion date, and financial values such as subtotal, tax, and total. Additional metadata such as creation details, versioning, and custom form information are also provided. Unlike the list endpoint, this response does not include line items or KPIs, focusing instead on the high-level details of the specified purchase order.
Response Body
{
"purchase_order": {
"status": "STATUS",
"id": "PURCHASE_ORDER_ID",
"currency": {
"uuid": "CURRENCY_UUID",
"name": "CURRENCY_NAME",
"link": "CURRENCY_LINK"
},
"supplier_invoice_id": "SUPPLIER_INVOICE_ID",
"issue_date": "ISSUE_DATE",
"due_date": "DUE_DATE",
"expected_completion_date": "EXPECTED_COMPLETION_DATE",
"subtotal": "SUBTOTAL_AMOUNT",
"tax": "TAX_AMOUNT",
"total": "TOTAL_AMOUNT",
"price_tax_inclusive": "IS_TAX_INCLUSIVE",
"purchase_order_note": "NOTE",
"account_id": "ACCOUNT_ID",
"created_by": "CREATOR_NAME",
"created_on": "CREATION_TIMESTAMP",
"last_updated_by": "UPDATED_BY",
"last_updated_on": "UPDATED_TIMESTAMP",
"uuid": "PURCHASE_ORDER_UUID",
"version": "VERSION",
"custom_attributes": [
{
"name": "ATTRIBUTE_NAME",
"value": "ATTRIBUTE_VALUE"
}
],
"custom_objects": [],
"lines": [
{
"subtotal": "LINE_SUBTOTAL",
"total": "LINE_TOTAL",
"tax": "LINE_TAX",
"item_uuid": "ITEM_UUID",
"item_id": "ITEM_ID",
"item_name": "ITEM_NAME",
"item_quantity": "ITEM_QUANTITY",
"item_price_snapshot": {
"pricing_rule": {
"uuid": "PRICING_RULE_UUID",
"version": "PRICING_VERSION",
"price_type": "PRICE_TYPE",
"price": "PRICE_AMOUNT",
"uom": "UNIT_OF_MEASURE",
"warehouse": "WAREHOUSE_NAME",
"pricing_version": "PRICING_VERSION",
"latest_used_pricing_version": "LATEST_USED_VERSION"
}
},
"item_purchase_tax_configuration": {
"purchase_price_is_tax_inclusive": "IS_TAX_INCLUSIVE",
"tax_code": {
"uuid": "TAX_CODE_UUID",
"code": "TAX_CODE",
"rate": "TAX_RATE",
"link": "TAX_LINK"
}
},
"item_price_tax_exempt": "IS_TAX_EXEMPT",
"item_price_tax": {
"uuid": "ITEM_TAX_UUID",
"code": "TAX_CODE",
"rate": "TAX_RATE",
"link": "TAX_LINK"
},
"purchase_order_note": "LINE_NOTE",
"item_accounting_code": {
"cost_of_goods_sold": "ACCOUNT_CODE"
},
"uuid": "LINE_UUID",
"version": "LINE_VERSION"
}
],
"kpis": {
"total_expense": "TOTAL_EXPENSE",
"estimated_total": "ESTIMATED_TOTAL",
"total_outstanding": "OUTSTANDING_AMOUNT",
"total_overdue": "OVERDUE_AMOUNT",
"last_invoice_issue_date": "LAST_INVOICE_DATE",
"last_invoice_total": "LAST_INVOICE_TOTAL",
"total_purchase_invoice": "TOTAL_INVOICE_COUNT",
"last_reactivated_on": "LAST_REACTIVATED_DATE",
"last_calcelled_on": "LAST_CANCELLED_DATE",
"last_changed_on": "LAST_CHANGED_DATE",
"last_deleted_on": "LAST_DELETED_DATE",
"issue_date": "ISSUE_DATE"
}
}
}
| Attribute | Type | Description |
|---|---|---|
| purchase_order | Object | Root object containing the purchase order details. |
| status | String | Current status of the purchase order (example: ACTIVE, APPROVED, CLOSED). |
| id | String | System-generated purchase order identifier. |
| currency | Object | Currency details used in the purchase order. |
| uuid | String | Unique identifier for the currency. |
| name | String | Name or code of the currency (example: AUD, USD). |
| link | String | API link to fetch currency details. |
| supplier_invoice_id | String | ID of the supplier’s invoice linked to this purchase order. |
| issue_date | String | Date the purchase order was issued (ISO 8601 format). |
| due_date | String | Due date for payment (ISO 8601 format). |
| expected_completion_date | String | Estimated date for completion of the order (ISO 8601 format). |
| subtotal | String | Subtotal amount before tax. |
| tax | String | Total tax amount applied to the purchase order. |
| total | String | Total amount after taxes. |
| price_tax_inclusive | String | Indicates whether the price includes tax (true or false). |
| purchase_order_note | String | Notes or remarks added to the purchase order. |
| account_id | String | Identifier of the account or supplier associated with the purchase order. |
| created_by | String | Name of the user who created the purchase order. |
| created_on | String | Timestamp indicating when the purchase order was created. |
| last_updated_by | String | Name of the user who last updated the purchase order. |
| last_updated_on | String | Timestamp of the last modification (ISO 8601 format). |
| uuid | String | Unique identifier for the purchase order record. |
| version | String | Version number of the purchase order record. |
| custom_attributes | Array | List of custom attributes assigned to the purchase order. |
| name | String | Name of the custom attribute. |
| value | String | Value of the custom attribute. |
| custom_objects | Array | List of associated custom objects (empty if none). |
| lines | Array | Array containing line items within the purchase order. |
| subtotal | String | Subtotal for the individual line item. |
| total | String | Total amount for the line item including tax. |
| tax | String | Tax amount applied to the line item. |
| item_uuid | String | Unique identifier for the item. |
| item_id | String | Readable item ID. |
| item_name | String | Display name of the item. |
| item_quantity | String | Quantity of the item ordered. |
| item_price_snapshot | Object | Snapshot of pricing details for the item at the time of order creation. |
| pricing_rule | Object | Pricing rule information applied to the item. |
| uuid | String | Unique identifier of the pricing rule. |
| version | String | Version number of the applied pricing rule. |
| price_type | String | Type of pricing (example: fixed, tiered). |
| price | String | Price applied per unit of item. |
| uom | String | Unit of measurement used for the item. |
| warehouse | String | Warehouse associated with this pricing rule. |
| pricing_version | String | Version of pricing configuration used. |
| latest_used_pricing_version | String | Most recent pricing version applied. |
| item_purchase_tax_configuration | Object | Tax configuration details for the item. |
| purchase_price_is_tax_inclusive | String | Indicates if the purchase price includes tax (true or false). |
| tax_code | Object | Tax code details applied to the item. |
| uuid | String | Unique identifier of the tax code. |
| code | String | Tax code applied. |
| rate | String | Tax rate applied. |
| link | String | API link to retrieve tax code information. |
| item_price_tax_exempt | String | Indicates whether the item is tax-exempt (true or false). |
| item_price_tax | Object | Tax information applied to the line item. |
| uuid | String | Unique identifier for the applied tax. |
| code | String | Tax code applied to the line. |
| rate | String | Tax rate percentage applied. |
| link | String | API link to fetch the tax details. |
| purchase_order_note | String | Additional note for this line item. |
| item_accounting_code | Object | Accounting code information for the line item. |
| cost_of_goods_sold | String | Accounting code for cost of goods sold (COGS). |
| uuid | String | Unique identifier for the purchase order line. |
| version | String | Version number of the purchase order line. |
| kpis | Object | Key performance indicators related to the purchase order. |
| total_expense | String | Total expense incurred for the purchase order. |
| estimated_total | String | Estimated total amount for the order. |
| total_outstanding | String | Total amount pending for payment. |
| total_overdue | String | Total overdue amount. |
| last_invoice_issue_date | String | Date when the last invoice was issued. |
| last_invoice_total | String | Total amount of the last issued invoice. |
| total_purchase_invoice | String | Count of all purchase invoices linked to this order. |
| last_reactivated_on | String | Date when the purchase order was last reactivated. |
| last_calcelled_on | String | Date when the purchase order was last cancelled. |
| last_changed_on | String | Date when any change was last made to the order. |
| last_deleted_on | String | Date when the order was last deleted. |
| issue_date | String | Date when the purchase order was issued. |
Retrieve Purchase Order Details: /purchase-orders/{purchase_order_id}/information
Purpose
Fetches detailed information about a specific purchase order by its unique ID. This includes metadata, financial details, currency used, and associated custom elements.
Use Case
This endpoint is used by procurement, finance, or integration systems to:
- Retrieve the latest data for a specific purchase order.
- View pricing breakdown and tax inclusion status.
- Display metadata (issue/due dates, creator, version).
- Reference currency and account details.
- Load custom attributes or objects linked to the purchase order.
Path Parameter
| Name | Type | Description |
|---|---|---|
| purchase_order_id | String | Unique ID of the purchase order. |
Query Parameter
No query parameters required for this endpoint.
Request Body
No request body is required for this endpoint.
Response
The response returns a single purchase order object that includes detailed information such as status, unique ID, currency, supplier invoice reference, and key dates like issue date, due date, and expected completion date. It also contains financial data such as subtotal, tax, total, and a flag indicating whether prices are tax inclusive. Additional metadata includes account ID, creator details, timestamps for creation and last update, a version number, and a system-generated UUID. Custom fields and linked objects are returned as empty arrays unless configured. The currency field includes its own metadata, including UUID, name, and a direct API link.
Response Body
{
"purchase_order": {
"status": "ORDER_STATUS",
"id": "PURCHASE_ORDER_ID",
"currency": {
"uuid": "CURRENCY_UUID",
"name": "CURRENCY_NAME",
"link": "CURRENCY_LINK"
},
"supplier_invoice_id": "SUPPLIER_INVOICE_ID",
"issue_date": "ISSUE_DATE",
"due_date": "DUE_DATE",
"expected_completion_date": "EXPECTED_COMPLETION_DATE",
"subtotal": "SUBTOTAL_AMOUNT",
"tax": "TAX_AMOUNT",
"total": "TOTAL_AMOUNT",
"price_tax_inclusive": "PRICE_TAX_INCLUSIVE",
"purchase_order_note": "PURCHASE_ORDER_NOTE",
"account_id": "ACCOUNT_ID",
"created_by": "CREATED_BY",
"created_on": "CREATED_ON",
"last_updated_by": "LAST_UPDATED_BY",
"last_updated_on": "LAST_UPDATED_ON",
"uuid": "PURCHASE_ORDER_UUID",
"version": "PURCHASE_ORDER_VERSION",
"custom_attributes": [],
"custom_objects": []
}
}
| Attribute | Type | Description |
|---|---|---|
| status | String | Current status of the purchase order |
| id | String | Unique ID of the purchase order |
| currency | Object | Currency details (uuid, name, link) |
| supplier_invoice_id | String | External supplier invoice ID, if any |
| issue_date | String | Date the purchase order was issued (ISO 8601 format) |
| due_date | String | Due date for the purchase order (ISO 8601 format) |
| expected_completion_date | String | Expected completion date (ISO 8601 format) |
| subtotal | String | Subtotal amount (before tax) |
| tax | String | Tax amount applied |
| total | String | Total amount (including tax if applicable) |
| price_tax_inclusive | String | "true" if tax is included in item prices, otherwise "false" |
| purchase_order_note | String | Optional internal or external note on the purchase order |
| account_id | String | ID of the account (buyer or client) associated with the PO |
| created_by | String | User who created the purchase order |
| created_on | String | Timestamp of when the PO was created (ISO 8601 format) |
| last_updated_by | String | User who last updated the PO (empty if no updates) |
| last_updated_on | String | Timestamp of last update (ISO 8601 format) |
| uuid | String | System-generated UUID for the PO |
| version | String | Version number of the PO record |
| custom_attributes | Array | List of custom attributes applied to the PO (empty in this example) |
| custom_objects | Array | List of custom objects related to the PO (empty in this example) |
Retrieve All Lines of a Purchase Order: /purchase-orders/{purchase_order_id}/lines
Purpose
The purpose of this endpoint is to retrieve all line items associated with a specific purchase order. Each line item provides detailed product, pricing, and tax-related information, enabling accurate purchase management, financial tracking, and auditing of item-level transactions.
Use Case
This endpoint is used to review or process the individual items included in a purchase order. It is commonly applied in procurement workflows to validate item quantities and costs, in invoicing systems to ensure accurate billing, in inventory management to update stock levels, and in financial reporting to analyze item-level expenses and tax configurations. By accessing this endpoint, teams gain visibility into the granular details of each product or service linked to a purchase order.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| purchase_order_id | string | Unique ID of the purchase order |
Query Parameters
This endpoint does not accept any query parameters.
Request Body
No request body is required for this endpoint.
Response
The response returns a purchase order object containing a list of line items. Each line includes financial values such as subtotal, total, and tax, along with item-specific details like item ID, name, quantity, and pricing snapshots. Tax configurations are provided, including whether the purchase price is tax-inclusive, applicable tax codes, and exemption flags. Pricing rules capture metadata such as price type, unit price, warehouse, and versioning, ensuring that historical pricing logic is preserved. Accounting codes are also included to support integration with financial systems. This structure allows procurement and finance teams to process complex item-level data with full visibility into pricing and tax logic.
Response Body
{
"purchase_order": {
"lines": [
{
"subtotal": "LINE_SUBTOTAL",
"total": "LINE_TOTAL",
"tax": "LINE_TAX",
"item_uuid": "ITEM_UUID",
"item_id": "ITEM_ID",
"item_name": "ITEM_NAME",
"item_quantity": "ITEM_QUANTITY",
"item_price_snapshot": {
"pricing_rule": {
"uuid": "PRICING_RULE_UUID",
"version": "PRICING_RULE_VERSION",
"price_type": "PRICE_TYPE",
"price": "PRICE",
"uom": "UOM",
"warehouse": "WAREHOUSE",
"pricing_version": "PRICING_VERSION",
"latest_used_pricing_version": "LATEST_USED_PRICING_VERSION"
}
},
"item_purchase_tax_configuration": {
"purchase_price_is_tax_inclusive": "PURCHASE_PRICE_IS_TAX_INCLUSIVE",
"tax_code": {
"uuid": "TAX_CODE_UUID",
"code": "TAX_CODE",
"rate": "TAX_RATE",
"link": "TAX_CODE_LINK"
}
},
"item_price_tax_exempt": "ITEM_PRICE_TAX_EXEMPT",
"item_price_tax": {
"uuid": "TAX_UUID",
"code": "TAX_CODE",
"rate": "TAX_RATE",
"link": "TAX_LINK"
},
"purchase_order_note": "PURCHASE_ORDER_NOTE",
"item_accounting_code": {
"cost_of_goods_sold": "COST_OF_GOODS_SOLD"
},
"uuid": "LINE_UUID",
"version": "LINE_VERSION"
}
]
}
}
| Attribute | Type | Description |
|---|---|---|
| subtotal | string | Subtotal amount for the line item before tax. |
| total | string | Total amount for the line item including applicable tax. |
| tax | string | Tax amount applied to the line item. |
| item_uuid | string | Unique ID of the item (if applicable). |
| item_id | string | Item ID from catalog (if available). |
| item_name | string | Name of the purchased item. |
| item_quantity | string | Quantity of the item ordered. |
| item_price_snapshot | object | Snapshot of pricing rule details used at the time of order. |
| item_purchase_tax_configuration | object | Contains tax configuration settings for the item. |
| item_price_tax_exempt | string | Boolean string indicating if item is exempt from tax. |
| item_price_tax | object | Tax object applied to the item (uuid, code, rate, link). |
| purchase_order_note | string | Any note associated with this line item in the purchase order. |
| item_accounting_code | object | Contains the accounting code for cost of goods sold. |
| uuid | string | Unique system identifier for this line item. |
| version | string | Version of the line item record. |
Retrieve Specific Line Details of a Purchase Order: /purchase-orders/{purchase_order_id}/lines/{line_uuid}
Purpose
The purpose of this endpoint is to retrieve detailed information about a specific line item within a purchase order. It provides item-level financial values, pricing snapshots, tax configurations, and metadata, enabling precise tracking of procurement and accounting details.
Use Case
This endpoint is used to review or process the details of a single item included in a purchase order, identified by its unique line UUID. It is commonly applied in procurement analysis to validate item costs, in auditing to ensure compliance with tax rules, and in inventory tracking to confirm quantities and warehouse allocations. By accessing this endpoint, teams gain visibility into the granular financial and tax details of a specific purchase order line.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| purchase_order_id | string | The unique identifier of the purchase order. |
| line_uuid | string | The unique identifier of the line item. |
Query Parameters
This endpoint does not accept any query parameters.
Request Body
No request body is required for this endpoint.
Response
The response returns a purchase order object containing a single line item with comprehensive details. It includes financial values such as subtotal, total, and tax, along with metadata like item ID, name, and quantity. Pricing information is captured through a snapshot of the applied pricing rule, including the price type, unit price, warehouse, and versioning. Tax configuration details specify whether the purchase price is tax-inclusive, the applicable tax code, and exemption flags. Additional metadata such as purchase order notes, accounting codes, UUID, and versioning are also provided. This structure ensures that procurement and finance teams can accurately process and audit individual line items with full visibility into pricing and tax logic.
Response Body
{
"purchase_order": {
"line": {
"subtotal": "LINE_SUBTOTAL",
"total": "LINE_TOTAL",
"tax": "LINE_TAX",
"item_uuid": "ITEM_UUID",
"item_id": "ITEM_ID",
"item_name": "ITEM_NAME",
"item_quantity": "ITEM_QUANTITY",
"item_price_snapshot": {
"pricing_rule": {
"uuid": "PRICING_RULE_UUID",
"version": "PRICING_RULE_VERSION",
"price_type": "PRICE_TYPE",
"price": "PRICE_VALUE",
"uom": "UNIT_OF_MEASURE",
"warehouse": "WAREHOUSE_NAME",
"pricing_version": "PRICING_VERSION",
"latest_used_pricing_version": "LATEST_USED_VERSION"
}
},
"item_purchase_tax_configuration": {
"purchase_price_is_tax_inclusive": "IS_TAX_INCLUSIVE",
"tax_code": {
"uuid": "TAX_CODE_UUID",
"code": "TAX_CODE",
"rate": "TAX_RATE",
"link": "TAX_LINK"
}
},
"item_price_tax_exempt": "IS_TAX_EXEMPT",
"item_price_tax": {
"uuid": "ITEM_TAX_UUID",
"code": "TAX_CODE",
"rate": "TAX_RATE",
"link": "TAX_LINK"
},
"purchase_order_note": "NOTE",
"item_accounting_code": {
"cost_of_goods_sold": "ACCOUNT_CODE"
},
"uuid": "LINE_UUID",
"version": "LINE_VERSION"
}
}
}
| Attribute | Type | Description |
|---|---|---|
| purchase_order | Object | Root object containing purchase order details. |
| line | Object | Represents a single line item in the purchase order. |
| subtotal | String | Subtotal amount for the line item before tax. |
| total | String | Total amount for the line item after tax. |
| tax | String | Total tax amount applied to the line item. |
| item_uuid | String | Unique identifier for the item associated with this line. |
| item_id | String | Readable ID of the item. |
| item_name | String | Display name of the item. |
| item_quantity | String | Quantity of the item ordered. |
| item_price_snapshot | Object | Captures the pricing details of the item at the time of order creation. |
| pricing_rule | Object | Contains pricing rule details applied to the item. |
| uuid | String | Unique identifier of the pricing rule. |
| version | String | Version number of the pricing rule. |
| price_type | String | Type of price used (example: fixed, dynamic). |
| price | String | Actual price value applied per unit. |
| uom | String | Unit of measure used for the pricing (example: each, box). |
| warehouse | String | Name of the warehouse linked to the pricing rule. |
| pricing_version | String | Version number of the applied pricing configuration. |
| latest_used_pricing_version | String | Latest pricing version used during the transaction. |
| item_purchase_tax_configuration | Object | Contains tax configuration settings for the item. |
| purchase_price_is_tax_inclusive | String | Indicates whether the purchase price includes tax (true or false). |
| tax_code | Object | Tax code details applied to the item. |
| uuid | String | Unique identifier of the applied tax code. |
| code | String | Tax code used for the item. |
| rate | String | Tax rate applied to the item. |
| link | String | API link to retrieve the tax code details. |
| item_price_tax_exempt | String | Indicates whether the item is exempt from tax (true or false). |
| item_price_tax | Object | Tax information applied to the item. |
| item_price_tax |
Retrieve All Purchase Order of an Account: /accounts/{account_id}/purchase-orders
Purpose
The purpose of this endpoint is to retrieve all purchase orders associated with a specific supplier account. It provides detailed information about each order, including supplier linkage, currency details, item breakdowns, and financial metrics, enabling procurement and finance teams to manage account-level purchase activity effectively.
Use Case
This endpoint is used to review or process purchase orders tied to a particular account. It is commonly applied in procurement workflows to validate supplier transactions, in inventory management to track item quantities and pricing, and in financial reporting to analyze expenses, outstanding amounts, and overdue metrics. By accessing this endpoint, teams gain visibility into both order-level and item-level details, supporting efficient account and supplier management.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| account_id | string | The unique identifier of the account. |
Query Parameters
This endpoint does not have any query parameters.
Request Body
No request body is required for this endpoint.
Response
The response returns an account object containing a list of purchase orders linked to the specified account. Each purchase order includes metadata such as its ID, status, currency, supplier invoice reference, issue and due dates, expected completion date, and financial values like subtotal, tax, and total. Line items provide granular details including item IDs, names, quantities, pricing snapshots, and tax configurations, along with accounting codes for integration with financial systems. KPIs summarize operational and financial metrics such as total expenses, outstanding balances, overdue amounts, and invoice history. Pagination metadata is also included to support navigation across multiple purchase orders.
Response Body
{
"account": {
"purchase_orders": [
{
"status": "STATUS",
"id": "PURCHASE_ORDER_ID",
"currency": {
"uuid": "CURRENCY_UUID",
"name": "CURRENCY_NAME",
"link": "CURRENCY_LINK"
},
"supplier_invoice_id": "SUPPLIER_INVOICE_ID",
"issue_date": "ISSUE_DATE",
"due_date": "DUE_DATE",
"expected_completion_date": "EXPECTED_COMPLETION_DATE",
"subtotal": "SUBTOTAL",
"tax": "TAX_AMOUNT",
"total": "TOTAL_AMOUNT",
"price_tax_inclusive": "IS_TAX_INCLUSIVE",
"purchase_order_note": "NOTE",
"account_id": "ACCOUNT_ID",
"created_by": "CREATED_BY",
"created_on": "CREATION_TIMESTAMP",
"last_updated_by": "UPDATED_BY",
"last_updated_on": "UPDATED_TIMESTAMP",
"uuid": "PURCHASE_ORDER_UUID",
"version": "VERSION",
"custom_attributes": [
{
"name": "ATTRIBUTE_NAME",
"value": "ATTRIBUTE_VALUE"
}
],
"custom_objects": [],
"lines": [
{
"subtotal": "LINE_SUBTOTAL",
"total": "LINE_TOTAL",
"tax": "LINE_TAX",
"item_uuid": "ITEM_UUID",
"item_id": "ITEM_ID",
"item_name": "ITEM_NAME",
"item_quantity": "ITEM_QUANTITY",
"item_price_snapshot": {
"pricing_rule": {
"uuid": "PRICING_RULE_UUID",
"version": "PRICING_VERSION",
"price_type": "PRICE_TYPE",
"price": "ITEM_PRICE",
"uom": "UNIT_OF_MEASURE",
"warehouse": "WAREHOUSE_NAME"
}
},
"item_purchase_tax_configuration": {
"purchase_price_is_tax_inclusive": "IS_TAX_INCLUSIVE",
"tax_code": {
"uuid": "TAX_CODE_UUID",
"code": "TAX_CODE",
"rate": "TAX_RATE",
"link": "TAX_LINK"
}
},
"item_price_tax_exempt": "IS_TAX_EXEMPT",
"item_price_tax": {
"uuid": "ITEM_TAX_UUID",
"code": "TAX_CODE",
"rate": "TAX_RATE",
"link": "TAX_LINK"
},
"uuid": "LINE_UUID",
"version": "LINE_VERSION"
}
],
"kpis": {
"total_expense": "TOTAL_EXPENSE",
"estimated_total": "ESTIMATED_TOTAL",
"total_outstanding": "OUTSTANDING_AMOUNT",
"total_overdue": "OVERDUE_AMOUNT",
"last_invoice_issue_date": "LAST_INVOICE_DATE",
"last_invoice_total": "LAST_INVOICE_TOTAL",
"total_purchase_invoice": "TOTAL_PURCHASE_INVOICES",
"last_reactivated_on": "LAST_REACTIVATED_DATE",
"last_calcelled_on": "LAST_CANCELLED_DATE",
"last_changed_on": "LAST_CHANGED_DATE",
"last_deleted_on": "LAST_DELETED_DATE"
}
}
],
"pagination": {
"records": "TOTAL_RECORDS",
"limit": "RESULTS_LIMIT",
"offset": "OFFSET_VALUE",
"previous_page": "PREVIOUS_PAGE_LINK",
"next_page": "NEXT_PAGE_LINK"
}
}
}
| Attribute | Type | Description |
|---|---|---|
| account | Object | Parent object containing purchase orders for the specific account. |
| purchase_orders | Array | List of purchase orders associated with the account. |
| status | String | Current status of the purchase order. |
| id | String | Human-readable purchase order identifier. |
| currency | Object | Details of the currency used in the purchase order. |
| uuid | UUID | Unique identifier for the currency. |
| name | String | Name or code of the currency (example: AUD). |
| link | URL | API link to retrieve detailed currency information. |
| supplier_invoice_id | String | Identifier of the supplier invoice linked to this purchase order. |
| purchase_orders.issue_date | Date | The date the purchase order was issued. |
| due_date | Date | Payment due date for the purchase order. |
| expected_completion_date | Date | Expected completion or delivery date. |
| subtotal | Number | Subtotal amount before tax. |
| tax | Number | Total tax amount for the purchase order. |
| total | Number | Total payable amount including tax. |
| price_tax_inclusive | Boolean | Indicates whether prices include tax. |
| purchase_order_note | String | Additional notes or remarks for the purchase order. |
| account_id | String | Identifier of the account linked to the purchase order. |
| created_by | String | Name or ID of the user who created the purchase order. |
| created_on | DateTime | Timestamp when the record was created (ISO 8601). |
| last_updated_by | String | Name or ID of the user who last updated the record. |
| last_updated_on | DateTime | Timestamp of the last record update (ISO 8601). |
| uuid | UUID | Unique identifier for the purchase order. |
| version | String | Version number of the purchase order. |
| custom_attributes | Array | List of user-defined attributes for the purchase order. |
| name | String | Name of the custom attribute. |
| value | String | Value of the custom attribute. |
| custom_objects | Array | List of custom objects linked to the purchase order (if any). |
| lines | Array | Line items included within the purchase order. |
| subtotal | Number | Line subtotal amount before tax. |
| total | Number | Line total amount including tax. |
| tax | Number | Tax applied to this line item. |
| item_uuid | UUID | Unique identifier for the purchased item. |
| item_id | String | Human-readable item ID. |
| item_name | String | Name of the purchased item. |
| item_quantity | Number | Quantity of the item purchased. |
| item_price_snapshot | Object | Snapshot of the item’s pricing details at order time. |
| pricing_rule | Object | Pricing rule used to determine the item price. |
| uuid | UUID | Unique identifier of the applied pricing rule. |
| version | String | Version number of the pricing rule. |
| price_type | String | Type of pricing applied (example: fixed, discount). |
| price | Number | Price of the item as per the pricing rule. |
| uom | String | Unit of measure for the pricing rule (example: per unit, per kg). |
| warehouse | String | Warehouse linked to the pricing rule. |
| item_purchase_tax_configuration | Object | Configuration for purchase tax details. |
| purchase_price_is_tax_inclusive | Boolean | Indicates whether the purchase price includes tax. |
| tax_code | Object | Tax code information applied to the item. |
| uuid | UUID | Unique identifier for the tax code. |
| code | String | Code of the applied tax. |
| rate | Number | Tax rate applied. |
| link | URL | API link to fetch tax code details. |
| item_price_tax_exempt | Boolean | Indicates whether the item is exempt from tax. |
| item_price_tax | Object | Applied tax details for the item price. |
| uuid | UUID | Unique identifier of the item-level tax. |
| code | String | Tax code applied to the item. |
| rate | Number | Tax rate for the item. |
| link | URL | API link for the tax record. |
| uuid | UUID | Unique identifier for the line item. |
| version | String | Version number of the line item record. |
| kpis | Object | Key performance indicators related to the purchase order. |
| total_expense | Number | Total expense recorded for this purchase order. |
| estimated_total | Number | Estimated total cost. |
| total_outstanding | Number | Amount still unpaid or outstanding. |
| total_overdue | Number | Total overdue amount. |
| last_invoice_issue_date | Date | Date when the last invoice was issued. |
| last_invoice_total | Number | Total amount of the most recent invoice. |
| total_purchase_invoice | Number | Total count of purchase invoices linked to this order. |
| last_reactivated_on | Date | Date when the purchase order was last reactivated. |
| last_calcelled_on | Date | Date when the purchase order was last cancelled. |
| last_changed_on | Date | Date of the last modification. |
| last_deleted_on | Date | Date when the purchase order was deleted. |
| pagination | Object | Contains pagination details for the account’s purchase order list. |
| records | Number | Total number of purchase order records. |
| limit | Number | Maximum number of records per page. |
| offset | Number | Record offset used for pagination. |
| previous_page | URL | API link to the previous page of results. |
| next_page | URL | API link to the next page of results. |
Retrieve All Notes for a Purchase Order: /purchase-orders/{purchase_order_id}/notes
Purpose
Retrieve all notes linked to a specific purchase order, including their metadata, content, attached files, and audit information.
Use Case
- View all comments, remarks, or instructions logged against a purchase order.
- Access files (example: images, receipts, scanned approvals) attached to notes.
- Support collaboration and auditing for procurement processes.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| purchase_order_id | string | Unique identifier of the purchase order. |
Query Parameters
| Parameter | Type | Description |
|---|---|---|
| limit | integer | Maximum number of records to return (default: 20). |
| offset | integer | Number of records to skip (default: 0). |
Request Body
No data is required for the request body.
Response
On success, the API returns a purchase_order object containing a list of notes. Each note includes its unique identifier, version, content (HTML-supported), audit metadata (creator and timestamps), and any attached files. Pagination metadata is also provided to navigate through large result sets.
Response Body
{
"purchase_order": {
"notes": [
{
"uuid": "NOTE_UUID",
"version": "1",
"content": "<p>NOTE_CONTENT</p>",
"files": [
{
"uuid": "FILE_UUID",
"name": "FILE_NAME",
"version": "1"
}
],
"created_by": "CREATED_BY",
"created_on": "CREATED_ON",
"last_updated_by": "LAST_UPDATED_BY",
"last_updated_on": "LAST_UPDATED_ON",
"custom_attributes": []
}
],
"pagination": {
"records": 1,
"limit": 20,
"offset": 0,
"previous_page": "",
"next_page": "NULL"
}
}
}
| Attribute | Type | Description |
|---|---|---|
| purchase_order | object | Container holding purchase order data. |
| notes | array | List of notes for the purchase order. |
| uuid | string (UUID) | Unique identifier of the note. |
| version | string | Version number of the note (used for concurrency control). |
| content | string (HTML) | Note content with HTML formatting supported. |
| files | array | Files attached to the note. |
| uuid | string (UUID) | Unique identifier of the file. |
| name | string | Name of the attached file. |
| version | string | Version number of the file. |
| created_by | string | User who created the note. |
| created_on | string (date-time) | Timestamp when the note was created. |
| last_updated_by | string | User who last updated the note (if any). |
| last_updated_on | string (date-time) | Timestamp of the last update (if any). |
| custom_attributes | array | Custom attributes defined by client configuration. |
| pagination | object | Pagination metadata. |
| records | integer | Total number of records available. |
| limit | integer | Maximum number of records returned per request. |
| offset | integer | Number of records skipped. |
| previous_page | string | Link to the previous page (if available). |
| next_page | string/null | Link to the next page (if available). |
Retrieve Specific Purchase Order Note: /purchase-orders/{purchase_order_id}/notes/{note_uuid}
Purpose
Retrieve details of a specific note within a purchase order by its UUID.
Use Case
- Fetch a single note for display or review.
- Access metadata and files associated with one note.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| purchase_order_id | string | Unique identifier of the purchase order. |
| note_uuid | string | Unique identifier of the note. |
Query Parameters
No query parameter is required for this endpoint.
Request Body
No request body is required for this endpoint.
Response
On success, the API returns the details of the specified note, including its unique identifier, version, content, files, and audit details.
Response Body
{
"purchase_order": {
"note": {
"uuid": "NOTE_UUID",
"version": "1",
"content": "NOTE_CONTENT",
"files": [
{
"uuid": "FILE_UUID",
"name": "FILE_NAME",
"version": "1"
}
],
"created_by": "CREATED_BY",
"created_on": "CREATED_ON",
"last_updated_by": "LAST_UPDATED_BY",
"last_updated_on": "LAST_UPDATED_ON",
"custom_attributes": []
}
}
}
| Attribute | Type | Description |
|---|---|---|
| purchase_order | object | Container holding purchase order data. |
| note | object | The requested note. |
| uuid | string (UUID) | Unique identifier of the note. |
| version | string | Version number of the note. |
| content | string (HTML) | Note content. |
| files | array | Attached files. |
| uuid | string (UUID) | Unique identifier of the file. |
| name | string | File name. |
| version | string | File version. |
| created_by | string | User who created the note. |
| created_on | string (date-time) | Creation timestamp. |
| last_updated_by | string | User who last updated the note. |
| last_updated_on | string (date-time) | Last update timestamp. |
| custom_attributes | array | Custom attributes if defined. |
Retrieve Files for a Note: /purchase-orders/{purchase_order_id}/notes/{note_uuid}/files
Purpose
Retrieve all files attached to a specific note of a purchase order.
Use Case
- Fetch supporting documents linked to a note.
- Display file attachments associated with procurement notes.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| purchase_order_id | string | Unique identifier of the purchase order. |
| note_uuid | string | Unique identifier of the note. |
Query Parameters
No query parameter is required for the request body.
Request Body
No data is required for the request body.
Response
On success, the API returns a list of files attached to the given note, including their UUIDs, names, and versions.
Response Body
{
"purchase_order": {
"note": {
"files": [
{
"uuid": "FILE_UUID",
"name": "FILE_NAME",
"version": "1"
}
],
"custom_attributes": []
}
}
}
| Attribute | Type | Description |
|---|---|---|
| purchase_order | object | Container object. |
| note | object | The requested note container. |
| files | array | List of files. |
| uuid | string (UUID) | File identifier. |
| name | string | File name. |
| version | string | File version. |
| custom_attributes | array | Custom attributes if defined. |
Retrieve a Specific File from a Note: /purchase-orders/{purchase_order_id}/notes/{note_uuid}/files/{file_uuid}
Purpose
Retrieve details of a specific file attached to a purchase order note.
Use Case
- Fetch metadata of a particular file.
- Verify attached file details before downloading or processing.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| purchase_order_id | string | Unique identifier of the purchase order. |
| note_uuid | string | Unique identifier of the note. |
| file_uuid | string | Unique identifier of the file. |
Query Parameters
No query parameter is required for this endpoint.
Request Body
No data is required for the request body.
Response
On success, the API returns the file metadata, including its UUID, name, and version, within the note container.
Response Body
{
"purchase_order": {
"note": {
"file": {
"uuid": "FILE_UUID",
"name": "FILE_NAME",
"version": "1"
},
"custom_attributes": []
}
}
}
| Attribute | Type | Description |
|---|---|---|
| purchase_order | object | Container object. |
| note | object | The requested note container. |
| file | object | Metadata of the requested file. |
| uuid | string (UUID) | Unique identifier of the file. |
| name | string | File name. |
| version | string | File version. |
| custom_attributes | array | Custom attributes if defined. |
Retrieve a Specific Purchase Order Line Item: /purchase-orders/{id}/lines/{uuid}
Purpose
Retrieve the complete details of a specific line item within a purchase order using its UUID. Each line item represents a distinct product or service entry on the purchase order and contains comprehensive data including pricing information, tax configuration, quantity, accounting codes, and any custom attributes assigned to it. This endpoint provides a granular view of a single line item, allowing consumers to inspect the full pricing snapshot with unit price, discount, and unit of measure, as well as the tax rule applied. It is particularly useful when you need to access the detailed breakdown of one item without retrieving the entire purchase order payload.
Use Case
This endpoint is useful when you need to view pricing, quantity, and tax details for a single item on a purchase order. It can also be used to verify individual line item data before creating an invoice or item receipt, ensuring that the unit price, quantity, and tax rate are accurate prior to downstream document generation. Procurement teams commonly use this endpoint during reconciliation workflows to compare the ordered line item against what was actually received or invoiced. Additionally, it supports integration scenarios where an external system needs to pull specific line item details for reporting, cost allocation, or ERP synchronization. Auditors may also rely on this endpoint to inspect accounting codes and tax-exempt flags for compliance verification.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| purchase_order_id | String | The unique ID of the purchase order (e.g., PO-RTO8M6-0002) |
| line_uuid | String (UUID) | The UUID of the specific line item to retrieve |
Query Parameters
No query parameters required.
Response
Returns the details of the specified line item nested under the purchase_order object. The response includes a comprehensive breakdown organized into several key data groups: financial totals (subtotal, tax, and total), item identification (UUID, ID, and name), quantity and serial/batch information, and a full pricing snapshot containing the pricing rule with unit price, price type, and unit of measure. Tax configuration is provided as a separate nested object with the tax code, rate, and reference link. The response also includes the discount amount, accounting code, expected completion date, invoice note, and an array of custom attributes, giving consumers a complete picture of the line item in a single call.
Response Body
{
"purchase_order": {
"line": {
"subtotal": "SUBTOTAL_AMOUNT",
"total": "TOTAL_AMOUNT",
"tax": "TAX_AMOUNT",
"item_uuid": "ITEM_UUID",
"item_id": "ITEM_ID",
"item_name": "ITEM_NAME",
"item_quantity": "ITEM_QUANTITY",
"item_serial_or_batch_number": "SERIAL_OR_BATCH_NUMBER",
"item_price_snapshot": {
"pricing_rule": {
"uuid": "PRICING_RULE_UUID",
"version": "PRICING_RULE_VERSION",
"price_type": "PRICE_TYPE",
"price": "UNIT_PRICE",
"uom": "UNIT_OF_MEASURE",
"pricing_version": "PRICING_VERSION"
}
},
"item_discount_amount": "DISCOUNT_AMOUNT",
"item_price_tax_exempt": "TAX_EXEMPT_FLAG",
"item_price_tax": {
"uuid": "TAX_UUID",
"code": "TAX_CODE",
"rate": "TAX_RATE",
"link": "TAX_LINK"
},
"item_invoice_note": "INVOICE_NOTE",
"item_accounting_code": "ACCOUNTING_CODE",
"item_expected_completion_date": "EXPECTED_COMPLETION_DATE",
"item_custom_attributes": [],
"uuid": "LINE_UUID",
"version": "LINE_VERSION"
}
}
}
| Attribute | Type | Description |
|---|---|---|
| subtotal | String | Line item subtotal before tax |
| total | String | Line item total amount |
| tax | String | Tax amount for the line item |
| item_uuid | String (UUID) | UUID of the item |
| item_id | String | Human-readable item identifier |
| item_name | String | Display name of the item |
| item_quantity | String | Quantity ordered |
| item_serial_or_batch_number | String | Serial or batch number, or N/A |
| item_price_snapshot.pricing_rule.price_type | String | Pricing type (e.g., PER_UNIT_PRICING) |
| item_price_snapshot.pricing_rule.price | String | Unit price of the item |
| item_price_snapshot.pricing_rule.uom | String | Unit of measure |
| item_discount_amount | String | Discount applied to the line item |
| item_price_tax_exempt | String | Whether the item is tax exempt (true/false) |
| item_price_tax.code | String | Tax code applied |
| item_price_tax.rate | String | Tax rate percentage |
| item_invoice_note | String | Note for the invoice line |
| item_accounting_code | String | Accounting code for the item |
| item_expected_completion_date | String (ISO 8601) | Expected completion date |
| item_custom_attributes | Array | Custom attributes for the line item |
| uuid | String (UUID) | UUID of the line item |
| version | String | Version number of the line item |
Retrieve Purchase Orders by Account: /accounts/{id}/purchase-orders
Purpose
Retrieve all purchase orders associated with a specific account (supplier). This endpoint provides an account-level view of purchasing activity, returning every purchase order linked to the given account ID along with key financial summaries and status information. It supports pagination through limit and offset query parameters, making it suitable for accounts with a large volume of orders. The response also includes KPI metrics such as total expense, estimated total, total outstanding, and total overdue, giving consumers a high-level financial overview of the supplier relationship in a single request.
Use Case
This endpoint allows you to view all purchase orders placed with a particular supplier. It is commonly used to generate account-level purchase order reports or to audit supplier purchasing history and outstanding orders. Supplier relationship managers can use it to assess the volume and value of transactions with a given vendor, identifying trends in spend over time. The built-in KPI fields make it straightforward to build dashboards that track outstanding and overdue amounts per supplier without additional calculations. It also supports account reconciliation workflows where finance teams need to cross-reference all purchase orders against invoices and payments for a specific supplier. Integration systems can paginate through the full set of orders to synchronize supplier data with external ERP or accounting platforms.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| account_id | String | The unique ID of the account (e.g., RTO8M6) |
Query Parameters
| Parameter | Type | Description |
|---|---|---|
| limit | Integer | Maximum number of records to return (optional) |
| offset | Integer | Number of records to skip for pagination (optional) |
Response
Returns a list of purchase orders for the specified account with pagination metadata. Each purchase order in the array includes its status, human-readable ID, currency, issue and due dates, subtotal and total amounts, account ID, UUID, and an array of line items. The kpis object on each order provides aggregated financial metrics including total expense, estimated total, total outstanding, and total overdue, enabling quick supplier spend analysis without additional API calls. The pagination object at the root level contains the total record count, the current limit and offset values, and URLs for the previous and next pages, making it straightforward to iterate through large result sets programmatically.
Response Body
{
"purchase_orders": [
{
"status": "PURCHASE_ORDER_STATUS",
"id": "PURCHASE_ORDER_ID",
"currency": {
"uuid": "CURRENCY_UUID",
"name": "CURRENCY_CODE"
},
"issue_date": "ISSUE_DATE",
"due_date": "DUE_DATE",
"subtotal": "SUBTOTAL_AMOUNT",
"total": "TOTAL_AMOUNT",
"account_id": "ACCOUNT_ID",
"uuid": "PURCHASE_ORDER_UUID",
"lines": ["LINE_ITEMS"],
"kpis": {
"total_expense": "TOTAL_EXPENSE",
"estimated_total": "ESTIMATED_TOTAL",
"total_outstanding": "TOTAL_OUTSTANDING",
"total_overdue": "TOTAL_OVERDUE"
}
}
],
"pagination": {
"records": "TOTAL_RECORD_COUNT",
"limit": "PAGE_LIMIT",
"offset": "PAGE_OFFSET",
"previous_page": "PREVIOUS_PAGE_URL",
"next_page": "NEXT_PAGE_URL"
}
}
| Attribute | Type | Description |
|---|---|---|
| notes | Array | List of notes attached to the purchase order |
| uuid | String (UUID) | Unique identifier for the note |
| content | String (HTML) | Note content, may contain HTML markup |
| files | Array | Files attached to the note |
| created_by | String | Username of the note creator |
| created_on | String (ISO 8601) | Timestamp when the note was created |
| last_updated_by | String | Username of the last editor |
| last_updated_on | String (ISO 8601) | Timestamp of the last update |
| version | String | Version number of the note |
| watcherList.internal_watchers | Array | Internal users watching this note |
| watcherList.external_watchers | Array | External contacts watching this note |
| custom_attributes | Array | Custom attributes for the note |
| pagination.records | Integer | Total number of notes |
Retrieve a Specific Note for a Purchase Order: /purchase-orders/{id}/notes/{uuid}
Purpose
Retrieve the details of a specific note on a purchase order, including attached files and watcher information. This endpoint returns a single note identified by its UUID, providing the full HTML content, a list of all files attached to that note with their UUIDs and version numbers, and the complete watcher list broken down by internal and external participants. It is designed for scenarios where you already know which note you need and want to retrieve its complete details without fetching the entire notes collection. The response also includes creation and update audit fields, the note version for optimistic concurrency control, and any custom attributes assigned to the note.
Use Case
This endpoint lets you view a specific note's content and attached files. It is helpful for checking who is watching a particular note, including both internal and external watchers, and for retrieving file references attached to a note for download. Teams commonly use this when they need to deep-link to a specific note from an external system, such as a ticketing or project management tool, and display its full context. It also supports file download preparation workflows where the consumer first retrieves the note to obtain file UUIDs and names before initiating individual file downloads. For audit and compliance purposes, the watcher list provides a clear record of which internal users and external contacts had visibility into the specific communication thread.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| purchase_order_id | String | The unique ID of the purchase order (e.g., PO-RTO8M6-0002) |
| note_uuid | String (UUID) | The UUID of the specific note to retrieve |
Query Parameters
No query parameters required.
Response
Returns the details of the specified note as a single object nested under the purchase_order wrapper. The note object includes its UUID, HTML-formatted content, and a files array where each file entry contains a UUID, name, and version number suitable for subsequent file retrieval calls. Audit metadata is provided through created_by, created_on, last_updated_by, and last_updated_on fields, along with a version field for tracking changes. The watcherList object separates watchers into internal_watchers (identified by email) and external_watchers (identified by email and account ID), providing full visibility into notification recipients for the note.
Response Body
{
"purchase_order": {
"note": {
"uuid": "NOTE_UUID",
"content": "NOTE_CONTENT_HTML",
"files": [
{
"uuid": "FILE_UUID",
"name": "FILE_NAME",
"version": "FILE_VERSION"
}
],
"created_by": "CREATED_BY_USER",
"created_on": "CREATED_ON_DATETIME",
"last_updated_by": "LAST_UPDATED_BY_USER",
"last_updated_on": "LAST_UPDATED_ON_DATETIME",
"version": "NOTE_VERSION",
"watcherList": {
"internal_watchers": [
{
"email": "INTERNAL_WATCHER_EMAIL"
}
],
"external_watchers": [
{
"email": "EXTERNAL_WATCHER_EMAIL",
"account_id": "WATCHER_ACCOUNT_ID"
}
]
},
"custom_attributes": []
}
}
}
| Attribute | Type | Description |
|---|---|---|
| uuid | String (UUID) | Unique identifier for the note |
| content | String (HTML) | Note content, may contain HTML markup |
| files | Array | List of files attached to the note |
| files[].uuid | String (UUID) | UUID of the attached file |
| files[].name | String | Name/identifier of the attached file |
| files[].version | String | Version number of the file |
| created_by | String | Username of the note creator |
| created_on | String (ISO 8601) | Timestamp when the note was created |
| last_updated_by | String | Username of the last editor |
| last_updated_on | String (ISO 8601) | Timestamp of the last update |
| version | String | Version number of the note |
| watcherList.internal_watchers | Array | Internal users watching this note |
| watcherList.external_watchers | Array | External contacts watching this note |
| custom_attributes | Array | Custom attributes for the note |
Retrieve All Files for a Purchase Order Note: /purchase-orders/{id}/notes/{uuid}/files
Purpose
Retrieve all files attached to a specific note on a purchase order. This endpoint returns the complete list of file attachments for a given note, identified by the purchase order ID and note UUID. Each file in the response includes its UUID, name, and version number, providing the metadata needed to reference or download individual files. It is a focused endpoint that returns only the file-related data from the note, making it efficient for scenarios where the note content and watcher information are not needed.
Use Case
This endpoint is used to list all file attachments on a purchase order note. It helps identify files for bulk download or processing, and can be used to verify that file uploads were successful after adding files to a note. Document management workflows benefit from this endpoint by providing a quick inventory of all attachments without needing to parse the full note content or watcher details. It is also useful in batch processing scenarios where an integration system needs to enumerate all files on a note, collect their UUIDs, and then download or archive them sequentially. Quality assurance teams can use it to confirm that the expected number of supporting documents have been attached before advancing the purchase order through an approval workflow.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| purchase_order_id | String | The unique ID of the purchase order (e.g., PO-RTO8M6-0002) |
| note_uuid | String (UUID) | The UUID of the note whose files to retrieve |
Query Parameters
No query parameters required.
Response
Returns the list of files attached to the specified note as an array nested within the purchase_order.note object. Each file entry in the array contains a uuid for unique identification, a name field with the file's identifier, and a version number that increments when the file is updated. The response also includes the note's watcherList (with empty internal and external watcher arrays when no watchers are configured) and custom_attributes array, though the primary payload is the files collection. This structure allows consumers to iterate over the files array and use each file's UUID to make subsequent calls to the individual file retrieval endpoint.
Response Body
{
"purchase_order": {
"note": {
"files": [
{
"uuid": "FILE_UUID",
"name": "FILE_NAME",
"version": "FILE_VERSION"
}
],
"watcherList": {
"internal_watchers": [],
"external_watchers": []
},
"custom_attributes": []
}
}
}
| Attribute | Type | Description |
|---|---|---|
| files | Array | List of files attached to the note |
| files[].uuid | String (UUID) | UUID of the file |
| files[].name | String | Name/identifier of the file |
| files[].version | String | Version number of the file |
| watcherList | Object | Watcher list for the note |
| custom_attributes | Array | Custom attributes for the note |
Retrieve a Specific File for a Purchase Order Note: /purchase-orders/{id}/notes/{uuid}/files/{uuid}
Purpose
Retrieve the details of a specific file attached to a purchase order note. This endpoint returns the metadata for a single file identified by its UUID within the context of a specific note and purchase order. The response includes the file's UUID, name, and version number, which together provide the information needed to verify the file's identity and track changes over time. It is a targeted endpoint designed for retrieving one file's metadata without loading the entire files collection or the parent note's content.
Use Case
This endpoint is used to get metadata for a specific file attachment on a purchase order note. It allows you to verify a specific file's version and identity before initiating a download, ensuring that the correct revision of the document is being retrieved. It is commonly used in integration workflows where an external system needs to confirm a file's existence and version before pulling it into a document management system or archival platform. The version tracking capability supports scenarios where files may be updated over time, allowing consumers to detect whether a newer version is available since their last retrieval. Audit workflows also benefit from this endpoint by providing a verifiable record of which specific file version was associated with a purchase order note at any point in time.
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| purchase_order_id | String | The unique ID of the purchase order (e.g., PO-RTO8M6-0002) |
| note_uuid | String (UUID) | The UUID of the note containing the file |
| file_uuid | String (UUID) | The UUID of the specific file to retrieve |
Query Parameters
No query parameters required.
Response
Returns the metadata of the specified file as a single object nested under the purchase_order.note wrapper. The file object contains the file's uuid for unique identification, the name field with the file's identifier, and a version number that tracks revisions. The response also includes the parent note's watcherList and custom_attributes for context, though the primary payload is the individual file object. This structure is consistent with the multi-file listing endpoint, making it straightforward to handle both single and bulk file retrieval responses with the same client logic.
Response Body
{
"purchase_order": {
"note": {
"file": {
"uuid": "FILE_UUID",
"name": "FILE_NAME",
"version": "FILE_VERSION"
},
"watcherList": {
"internal_watchers": [],
"external_watchers": []
},
"custom_attributes": []
}
}
}
| Attribute | Type | Description |
|---|---|---|
| file.uuid | String (UUID) | UUID of the file |
| file.name | String | Name/identifier of the file |
| file.version | String | Version number of the file |
| watcherList | Object | Watcher list for the note |
| custom_attributes | Array | Custom attributes for the note |
