Order Lifecycle
This page documents the complete lifecycle of a Scottsdale Mint WooCommerce order โ from cart through to delivery and beyond.
Order Lifecycle Overviewโ
Customer โ Cart โ Checkout โ [Payment Processing] โ Order Status Changes โ Fulfillment โ Shipping โ Completion
Stage 1: Cart and Checkoutโ
- Customer adds products to cart
- Cart page:
- WooCommerce calculates item prices (updated every 60 seconds from NFusion pricing)
- Applied coupon codes validated
- Minimum order amounts checked (if configured)
- Checkout page:
- Customer enters shipping address
- AvaTax calculates tax in real time (AJAX call on address change)
- Customer selects payment method
- Kount collects browser fingerprint data for fraud scoring
- Customer submits order
Stage 2: Fraud Check (Pre-Auth)โ
Before any payment is processed, Kount evaluates the order:
| Kount Decision | Action |
|---|---|
APPROVE | Proceed to payment |
DECLINE | Order rejected; customer sees error; no payment attempted |
REVIEW | Payment proceeds but order flagged for manual review |
Stage 3: Paymentโ
Depending on the selected payment method, the order enters one of several paths:
| Payment Method | Initial Status | Notes |
|---|---|---|
| Card (PPCP) | wc-processing | Immediate authorization + capture |
| ACH | wc-pending-ach | Debit submitted; 3โ5 day settlement |
| Bank Wire | wc-partially-paid | 5% deposit collected; wire awaited |
| Crypto | wc-pending-crypto | Address shown; awaiting blockchain confirm |
Stage 4: Payment Confirmationโ
| Payment Method | Confirmation Event | Status Change |
|---|---|---|
| Card | Immediate capture | โ (already wc-processing) |
| ACH | iTransact settlement webhook | wc-pending-ach โ wc-processing |
| Bank Wire | Admin manually confirms | wc-partially-paid โ wc-processing |
| Crypto | Blockchain confirmations received | wc-pending-crypto โ wc-processing |
Stage 5: KYC (If Required)โ
High-value orders from unverified customers may require KYC identity verification:
- Order status set to
wc-kyc-pending - Customer receives email with secure document upload link
- Compliance team reviews documents
- If approved: order โ
wc-processing - If rejected: order โ
wc-cancelled, payment refunded
Stage 6: Fulfillment (wc-processing)โ
Once an order is in wc-processing:
- NFusion Export โ Order details synced to NFusion for inventory/fulfillment reporting
- ShipStation Export โ Order pushed to ShipStation for packing slip and label generation
- Inventory Deduction โ WooCommerce inventory decremented (if inventory tracking enabled)
The order may also transition to wc-awaiting-shipment as an intermediate status while waiting for physical fulfillment.
Stage 7: Shippingโ
- Warehouse team packs the order
- FedEx label generated via ShipStation
- Package shipped via FedEx (overnight or 2nd day, signature required for precious metals)
- ShipStation sends a webhook to WooCommerce with tracking number
- WooCommerce order updated with tracking number (by
suma-woo-order-trackingplugin) - Customer receives shipping confirmation email with tracking link
Stage 8: Delivery โ Completionโ
- Customer receives package
- Order automatically completes after delivery (configurable, or admin manual):
- Status:
wc-completed
- Status:
- Yotpo review request email triggered after completion (configurable delay)
Cancellationsโ
Orders can be cancelled:
| Scenario | Who Cancels | Refund |
|---|---|---|
| Customer cancels (before fulfillment) | Customer or Admin | Automatic via gateway |
| Kount fraud decline | System | No payment taken |
| ACH return (NSF, invalid acct) | System (webhook) | Status: wc-payment-declined |
| Crypto window expired | System | No payment taken |
| KYC rejected | Admin | Manual refund if deposit taken |
Refundsโ
| Payment Method | Refund Method |
|---|---|
| Card (PPCP) | Automatic via WooCommerce refund โ PayPal API |
| ACH | Manual โ via iTransact portal |
| Bank Wire | Manual โ bank-to-bank or check |
| Crypto | Manual โ admin sends crypto or equivalent USD |
Order-Related Emailsโ
| Trigger | Plugin/Class | |
|---|---|---|
| Order Confirmation | Order received | \Suma\Emails\OrderConfirmation |
| Wire Instructions | Bank wire order | \Suma\Emails\WireInstructions |
| ACH Submitted | ACH order | \Suma\Emails\AchPending |
| KYC Required | KYC trigger | \Suma\Emails\KycRequired |
| Shipping Confirmation | Tracking number added | \Suma\Emails\ShippingConfirmation |
| Order Complete | Order completed | WooCommerce default + Yotpo trigger |
| Payment Declined | Payment fail | \Suma\Emails\PaymentDeclined |
All emails route through Mailgun via WP Mail SMTP.