Create RFQ (Inbound)
POST
/v1/rfq/inboundCreate a new RFQ from the procurement system. This is the primary integration endpoint.
rfq.write
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
external_rfq_id | string | Yes | Unique ID from your procurement system |
title | string | Yes | RFQ title/description |
buyer_name | string | Yes | Contact name |
buyer_company | string | No | Company name |
buyer_email | string | Yes | Contact email |
buyer_phone | string | No | Contact phone |
delivery_location | string | No | Delivery destination |
delivery_date | string (ISO) | No | Required delivery date |
priority | string | No | Priority level: low, normal, high, urgent |
notes | string | No | Additional notes |
items | array | Yes | List of items (see below) |
Item Fields
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Item name |
quantity | number | Yes | Required quantity |
unit_of_measure | string | Yes | Unit (piece, kg, meter, etc.) |
description | string | No | Detailed specifications |
target_price | number | No | Target unit price |
target_currency | string | No | Currency code (default: IDR) |
category_slug | string | No | Auto-resolves to category_id |
Example Request
POST /v1/rfq/inboundjson
{
"external_rfq_id": "PROC-2026-0042",
"title": "Office Furniture Q3",
"buyer_name": "John Doe",
"buyer_company": "Acme Corp",
"buyer_email": "john@acme.com",
"buyer_phone": "+628123456",
"delivery_location": "Jakarta",
"delivery_date": "2026-04-15",
"priority": "high",
"items": [
{
"name": "Executive Desk",
"quantity": 50,
"unit_of_measure": "piece",
"description": "Mahogany, 180x80cm",
"target_price": 5000000,
"target_currency": "IDR",
"category_slug": "office-furniture"
}
]
}Response
{
"data": {
"id": "uuid",
"rfq_number": "RFQ-2026-0042",
"external_rfq_id": "PROC-2026-0042",
"status": "pending",
"title": "Office Furniture Q3",
"items_count": 1,
"created_at": "2026-03-01T08:00:00Z"
}
}Behavior
- Creates a
quote_requestsrecord with the provided data - Creates
quote_request_itemsfor each item - Auto-resolves
category_slugtocategory_idif provided - Creates or matches a
procurement_buyersrecord by email - Generates an auto-incrementing
rfq_number - Returns the created RFQ with its new UUID and status
Last updated on February 23, 2026