01must proveConfirmed | Commerce saves the order before requesting its issued Accounting invoice, using a stable billing key for retries, with a pro forma for pay-now sales and a real invoice for terms sales. no proof recorded yet | lifecycle | service | test |
02must proveConfirmed | An invoice that remains draft after an issue request blocks payment on the order. no proof recorded yet | validation | service | test |
03must proveConfirmed | Unanswered billing remains pending for a same-key sweep retry, and an order unbilled for more than an hour raises an operational exception without charging a payment. no proof recorded yet | lifecycle | service | test |
04must proveConfirmed | Unbuildable or configuration-refused invoices block billing and raise an exception, with the sweep able to retry after staff correct the configuration. no proof recorded yet | validation | service | test |
05must proveConfirmed | Invoice discount explanations list promotion display names in application order followed by any order-discount share, omit internal codes and mark truncated long explanations. no proof recorded yet | calculation | service | test |
06must proveConfirmed | An order discount is allocated proportionally across item prices without negative lines, with tax on each net amount so a later line credit uses that line’s discounted value and tax. ✓ A thirty-dollar discount over values of one hundred, fifty and twenty-five dollars allocates seventeen dollars fourteen cents, eight dollars fifty-seven cents and four dollars twenty-nine cents.✗ Billing does not represent the discount as a negative item line. no proof recorded yet | calculation | service | test |
07must proveConfirmed | Application and product-price adjustments become the invoiced unit price, rounded half away from zero and explained by a rounding adjustment when needed, preserving quantity, price and discount arithmetic. no proof recorded yet | calculation | service | test |
08must proveConfirmed | Billing requires invoice and order totals to reconcile to the minor unit; a changed Accounting tax amount updates the order once and refuses the first payment attempt with both amounts. no proof recorded yet | invariant | service | test |
09must proveConfirmed | Billing accepts terms orders, orders requiring no payment and zero-total pay-now orders; other pay-now and deposit orders still require payment. no proof recorded yet | lifecycle | service | test |
10must proveConfirmed | Console orders accepted on terms can open the default paid-in-full delivery condition before payment, while an explicit pay-first product policy and portal terms orders continue to wait. no proof recorded yet | policy | service | test |
11must proveConfirmed | Billing attaches each Accounting invoice-line reference to its order line for later money reads. no proof recorded yet | invariant | service, database | test |
12must proveConfirmed | The order fee becomes an undiscounted invoice line on its configured fee product using the pricing description. no proof recorded yet | calculation | service | test |