Purchase orders: create, cancel, close — and what cannot be undone
With write tools in Beta, an assistant can now open and cancel purchase orders from the conversation. Here is what that looks like, what is irreversible, and why a purchase order's amount is not the budget you approved.

The problem
Purchase orders pile up. Some are opened and never invoiced, some outlive their period, some were created by mistake and nobody cancelled them. Each one inflates commitments until someone goes through the list.
Until now the Spendesk MCP could only read purchase orders. With write tools in Beta, it can also create, cancel and close them — which makes it worth being precise about what each action does.
The exchanges below are reconstructed from tests run on a Spendesk demo account on 5 October 2026. The wording is rewritten for readability; the figures and outcomes are the ones the tools returned.
First, see what is open
13 open purchase orders, EUR 96338.00 committed. None has been invoiced.
🟠 Invoice late: 1
⚪ Running, not yet invoiced: 12 — EUR 95780.00
A purchase order stays open after its end date, until someone closes or cancels it.
Suggested next step for PO-4: chase the supplier for the invoice, or cancel it if the engagement was dropped. Shall I show its details?
The link between a purchase order and its invoices is recorded, so the assistant reads it directly instead of guessing from supplier names and amounts.
Create a purchase order
Before I create it, please confirm:
| Supplier | Amount | Cost center | Period |
|---|---|---|---|
| OKKO (existing supplier) | EUR 120.00 gross, EUR 100.00 net (assuming 20% VAT) | CSM | 2026-10-05 to 2026-10-31 |
Two details are easy to miss. The assistant looks the supplier up first, because a name that differs by more than case or accents — a trailing full stop is enough — would create a second supplier record. And it does not retry on an unclear result: a second call would create a second purchase order.
Cancel one
PO-20 — OKKO — EUR 120.00. It is open, with no invoice attached, so it should be cancellable (Spendesk will also refuse if an expense is associated with it).
Asked to cancel it a second time, the tool answers that the purchase order is not open. That is an answer, not a failure to retry.
What cannot be undone, and one thing that cannot be seen
| Action | Possible when | Can it be undone? |
|---|---|---|
| Create | Any time | Not deleted; only cancelled, while open with no invoice |
| Cancel | Open, no invoice attached, no associated expense | No |
| Close | Open, at least one invoice, all invoices paid | No — and the amount is rewritten |
A purchase order's amount is not the budget you approved. It is the current committed amount. When a purchase order is closed, and in some configurations when an invoice exceeds it, Spendesk rewrites that amount to what was billed. A purchase order approved at 10,000 and invoiced 14,000 can show 14,000 on both sides.
So the assistant cannot tell you which purchase orders went over budget. It can flag one where the billed amount is higher than the committed amount, but the absence of such a case proves nothing.
What to know
- Role required. The Spendesk MCP can only be used by a Controller or an Account Owner of the company concerned. With any other role, these requests do not work.
- Beta, off by default. An Admin or Account Owner enables "Manage purchase orders" on the connection, then each user reconnects and ticks it.
- Keep a human confirmation on each of these actions; in Claude, "Allow once".
- Requests for purchase orders are not readable: the assistant reads purchase orders themselves, and card requests.
- Closing was not tested for this article. It needs a purchase order with paid invoices and is irreversible; it is described from the tool's documentation.
Key takeaways
- An assistant can now create, cancel and close purchase orders, with write tools in Beta
- A purchase order created this way is open at once, and can never be deleted
- Cancelling and closing cannot be undone; closing also rewrites the amount
- The committed amount is not the originally approved budget: overruns cannot be detected reliably
- The skill Create, cancel or close a purchase order runs the checks and confirmations in order
Related skills
Find invoices with no purchase order and purchase orders still waiting for an invoice, using the real link between them.
Identify open purchase orders with no recent invoice activity, expired POs, and the budget commitment they are blocking.
Create, cancel and close purchase orders from the conversation, with pre-checks and irreversible actions flagged.