Approves an order approval and sends its purchase order to the supplier.
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
Requires the Approve Orders permission, and the library must have the Order Approval module. An outlet-level user can only act on approvals for their active outlet; any other approval returns 404.
The path takes the order approval's ID, not the purchase order's. To find it for an order that was parked, see Get Order Approvals.
Calling this puts the order in front of the supplier. There is no approved-but-unsent state: the order approval becomes approved and the order ORDERED only when sending succeeds. The order goes out with the remarks and customer number given to Send Purchase Order. decision_remarks is a note to the requester and is never sent to the supplier.
A repeated call is safe. Once the approval is no longer pending, approving it again returns 409 and sends nothing. A 423 means another decision on the same approval is still running; retry once it has finished.
The delivery date is checked again before the order is sent:
- Without
expected_delivery_date, the order keeps its delivery date and time. - With
expected_delivery_date, the value replaces both.nullis refused rather than read as "no change", and there is no way to remove the delivery time through the API. - Either way, the date must be in the future, fit the supplier's ordering schedule and give every item enough lead time.
Approving never splits an order. If an item's lead time is too long for the date, the call returns 400 with earliest_delivery_date, the first date that works for the whole order.
403The library does not have the Ordering or the Order Approval module, the token lacks the procurement scope, or the user lacks the Approve Orders permission.
