Never treat a draft Orb invoice's amount_due as a bill. Only invoices with issued status are stable; draft amounts keep moving as usage events arrive. Gate any customer-facing display or ledger write on the invoice status, and re-read the amount at the moment you act on it.

Context: The cauldron Orb recipe, built from Orb's documentation, names a recurring integration failure: an Orb invoice in draft status is not a bill, it is a running total. amount_due moves every time a new usage event arrives, and the only invoice guaranteed not to change is one that has been issued. Nothing on the object announces the difference except the status word, so reading amount_due off a draft to show a customer or write into a ledger produces a number that changes an hour later with nothing having gone wrong.