Fix Stripe authorization lifecycle timing
This commit is contained in:
1 parent
21038d68ca
commit
61ea299b0e
5 files changed
+157
-19
No files matched your search
@@ -219,10 +219,12 @@ card is actually charged for the first time here) before moving to
|
||||
no sellable offer, margin no longer holds, fraud check fails, or the
|
||||
supplier submission itself fails — lands the order in `bsc-exception`
|
||||
("Needs Review"), which is the review queue: just a filterable
|
||||
WooCommerce order status, not a separate table. Because nothing is
|
||||
charged until capture, most failures are a **void** (`AuditTrail::record_void()`,
|
||||
zero cost) rather than a refund — a refund only happens for the rarer
|
||||
case of something going wrong *after* a real capture.
|
||||
WooCommerce order status, not a separate table. Because nothing is charged
|
||||
until capture, most failures request a zero-cost authorization release rather
|
||||
than a refund. They remain in **Needs Review** until the Stripe order note or
|
||||
dashboard confirms release; only then should `AuditTrail::record_void()` be
|
||||
recorded. A refund is reserved for the rarer case of something going wrong
|
||||
*after* a real capture.
|
||||
|
||||
`wp bookstore force-offer-status <isbn13> <active|stale|discontinued>` (see
|
||||
`wp bookstore help`) forces a specific ISBN's synthetic offer into a
|
||||
|
||||
Reference in new issue
Block a user