Read Precoro purchase orders, invoices, suppliers and budgets; approve, reject and submit documents.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
WRITE: approve a document as the Precoro user the API key belongs to (that user must be a current approver of it). Approving can release spending: an approved purchase order may be sent to the supplier and an approved invoice can go to payment. Find candidates with the list tools and waiting_for_my_approval. Cannot be undone through this server. POST /{document}/{idn}/approve.
The document IDN: the company's own document number as shown in Precoro (not the internal id).
Document type: warehouserequests, purchaserequisitions, purchaseorders, receipts, invoices or expenses.
The server marks this tool as destructive. Running it may delete or overwrite data on the server or in any account you connected with your headers.
WRITE: approve a document as the Precoro user the API key belongs to (that user must be a current approver of it). Approving can release spending: an approved purchase order may be sent to the supplier and an approved invoice can go to payment. Find candidates with the list tools and waiting_for_my_approval. Cannot be undone through this server. POST /{document}/{idn}/approve.
| Argument | Type | Description |
|---|---|---|
| idn* | string | The document IDN: the company's own document number as shown in Precoro (not the internal id). |
| document* | string | Document type: warehouserequests, purchaserequisitions, purchaseorders, receipts, invoices or expenses. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"document",
"idn"
],
"properties": {
"idn": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "The document IDN: the company's own document number as shown in Precoro (not the internal id)."
},
"document": {
"enum": [
"warehouserequests",
"purchaserequisitions",
"purchaseorders",
"receipts",
"invoices",
"expenses"
],
"type": "string",
"description": "Document type: warehouserequests, purchaserequisitions, purchaseorders, receipts, invoices or expenses."
}
}
}WRITE: create a purchase requisition in draft (open) status for the key user; it is not submitted for approval until precoro_submit_document is called. Needs a location id, a currency, a delivery date and at least one item (a catalog item_id, or a name with quantity and price). Find ids with precoro_list_reference_data (locations, legal_entities, document_custom_fields) and precoro_list_items. All required document custom fields (for example department or project) must be passed in custom_fields. Returns the new idn and id. POST /purchaserequisitions.
| Argument | Type | Description |
|---|---|---|
| note | string | Plain-text note (stored as HTML). |
| items* | array | |
| currency* | string | |
| budget_id | integer | Budget line id. |
| location_id* | integer | Location id (must be accessible to the key user). |
| custom_fields | array | Document custom field values (department, project, GL account...). Every required one must be given. |
| required_date* | string |
WRITE: create a supplier. The name must be unique in the company (a duplicate name, unique code or registration number is rejected). The supplier is available to all legal entities. Depending on the company's settings it may need approval before it can be used on orders. Returns the new supplier. POST /suppliers.
| Argument | Type | Description |
|---|---|---|
| city | string | |
| name* | string | |
| note | string | |
| phone | string | |
| state | string | |
| country | string | Country code or name as Precoro shows it, e.g. US. |
| contacts | array | Supplier contacts. Precoro can email purchase orders to them. |
| conditions | string | Payment or delivery conditions text. |
| currencies | array | Currencies the supplier is paid in, e.g. ["USD"]. |
One expense document by IDN with items, custom fields and approval steps. GET /expenses/{idn}.
| Argument | Type | Description |
|---|---|---|
| idn* | string | The document IDN: the company's own document number as shown in Precoro (not the internal id). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"idn"
],
"properties": {
"idn": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "The document IDN: the company's own document number as shown in Precoro (not the internal id)."
}
}
}One supplier invoice or credit note by IDN with items, taxes, matching to purchase orders and receipts, and payments. GET /invoices/{idn}.
| Argument | Type | Description |
|---|---|---|
| idn* | string | The document IDN: the company's own document number as shown in Precoro (not the internal id). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"idn"
],
"properties": {
"idn": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "The document IDN: the company's own document number as shown in Precoro (not the internal id)."
}
}
}One catalog item by id. GET /items/{id}.
| Argument | Type | Description |
|---|---|---|
| id* | integer | The item id. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "The item id.",
"exclusiveMinimum": 0
}
}
}One purchase order by IDN with all items, taxes, custom fields, approval steps, receiving and payment status. GET /purchaseorders/{idn}.
| Argument | Type | Description |
|---|---|---|
| idn* | string | The document IDN: the company's own document number as shown in Precoro (not the internal id). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"idn"
],
"properties": {
"idn": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "The document IDN: the company's own document number as shown in Precoro (not the internal id)."
}
}
}One purchase requisition by IDN with items, custom fields and approval steps. GET /purchaserequisitions/{idn}.
| Argument | Type | Description |
|---|---|---|
| idn* | string | The document IDN: the company's own document number as shown in Precoro (not the internal id). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"idn"
],
"properties": {
"idn": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "The document IDN: the company's own document number as shown in Precoro (not the internal id)."
}
}
}One goods receipt by IDN with items and approval steps. GET /receipts/{idn}.
| Argument | Type | Description |
|---|---|---|
| idn* | string | The document IDN: the company's own document number as shown in Precoro (not the internal id). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"idn"
],
"properties": {
"idn": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "The document IDN: the company's own document number as shown in Precoro (not the internal id)."
}
}
}One supplier by id with contacts, conditions, custom field defaults and credit balance. Bank details are never returned. GET /suppliers/{id}.
| Argument | Type | Description |
|---|---|---|
| id* | integer | The supplier id (the numeric id, not the unique code). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"id"
],
"properties": {
"id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "The supplier id (the numeric id, not the unique code).",
"exclusiveMinimum": 0
}
}
}List documents in the accounts-payable inbox (uploaded or emailed supplier invoices read by OCR): file name, supplier, gross total, currency, status, upload and processed dates. GET /ap/documents.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| per_page | integer | Results per page: 10, 20, 50, 100 or 200 (default 20). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"per_page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Results per page: 10, 20, 50, 100 or 200 (default 20)."
}
}
}List budgets with name, period, total sum, how much is used in purchase requisitions, purchase orders, invoices and expenses, and whether the limit is enforced. GET /budgets.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| per_page | integer | Results per page: 10, 20, 50, 100 or 200 (default 20). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"per_page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Results per page: 10, 20, 50, 100 or 200 (default 20)."
}
}
}List supplier contracts with number, supplier, begin and end dates and whether they auto-prolong. GET /contracts.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| per_page | integer | Results per page: 10, 20, 50, 100 or 200 (default 20). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"per_page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Results per page: 10, 20, 50, 100 or 200 (default 20)."
}
}
}List expense documents (purchases without a purchase order): supplier, totals, currency, status and payment status. Filter by status, last-modified time, approval date range, or 'waiting for my approval'. GET /expenses.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| status | array | Status codes to include. 0 open (draft), 1 pending approval, 2 approved, 3 denied, 4 partly paid (invoices/expenses) or stopped (blanket PO), 5 purchased (PO/PR) or paid (invoices/expenses), 6 awaiting confirmation, 7 on revise, 8 canceled, 9 pending receipt (invoices), 10 approval review, 11 closed. |
| per_page | integer | Results per page: 10, 20, 50, 100 or 200 (default 20). |
| approved_to | string | Only documents whose final approval is on or before this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss. |
| approved_from | string | Only documents whose final approval is on or after this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss. |
| modified_since | string | Only records created or changed since this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss. |
| waiting_for_my_approval |
List supplier invoices and credit notes: supplier, totals, currency, issue and due dates, paid sum, approval/payment status. Filter by status, kind, last-modified time, approval date range, or 'waiting for my approval'. GET /invoices.
| Argument | Type | Description |
|---|---|---|
| kind | array | Invoice kinds: 0 standard, 1 credit note, 2 from order, 3 recurring, 4 from service order. |
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| status | array | Status codes to include. 0 open (draft), 1 pending approval, 2 approved, 3 denied, 4 partly paid (invoices/expenses) or stopped (blanket PO), 5 purchased (PO/PR) or paid (invoices/expenses), 6 awaiting confirmation, 7 on revise, 8 canceled, 9 pending receipt (invoices), 10 approval review, 11 closed. |
| per_page | integer | Results per page: 10, 20, 50, 100 or 200 (default 20). |
| approved_to | string | Only documents whose final approval is on or before this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss. |
| approved_from | string | Only documents whose final approval is on or after this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss. |
| modified_since | string |
List catalog items (products and services): name, SKU, unit, price, currency, supplier, group and custom fields. Filter by last-modified time. GET /items.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| per_page | integer | Results per page: 10, 20, 50, 100 or 200 (default 20). |
| modified_since | string | Only records created or changed since this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"per_page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Results per page: 10, 20, 50, 100 or 200 (default 20)."
},
"modified_since": {
"type": "string",
"description": "Only records created or changed since this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss."
}
}
}List payments recorded against invoices and expenses: pay date, sum paid, status (0 paid, 8 canceled), kind (0 payment, 1 credit, 2 supplier credit balance, 3-6 prepayments/credits) and the invoice or expense paid. GET /payments.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| per_page | integer | Results per page: 10, 20, 50, 100 or 200 (default 20). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"per_page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Results per page: 10, 20, 50, 100 or 200 (default 20)."
}
}
}List purchase orders (POs) with number (idn), supplier, location, totals, currency, required date, approval status, receiving status (0 not received, 1 partly, 2 received) and payment status (0 needs invoice, 1 not paid, 2 partly paid, 3 paid). Line items come only from precoro_get_purchase_order. Filter by status, last-modified time, approval date range, or 'waiting for my approval'. Page with next_page. GET /purchaseorders.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| type | array | PO types: 0 standard, 1 blanket, 2 from requisitions, 3 recurring, 4 blanket per total, 5 service, 6 recurring service, 7 service from requisitions. |
| status | array | Status codes to include. 0 open (draft), 1 pending approval, 2 approved, 3 denied, 4 partly paid (invoices/expenses) or stopped (blanket PO), 5 purchased (PO/PR) or paid (invoices/expenses), 6 awaiting confirmation, 7 on revise, 8 canceled, 9 pending receipt (invoices), 10 approval review, 11 closed. |
| per_page | integer | Results per page: 10, 20, 50, 100 or 200 (default 20). |
| approved_to | string | Only documents whose final approval is on or before this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss. |
| approved_from | string |
List purchase requisitions (purchase requests): requester, location, totals, required date, approval status. Line items come only from precoro_get_purchase_requisition. Filter by status, last-modified time, approval date range, or 'waiting for my approval'. GET /purchaserequisitions.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| status | array | Status codes to include. 0 open (draft), 1 pending approval, 2 approved, 3 denied, 4 partly paid (invoices/expenses) or stopped (blanket PO), 5 purchased (PO/PR) or paid (invoices/expenses), 6 awaiting confirmation, 7 on revise, 8 canceled, 9 pending receipt (invoices), 10 approval review, 11 closed. |
| per_page | integer | Results per page: 10, 20, 50, 100 or 200 (default 20). |
| approved_to | string | Only documents whose final approval is on or before this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss. |
| approved_from | string | Only documents whose final approval is on or after this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss. |
| modified_since | string | Only records created or changed since this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss. |
List goods receipts (what was delivered against purchase orders): purchase order, status and dates. Line items and received quantities come only from precoro_get_receipt. Filter by status, last-modified time, approval date range, or 'waiting for my approval'. GET /receipts.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| status | array | Status codes to include. 0 open (draft), 1 pending approval, 2 approved, 3 denied, 4 partly paid (invoices/expenses) or stopped (blanket PO), 5 purchased (PO/PR) or paid (invoices/expenses), 6 awaiting confirmation, 7 on revise, 8 canceled, 9 pending receipt (invoices), 10 approval review, 11 closed. |
| per_page | integer | Results per page: 10, 20, 50, 100 or 200 (default 20). |
| approved_to | string | Only documents whose final approval is on or before this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss. |
| approved_from | string | Only documents whose final approval is on or after this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss. |
| modified_since | string | Only records created or changed since this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss. |
| waiting_for_my_approval |
List a configuration table: users (name, email, roles), locations, legal_entities, taxes, payment_terms, units, warehouses, product_groups, document_custom_fields (departments, projects, classes, GL accounts), item_custom_fields or supplier_custom_fields. Use it to find the ids that purchase requisitions and suppliers need (location, legal entity, custom field). Bank details are never returned. GET /users, /locations, /legalentities, /taxes, /paymentterms, /units, /warehouses, /groups, /documentcustomfields, /itemcustomfields, /suppliercustomfields.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| table* | string | Which table to list. |
| per_page | integer | Results per page: 10, 20, 50, 100 or 200 (default 20). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"table"
],
"properties": {
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"table": {
"enum": [
"users",
"locations",
"legal_entities",
"taxes",
"payment_terms",
"units",
"warehouses",
"product_groups",
"document_custom_fields",
"item_custom_fields",
"supplier_custom_fields"
],
"type": "string",
"description": "Which table to list."
},
"per_page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Results per page: 10, 20, 50, 100 or 200 (default 20)."
}
}
}List suppliers: name, unique code, currencies, payment conditions, minimum order sum, contact and address fields, accounting ids, status. Bank details are never returned. Filter by last-modified time. GET /suppliers.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number, from 1 (default 1). Pass the previous reply's next_page. |
| per_page | integer | Results per page: 10, 20, 50, 100 or 200 (default 20). |
| modified_since | string | Only records created or changed since this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"per_page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Results per page: 10, 20, 50, 100 or 200 (default 20)."
},
"modified_since": {
"type": "string",
"description": "Only records created or changed since this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss."
}
}
}WRITE: reject (deny) a document that is waiting for the key user's approval. A comment is required; the creator is notified and sees it. POST /{document}/{idn}/reject.
| Argument | Type | Description |
|---|---|---|
| idn* | string | The document IDN: the company's own document number as shown in Precoro (not the internal id). |
| comment* | string | Why it is rejected (required, up to 800 characters). |
| document* | string | Document type: warehouserequests, purchaserequisitions, purchaseorders, receipts, invoices or expenses. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"document",
"idn",
"comment"
],
"properties": {
"idn": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "The document IDN: the company's own document number as shown in Precoro (not the internal id)."
},
"comment": {
"type": "string",
"maxLength": 800,
"minLength": 1,
"description": "Why it is rejected (required, up to 800 characters)."
},
"document": {
"enum": [
"warehouserequests",
"purchaserequisitions",
"purchaseorders",
"receipts",
"invoices",
"expenses"
],
"type": "string",
"description": "Document type: warehouserequests, purchaserequisitions, purchaseorders, receipts, invoices or expenses."
}
}
}WRITE: confirm a draft (open) document so it enters the approval flow (or is approved at once if no approval is needed). Approvers are notified. POST /{document}/{idn}/confirm.
| Argument | Type | Description |
|---|---|---|
| idn* | string | The document IDN: the company's own document number as shown in Precoro (not the internal id). |
| document* | string | Document type: warehouserequests, purchaserequisitions, purchaseorders, receipts, invoices or expenses. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"document",
"idn"
],
"properties": {
"idn": {
"type": "string",
"maxLength": 64,
"minLength": 1,
"description": "The document IDN: the company's own document number as shown in Precoro (not the internal id)."
},
"document": {
"enum": [
"warehouserequests",
"purchaserequisitions",
"purchaseorders",
"receipts",
"invoices",
"expenses"
],
"type": "string",
"description": "Document type: warehouserequests, purchaserequisitions, purchaseorders, receipts, invoices or expenses."
}
}
}| Delivery date, yyyy-mm-dd. |
| legal_entity_id | integer | Required when the company uses legal entities. |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"required_date",
"currency",
"location_id",
"items"
],
"properties": {
"note": {
"type": "string",
"maxLength": 4000,
"description": "Plain-text note (stored as HTML)."
},
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"quantity",
"price"
],
"properties": {
"name": {
"type": "string",
"maxLength": 500,
"minLength": 1,
"description": "Item name (required without item_id)."
},
"type": {
"type": "integer",
"maximum": 4,
"minimum": 0,
"description": "0 non-inventory (default), 1 inventory, 2 service, 3 shipping, 4 tax."
},
"price": {
"type": "number",
"maximum": 1000000000000,
"minimum": 0,
"description": "Unit price in the document currency."
},
"item_id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "A catalog item id; its name, SKU and type then come from the catalog.",
"exclusiveMinimum": 0
},
"quantity": {
"type": "number",
"maximum": 1000000000,
"exclusiveMinimum": 0
},
"supplier_id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "Supplier id for this line.",
"exclusiveMinimum": 0
}
}
},
"maxItems": 500,
"minItems": 1
},
"currency": {
"type": "string",
"pattern": "^[A-Za-z]{3}$"
},
"budget_id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "Budget line id.",
"exclusiveMinimum": 0
},
"location_id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "Location id (must be accessible to the key user).",
"exclusiveMinimum": 0
},
"custom_fields": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"value",
"type"
],
"properties": {
"id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "The document custom field id.",
"exclusiveMinimum": 0
},
"type": {
"anyOf": [
{
"type": "number",
"const": 1
},
{
"type": "number",
"const": 2
},
{
"type": "number",
"const": 3
}
],
"description": "1 dropdown, 2 text, 3 date."
},
"value": {
"type": "string",
"maxLength": 500,
"description": "Dropdown: the option id as text. Text: the text. Date: an ISO 8601 date."
}
}
},
"maxItems": 50,
"description": "Document custom field values (department, project, GL account...). Every required one must be given."
},
"required_date": {
"type": "string",
"description": "Delivery date, yyyy-mm-dd."
},
"legal_entity_id": {
"type": "integer",
"maximum": 9007199254740991,
"description": "Required when the company uses legal entities.",
"exclusiveMinimum": 0
}
}
}| postal_code |
| string |
| unique_code | string | Your own supplier code (unique). |
| legal_address | string |
| minimum_order_sum | number |
| delivery_period_days | integer |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"name"
],
"properties": {
"city": {
"type": "string",
"maxLength": 200
},
"name": {
"type": "string",
"maxLength": 255,
"minLength": 1
},
"note": {
"type": "string",
"maxLength": 2000
},
"phone": {
"type": "string",
"maxLength": 50
},
"state": {
"type": "string",
"maxLength": 200
},
"country": {
"type": "string",
"maxLength": 100,
"description": "Country code or name as Precoro shows it, e.g. US."
},
"contacts": {
"type": "array",
"items": {
"type": "object",
"required": [
"email"
],
"properties": {
"email": {
"type": "string",
"pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$",
"maxLength": 254
},
"phone": {
"type": "string",
"maxLength": 50
},
"first_name": {
"type": "string",
"maxLength": 200
}
}
},
"maxItems": 20,
"description": "Supplier contacts. Precoro can email purchase orders to them."
},
"conditions": {
"type": "string",
"maxLength": 2000,
"description": "Payment or delivery conditions text."
},
"currencies": {
"type": "array",
"items": {
"type": "string",
"pattern": "^[A-Za-z]{3}$"
},
"maxItems": 20,
"minItems": 1,
"description": "Currencies the supplier is paid in, e.g. [\"USD\"]."
},
"postal_code": {
"type": "string",
"maxLength": 50
},
"unique_code": {
"type": "string",
"maxLength": 100,
"description": "Your own supplier code (unique)."
},
"legal_address": {
"type": "string",
"maxLength": 500
},
"minimum_order_sum": {
"type": "number",
"maximum": 1000000000000,
"minimum": 0
},
"delivery_period_days": {
"type": "integer",
"maximum": 3650,
"minimum": 0
}
}
}| boolean |
| true = only documents waiting for approval by the user the API key belongs to (waitingForapprove=yes). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"status": {
"type": "array",
"items": {
"type": "integer",
"maximum": 11,
"minimum": 0
},
"maxItems": 12,
"description": "Status codes to include. 0 open (draft), 1 pending approval, 2 approved, 3 denied, 4 partly paid (invoices/expenses) or stopped (blanket PO), 5 purchased (PO/PR) or paid (invoices/expenses), 6 awaiting confirmation, 7 on revise, 8 canceled, 9 pending receipt (invoices), 10 approval review, 11 closed."
},
"per_page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Results per page: 10, 20, 50, 100 or 200 (default 20)."
},
"approved_to": {
"type": "string",
"description": "Only documents whose final approval is on or before this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss."
},
"approved_from": {
"type": "string",
"description": "Only documents whose final approval is on or after this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss."
},
"modified_since": {
"type": "string",
"description": "Only records created or changed since this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss."
},
"waiting_for_my_approval": {
"type": "boolean",
"description": "true = only documents waiting for approval by the user the API key belongs to (waitingForapprove=yes)."
}
}
}| Only records created or changed since this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss. |
| waiting_for_my_approval | boolean | true = only documents waiting for approval by the user the API key belongs to (waitingForapprove=yes). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"kind": {
"type": "array",
"items": {
"type": "integer",
"maximum": 4,
"minimum": 0
},
"maxItems": 5,
"description": "Invoice kinds: 0 standard, 1 credit note, 2 from order, 3 recurring, 4 from service order."
},
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"status": {
"type": "array",
"items": {
"type": "integer",
"maximum": 11,
"minimum": 0
},
"maxItems": 12,
"description": "Status codes to include. 0 open (draft), 1 pending approval, 2 approved, 3 denied, 4 partly paid (invoices/expenses) or stopped (blanket PO), 5 purchased (PO/PR) or paid (invoices/expenses), 6 awaiting confirmation, 7 on revise, 8 canceled, 9 pending receipt (invoices), 10 approval review, 11 closed."
},
"per_page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Results per page: 10, 20, 50, 100 or 200 (default 20)."
},
"approved_to": {
"type": "string",
"description": "Only documents whose final approval is on or before this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss."
},
"approved_from": {
"type": "string",
"description": "Only documents whose final approval is on or after this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss."
},
"modified_since": {
"type": "string",
"description": "Only records created or changed since this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss."
},
"waiting_for_my_approval": {
"type": "boolean",
"description": "true = only documents waiting for approval by the user the API key belongs to (waitingForapprove=yes)."
}
}
}| Only documents whose final approval is on or after this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss. |
| modified_since | string | Only records created or changed since this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss. |
| waiting_for_my_approval | boolean | true = only documents waiting for approval by the user the API key belongs to (waitingForapprove=yes). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"type": {
"type": "array",
"items": {
"type": "integer",
"maximum": 7,
"minimum": 0
},
"maxItems": 8,
"description": "PO types: 0 standard, 1 blanket, 2 from requisitions, 3 recurring, 4 blanket per total, 5 service, 6 recurring service, 7 service from requisitions."
},
"status": {
"type": "array",
"items": {
"type": "integer",
"maximum": 11,
"minimum": 0
},
"maxItems": 12,
"description": "Status codes to include. 0 open (draft), 1 pending approval, 2 approved, 3 denied, 4 partly paid (invoices/expenses) or stopped (blanket PO), 5 purchased (PO/PR) or paid (invoices/expenses), 6 awaiting confirmation, 7 on revise, 8 canceled, 9 pending receipt (invoices), 10 approval review, 11 closed."
},
"per_page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Results per page: 10, 20, 50, 100 or 200 (default 20)."
},
"approved_to": {
"type": "string",
"description": "Only documents whose final approval is on or before this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss."
},
"approved_from": {
"type": "string",
"description": "Only documents whose final approval is on or after this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss."
},
"modified_since": {
"type": "string",
"description": "Only records created or changed since this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss."
},
"waiting_for_my_approval": {
"type": "boolean",
"description": "true = only documents waiting for approval by the user the API key belongs to (waitingForapprove=yes)."
}
}
}| waiting_for_my_approval |
| boolean |
| true = only documents waiting for approval by the user the API key belongs to (waitingForapprove=yes). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"status": {
"type": "array",
"items": {
"type": "integer",
"maximum": 11,
"minimum": 0
},
"maxItems": 12,
"description": "Status codes to include. 0 open (draft), 1 pending approval, 2 approved, 3 denied, 4 partly paid (invoices/expenses) or stopped (blanket PO), 5 purchased (PO/PR) or paid (invoices/expenses), 6 awaiting confirmation, 7 on revise, 8 canceled, 9 pending receipt (invoices), 10 approval review, 11 closed."
},
"per_page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Results per page: 10, 20, 50, 100 or 200 (default 20)."
},
"approved_to": {
"type": "string",
"description": "Only documents whose final approval is on or before this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss."
},
"approved_from": {
"type": "string",
"description": "Only documents whose final approval is on or after this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss."
},
"modified_since": {
"type": "string",
"description": "Only records created or changed since this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss."
},
"waiting_for_my_approval": {
"type": "boolean",
"description": "true = only documents waiting for approval by the user the API key belongs to (waitingForapprove=yes)."
}
}
}| boolean |
| true = only documents waiting for approval by the user the API key belongs to (waitingForapprove=yes). |
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"page": {
"type": "integer",
"maximum": 100000,
"description": "Page number, from 1 (default 1). Pass the previous reply's next_page.",
"exclusiveMinimum": 0
},
"status": {
"type": "array",
"items": {
"type": "integer",
"maximum": 11,
"minimum": 0
},
"maxItems": 12,
"description": "Status codes to include. 0 open (draft), 1 pending approval, 2 approved, 3 denied, 4 partly paid (invoices/expenses) or stopped (blanket PO), 5 purchased (PO/PR) or paid (invoices/expenses), 6 awaiting confirmation, 7 on revise, 8 canceled, 9 pending receipt (invoices), 10 approval review, 11 closed."
},
"per_page": {
"type": "integer",
"maximum": 9007199254740991,
"minimum": -9007199254740991,
"description": "Results per page: 10, 20, 50, 100 or 200 (default 20)."
},
"approved_to": {
"type": "string",
"description": "Only documents whose final approval is on or before this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss."
},
"approved_from": {
"type": "string",
"description": "Only documents whose final approval is on or after this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss."
},
"modified_since": {
"type": "string",
"description": "Only records created or changed since this UTC time: yyyy-mm-dd or yyyy-mm-ddThh:mm:ss."
},
"waiting_for_my_approval": {
"type": "boolean",
"description": "true = only documents waiting for approval by the user the API key belongs to (waitingForapprove=yes)."
}
}
}