Order.

API
Schema

Order

Order. Created with POST /orders (body: `OrderCreate`), which drives the very same pricing + cart pipeline as the dashboard's manager checkout. Once placed, an order is IMMUTABLE: PUT accepts a small whitelist ({void, internal_notes}) on `/orders/{id}`. No DELETE. `items` is a FLAT vector of rows, one per (producto, opcion). Financial fields (`subtotal`, `discount`, `surcharge`, `tax`, `total`) are flat at the top level, all ABSOLUTE. Invariant: total = subtotal − discount + surcharge + tax `discount` rolls up ALL reductions (order-level % discount + amount- promo). `surcharge` rolls up ALL additions (payment-method surcharge + shipping). `tax` is the IVA amount the merchant adds on top when the negocio is configured to display prices NET (tax-exclusive); zero when the negocio's stored prices already include tax. TAX CONVENTION (read carefully): - If the negocio displays prices NET (i.e. `:negocio/sumar-iva` is true internally), line `:item/precio` storage is pre-tax. The API resolves `tax = (subtotal − discount + surcharge) × iva%` and adds it to `total`. Consumers see the FINAL amount due in `total`. - If the negocio displays prices GROSS (default), line storage already includes tax. `tax` is 0 and `total` carries the gross number. Either way the customer-pays number is `total`. Consumers integrating for invoicing (AFIP / SAT / DIAN) still need to apply their own per-country fiscal breakdown — `:cliente/condicion-iva` (responsable- inscripto / monotributo / consumidor-final / exento) is metadata for that downstream flow and does NOT alter `total`.

Ejemplo

json
{
  "id": "5",
  "created_at": "2026-05-15T12:00:00Z",
  "customer_id": "8801",
  "status": "...",
  "voided": false,
  "subtotal": 13500.0,
  "discount": 675.0,
  "surcharge": 0.0,
  "tax": 2691.25,
  "total": 15516.25,
  "items": [
    { "product_id": "9201", "name": "Remera", "option_id": "555", "option_name": "Azul / M", "sku": "REM-001-AZ-M", "quantity": 3 }
  ]
}

Campo

CampoTipoFlagsNotas
idstring
sólo lectura
created_atstring
sólo lectura
ISO-8601 UTC.
customer_idstring
sólo lectura
statusstring
sólo lectura
erp_idstring
sólo lectura
observacionesstring
sólo lectura
Customer-facing notes.
internal_notesstring
Internal notes. Settable via PUT.
voidedboolean
Settable via PUT only (the "void" key).
subtotalnumber
sólo lectura
Σ of frozen line :item/precio.
discountnumber
sólo lectura
Absolute amount deducted from subtotal (order-level % discount + amount-promo combined).
surchargenumber
sólo lectura
Absolute amount added on top of (subtotal − discount). Bundles payment-method surcharge + shipping; internal percent-vs-amount knobs are pre-resolved.
taxnumber
sólo lectura
IVA added on top when the negocio displays prices pre-tax; 0 when prices already include tax. Either way `total` already incorporates it.
totalnumber
sólo lectura
Final amount due. Always = max(0, subtotal − discount + surcharge) + tax.
itemsOrderItemRead[]
sólo lectura
shipping_addressAddress
sólo lectura
Currently never populated.