iotoms Docs

Approve a sales order price override

POST
/api/v1/sales/orders/{id}/approve-override

Second-person sign-off on a price or discount change flagged on the order, with an optional note recorded in the revision history. Requires a separate approval permission and fails if no override is pending.

How to use it

  1. Find orders waiting for sign-off in List sales orders and check overridePending is true.
  2. Call this as a user who holds the sales-order approval permission (separate from the permission to edit orders), optionally with a note. The backend checks the permission, not that the approver differs from the editor.
  3. overridePending clears, the approver and time are recorded, a revision is added, and the order can be invoiced once confirmed.

Authorization

BearerAuth
headerAuthorizationBearer <JWT>

Path Parameters

id*string

ID of the record (UUID).

Formatuuid

Header Parameters

X-TenantID*string

Your merchant's tenant code — the value typed in the Domain field on the iotoms login screen. See Concepts.

Request Body

application/json
  1. body
note?|

Optional note recorded in the revision history. Defaults to "Override approved".

Response Body

OK

*/*
  1. response
status*string

Outcome of the call: SUCCESS when the request was handled, ERROR otherwise.

message*string

Short human-readable message describing the outcome, e.g. which record was fetched or saved.

data?

The sales order.

Example Request
curl -X POST 'https://beta.iotoms.com/api/v1/sales/orders/497f6eca-6276-4993-bfeb-53cbbbba6f08/approve-override' \  -H 'X-TenantID: your-tenant-code' \  -H 'Content-Type: application/json' \  -d '{}'
Example Response
{  "status": "string",  "message": "string",  "data": {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "orderNumber": "string",    "customerStoreId": 0,    "customerStoreName": "string",    "customerNumber": "string",    "customerNameSnapshot": "string",    "storeId": 0,    "status": "DRAFT",    "effectiveStatus": "DRAFT",    "orderDate": "2019-08-24",    "requestedDeliveryDate": "2019-08-24",    "bookedBy": "string",    "orderSource": "FIELD_APP",    "currency": "string",    "routeId": 0,    "subtotal": 0,    "discountTotal": 0,    "taxTotal": 0,    "grandTotal": 0,    "notes": "string",    "cancelReason": "string",    "overridePending": true,    "overrideApprovedBy": "string",    "overrideApprovedAt": "2019-08-24T14:15:22Z",    "invoiceId": "4f163819-178d-470c-a246-d6768476a6ec",    "invoiceNumber": "string",    "invoiceBlockedReason": "string",    "submittedAt": "2019-08-24T14:15:22Z",    "confirmedAt": "2019-08-24T14:15:22Z",    "cancelledAt": "2019-08-24T14:15:22Z",    "createdBy": "string",    "createdAt": "2019-08-24T14:15:22Z",    "updatedAt": "2019-08-24T14:15:22Z",    "lines": [      {        "id": 0,        "itemId": "string",        "description": "string",        "uomCode": "string",        "uomFactor": 0,        "quantity": 0,        "baseQuantity": 0,        "unitPrice": 0,        "discountAmount": 0,        "taxRate1": 0,        "taxRate2": 0,        "taxAmount": 0,        "lineTotal": 0,        "lineNumber": 0      }    ],    "revisions": [      {        "revisionNo": 0,        "changedBy": "string",        "changedAt": "2019-08-24T14:15:22Z",        "reason": "string",        "changes": "string"      }    ]  }}