Skip to main content
← All posts

Approved, Then Changed: Close Out Cancelled Purchases and Tie Vendor Credits Back to the Slack Approval

October 20, 2026 · BuyFlow Team

An ops lead asks in Slack for 40 monitors at $120 each. The manager approves $4,800 in the thread. The vendor ships 32, says the other 8 are backordered with no date, and the team decides to cancel them. Three weeks later two units arrive damaged and go back for a credit.

The Slack approval still says $4,800. Your budget view still counts the full amount as committed. Your month-end list of open approvals still shows it as approved-but-not-billed. And when the vendor credit shows up, nobody can say which purchase it belongs to.

An approval is a commitment, and it stays open until somebody closes it. Most teams are careful about saying yes and careless about what happens after. This post covers how to record a change or cancellation on the Slack approval itself, and how to book the matching close-out, vendor credit, or refund in QuickBooks Online or Xero so the two records agree.

Four ways an approved purchase changes

They need different handling, so name which one you're in:

  1. Cancelled before anything was ordered. Nothing to book. Close the approval and release the budget.
  2. Cancelled or short-shipped after ordering. There may be an open purchase order with lines that will never be received.
  3. Returned or reduced after the bill arrived. The vendor owes you a credit against the bill.
  4. Refunded after you paid. Money comes back by check, bank transfer, or card refund.

Record the change in the same Slack thread

Don't delete the request or start a new one. Post the change as a reply in the original approval thread, so the history reads top to bottom: request, approval, change, close-out.

Each change note should include:

  • What changed: cancelled in full, partly fulfilled, returned, or refunded.
  • New amount: what you actually expect to spend now ($3,840 for 32 monitors, in the example above).
  • Remaining commitment: what's still open, if anything. Zero means the approval can close.
  • Why, and who decided: "Vendor backordered 8 units with no date. Cancelled by the requester, confirmed with the approver."
  • What's expected back: a credit note, a refund, or nothing.

Then set a status on the request: Approved, Partly fulfilled, Credit pending, Cancelled, or Closed. That status is what your committed-spend and accruals reports should read. A cancelled approval that still says Approved will keep showing up in both.

If the new amount is higher than the original approval, that isn't a change note. It's a new approval, and it goes back to the approver.

QuickBooks Online: close the PO lines, then credit the bill

Cancelled lines on a purchase order. QuickBooks Online won't accept negative quantities on purchase order lines, so a "negative PO" to net out the cancelled items won't save. The fix is to close the cancelled line on the original order, which keeps it visible but drops it out of open purchase order reporting (QBO Support). For a partial delivery, link the received lines to the bill and manually close the line you won't receive. You can also close the whole order by changing its status from Open to Closed (Dummies).

Purchase orders are non-posting transactions, so closing one doesn't change your financial reports (QuickBooks Community). That's exactly why the open-PO list and the Slack approval need closing on purpose. Nothing in the ledger will force it.

Closing a PO line also doesn't reverse a bill already entered for those items. Fix that on the bill itself (QBO Support).

Returned goods on an unpaid bill. Create a vendor credit for that vendor using the same category or item as the original bill, then apply it through Pay bills, where QuickBooks shows it under Credit Applied (Intuit). If the item is an inventory item, QuickBooks puts it back into inventory, so damaged returns may need an inventory adjustment (Intuit).

Refund check on a bill you already paid. Intuit's method has three steps. Create the vendor credit. Record the refund as a bank deposit with the vendor in Received From and Accounts Payable as the account. Then link the deposit to the credit in Pay bills so the total payment is $0.00 (Intuit). If the refund goes back to a company card, it can be recorded as a credit card credit against Accounts Payable and applied to the original bill (QBO Support).

Xero: closing a PO is not the same as cancelling it

Cancelled purchase orders. On the Approved tab, Xero's Mark as billed closes an order. It doesn't create a bill and it doesn't update tracked inventory. You can reverse it with Unmark as billed (Datamolino). The catch is that "billed" is the only closed status. Users on Xero's own product ideas forum have asked for a void or cancel option that keeps the record, because deleting an order erases it and marking it billed when it wasn't is misleading. One commenter puts it plainly: marking an unfulfilled order as billed "is a lie" (Xero Product Ideas).

Until that changes, the reason a Xero PO was closed has to live somewhere else. The Slack thread is a good place for it: who cancelled it, why, and when, written next to the original approval.

Supplier credit notes. You can create a credit note straight from the original bill with Add Credit Note, which copies the bill's details so you only edit quantities, prices, or tax (CALTRiX). Then allocate it. A few rules from Xero matter here (Xero Central):

  • Credit can only be applied to bills that are awaiting payment, not to draft or paid bills.
  • One credit can be split across several bills, up to the credit's total.
  • You can't apply a credit to a bill in a locked period.

Bill already paid. Refund the credit note instead of allocating it. Xero records a payment against the credit note, which you then reconcile to the bank statement line (Xero Central). If the credit isn't tied to one bill, you can reconcile an unpaid credit note against the supplier's balance without allocating it to a specific bill (Xero Central). That option is convenient, but it's also how a credit loses its link to the purchase that caused it. If you use it, note the approval reference.

Card refunds drift too

If the purchase went on a card, the refund comes back on the card, and how cleanly it links depends on the tool. Ramp says refunds on its cards are recorded as related transactions and the original receipt stays attached to the original charge (Ramp). Brex says a refund can take up to 30 business days to show as a credit. It tries to attach the refund to the original expense, but most of the time the refund appears as a separate expense, defaulting to whatever limit the card had at the time (Brex).

Either way, the card tool links the refund to the charge, not to the decision. The approval is where you said what the money was for, so that's where the refund should be noted too.

One reference ties it together

Everything above is easier if each Slack approval has a reference and you reuse it everywhere:

  • On the purchase order, if you raise one.
  • In the bill's memo or reference.
  • In the vendor credit's memo in QuickBooks, or in the credit note's reference in Xero.
  • On the refund deposit or bank reconciliation line.

When a credit shows up two months later, finance searches the reference and lands on the Slack thread that explains it.

Sweep open approvals before close

Once a month, before you book accruals, pull every approval that's still open and older than a few weeks. For each one, ask the requester in the thread: is this still coming, partly done, or dead? Then close it, reduce it, or leave it open with a note.

That one step stops cancelled purchases from being accrued as if they were still on the way. It also releases budget your committed-spend view was still holding for things that will never arrive.

Checklist

  • Post changes and cancellations as replies in the original Slack approval thread. Don't delete the request.
  • Record the new amount, remaining commitment, reason, who decided, and what's expected back.
  • Give requests a status that covers what happens after approval: Partly fulfilled, Credit pending, Cancelled, Closed.
  • Send any increase over the approved amount back for re-approval.
  • In QuickBooks Online, close the cancelled PO lines instead of creating negative POs. Use vendor credits for returns, and link refund deposits back to the credit.
  • In Xero, keep the cancellation reason outside the PO, because Mark as billed is the only way to close one. Allocate credit notes to awaiting-payment bills, or refund and reconcile them if the bill is paid.
  • Put the approval reference on every PO, bill, credit, and refund.
  • Sweep stale open approvals every month before close.