921
Official
Sales Invoice Sequence Violation
saveInvoice was called before saveSales. The VSCU requires a strict two-step sequence.
Likely Causes
- Developer followed OSCU documentation which uses a single combined call
- Architecture migrated from OSCU without updating the sales flow
- saveInvoice called in retry logic without first re-sending saveSales
Fix
VSCU requires two sequential calls in this exact order: (1) POST /trnsSales/saveSales with transaction metadata, then (2) POST /trnsSales/saveInvoice with invoice detail and receipt signature. OSCU combines both into a single POST /saveTrnsSalesOsdc call. These paths cannot be mixed.
Gotcha
Every developer building from OSCU documentation or an OSCU-first architecture hits this. There is no mention of this difference in any introductory guide.
Related Errors