A retry keeps the original payment key. Source: checkout design discussion.
Inspect grouped issues and their recent activity.
Follow production issues back to the code.
storefront
Storefront overview
Storefront coordinates the order lifecycle across checkout, inventory, and payments. Each module owns its part of the transaction.
Relevant source files
shop/checkout.py
↓
How checkout works
Checkout reserves inventory, creates a charge with the order’s payment key, and records the order. The payment key stays the same when an attempt is retried.
Sources:
Responsibilities
Module
Owns
Checkout
Order coordination
Inventory
Availability and reservations
Payments
Charges and payment keys
Follow source locations and affected callers.
Carry the investigation into a conversation with Estelle.