ドキュメント目次
Purchasing
Procure-to-pay: requisitions, RFQs, purchase orders, goods receipts and supplier invoices. Orders you place with suppliers and the receiving status against them. Drive procurement from an external system, or read receiving and matching status for AP automation.
/v1/purchasing/purchase-ordersScope: purchasing:readList purchase orders
Returns a cursor-paginated list of purchase orders. Use updated_since for incremental sync.
| statusoptional | stringFilter by status: draft | sent | received | closed. |
| supplier_idoptional | stringFilter by supplier (partner id). |
| limitoptional | integerPage size, 1–200 (default 50). |
| cursoroptional | stringPagination cursor from a previous response. |
| updated_sinceoptional | stringRFC 3339 timestamp; return orders changed after it. |
curl "https://api.apusplatform.com/v1/purchasing/purchase-orders" \
-H "Authorization: Bearer $APUS_TOKEN"{
"data": [
{
"id": "po_3310",
"number": "PO-2026-3310",
"supplier_id": "prt_501",
"status": "sent",
"expected_at": "2026-07-28",
"total": {
"amount": 92000000,
"currency": "VND"
},
"updated_at": "2026-07-18T09:12:04Z"
}
],
"has_more": true,
"next_cursor": "crsr_po44"
}/v1/purchasing/purchase-ordersScope: purchasing:writeCreate a purchase order
Creates a purchase order for a supplier. lines must not be empty.
| supplier_idrequired | stringPartner id of the supplier. |
| linesrequired | array[{ sku, quantity, unit_price }]. |
| expected_atoptional | stringExpected delivery date (RFC 3339). |
curl -X POST "https://api.apusplatform.com/v1/purchasing/purchase-orders" \
-H "Authorization: Bearer $APUS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"supplier_id": "prt_501",
"lines": [
{
"sku": "STEEL-COIL-2MM",
"quantity": 40,
"unit_price": {
"amount": 2300000,
"currency": "VND"
}
}
],
"expected_at": "2026-07-28"
}'{
"id": "po_3311",
"number": "PO-2026-3311",
"status": "sent",
"created_at": "2026-07-20T02:10:00Z"
}/v1/purchasing/purchase-orders/{id}Scope: purchasing:readRetrieve a purchase order
Returns a single purchase order by its id, including its lines.
| idrequired | stringPurchase order id. |
curl "https://api.apusplatform.com/v1/purchasing/purchase-orders/po_3310" \
-H "Authorization: Bearer $APUS_TOKEN"{
"id": "po_3310",
"number": "PO-2026-3310",
"supplier_id": "prt_501",
"status": "sent",
"expected_at": "2026-07-28",
"lines": [
{
"sku": "STEEL-COIL-2MM",
"quantity": 40,
"unit_price": {
"amount": 2300000,
"currency": "VND"
}
}
],
"total": {
"amount": 92000000,
"currency": "VND"
},
"updated_at": "2026-07-18T09:12:04Z"
}/v1/purchasing/purchase-orders/{id}Scope: purchasing:writeUpdate a purchase order
Updates mutable fields of a draft or sent purchase order. Only supplied fields change.
| idrequired | stringPurchase order id. |
| expected_atoptional | stringExpected delivery date (RFC 3339). |
| linesoptional | arrayReplace the order lines: [{ sku, quantity, unit_price }]. |
| statusoptional | stringAdvance the status, e.g. draft → sent. |
curl -X PATCH "https://api.apusplatform.com/v1/purchasing/purchase-orders/po_3311" \
-H "Authorization: Bearer $APUS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"expected_at": "2026-07-30"
}'{
"id": "po_3311",
"number": "PO-2026-3311",
"status": "sent",
"updated_at": "2026-07-20T02:12:00Z"
}/v1/purchasing/purchase-orders/{id}/cancelScope: purchasing:writeCancel a purchase order
Cancels a purchase order. Only orders with no goods received can be cancelled.
| idrequired | stringPurchase order id. |
| reasonoptional | stringOptional cancellation reason (stored on the audit trail). |
curl -X POST "https://api.apusplatform.com/v1/purchasing/purchase-orders/po_3311/cancel" \
-H "Authorization: Bearer $APUS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"reason": "Supplier out of stock."
}'{
"id": "po_3311",
"status": "cancelled",
"cancelled_at": "2026-07-20T02:30:00Z"
}/v1/purchasing/purchase-orders/{id}/receiptsScope: purchasing:writeReceive goods
Records a goods receipt against a purchase order. Increases inventory in real time.
| idrequired | stringPurchase order id. |
| warehouse_idrequired | stringReceiving warehouse. |
| linesrequired | array[{ sku, quantity_received }]. |
curl -X POST "https://api.apusplatform.com/v1/purchasing/purchase-orders/rcpt_88a1/receipts" \
-H "Authorization: Bearer $APUS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"warehouse_id": "wh_north",
"lines": [
{
"sku": "STEEL-COIL-2MM",
"quantity_received": 40
}
]
}'{
"id": "rcpt_88a1",
"purchase_order_id": "po_3311",
"status": "received",
"received_at": "2026-07-20T03:00:00Z"
}/v1/purchasing/goods-receiptsScope: purchasing:readList goods receipts
Returns goods receipts, filterable by purchase order or warehouse.
| purchase_order_idoptional | stringFilter by source purchase order. |
| warehouse_idoptional | stringFilter by receiving warehouse. |
curl "https://api.apusplatform.com/v1/purchasing/goods-receipts" \
-H "Authorization: Bearer $APUS_TOKEN"{
"data": [
{
"id": "rcpt_88a1",
"purchase_order_id": "po_3311",
"warehouse_id": "wh_north",
"status": "received",
"received_at": "2026-07-20T03:00:00Z"
}
]
}/v1/purchasing/purchase-requisitionsScope: purchasing:readList purchase requisitions
Returns internal purchase requisitions awaiting sourcing or approval.
| statusoptional | stringFilter by status: pending | approved | rejected | ordered. |
curl "https://api.apusplatform.com/v1/purchasing/purchase-requisitions" \
-H "Authorization: Bearer $APUS_TOKEN"{
"data": [
{
"id": "req_7011",
"number": "PR-2026-7011",
"department": "maintenance",
"status": "pending",
"created_at": "2026-07-19T06:40:00Z"
}
]
}/v1/purchasing/purchase-requisitionsScope: purchasing:writeCreate a purchase requisition
Raises an internal purchase requisition. lines must not be empty.
| departmentrequired | stringRequesting department code. |
| linesrequired | array[{ sku, quantity }]. |
| needed_byoptional | stringDate the goods are needed (RFC 3339). |
curl -X POST "https://api.apusplatform.com/v1/purchasing/purchase-requisitions" \
-H "Authorization: Bearer $APUS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"department": "maintenance",
"lines": [
{
"sku": "BEARING-6204",
"quantity": 12
}
],
"needed_by": "2026-08-05"
}'{
"id": "req_7012",
"number": "PR-2026-7012",
"status": "pending",
"created_at": "2026-07-20T02:15:00Z"
}/v1/purchasing/purchase-requisitions/{id}/approvalsScope: purchasing:writeApprove a requisition
Records an approval decision (approve or reject) on a purchase requisition.
| idrequired | stringPurchase requisition id. |
| decisionrequired | stringapprove | reject. |
| commentoptional | stringOptional reviewer note. |
curl -X POST "https://api.apusplatform.com/v1/purchasing/purchase-requisitions/req_7012/approvals" \
-H "Authorization: Bearer $APUS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"decision": "approve",
"comment": "Within budget."
}'{
"id": "req_7012",
"status": "approved",
"approved_at": "2026-07-20T02:50:00Z"
}/v1/purchasing/rfqsScope: purchasing:readList requests for quotation
Returns requests for quotation sent to suppliers, filterable by status.
| statusoptional | stringFilter by status: open | quoted | awarded | closed. |
curl "https://api.apusplatform.com/v1/purchasing/rfqs" \
-H "Authorization: Bearer $APUS_TOKEN"{
"data": [
{
"id": "rfq_402",
"number": "RFQ-2026-402",
"status": "open",
"supplier_ids": [
"prt_501",
"prt_530"
],
"due_at": "2026-07-25T00:00:00Z"
}
]
}/v1/purchasing/supplier-invoicesScope: purchasing:readList supplier invoices
Returns supplier (AP) invoices, filterable by supplier and status. Use for three-way matching.
| supplier_idoptional | stringFilter by supplier (partner id). |
| statusoptional | stringFilter by status: draft | matched | approved | paid. |
curl "https://api.apusplatform.com/v1/purchasing/supplier-invoices" \
-H "Authorization: Bearer $APUS_TOKEN"{
"data": [
{
"id": "sinv_9120",
"number": "SINV-2026-9120",
"supplier_id": "prt_501",
"purchase_order_id": "po_3310",
"status": "matched",
"total": {
"amount": 92000000,
"currency": "VND"
},
"due_at": "2026-08-17"
}
]
}連携を始めましょう
アカウントコンソールで API クライアントを作成して認証情報を取得するか、インテグレーションエンジニアにユースケースをご相談ください。