Manual testing guide
15 Checkout Test Cases for Ecommerce Websites
Checkout failures directly affect revenue and customer trust. Coverage should verify calculations and payment outcomes while also protecting against duplicate submissions, stock changes and inconsistent order states.
Example requirement
A customer can review their cart, provide delivery details, apply a valid promotion and pay using a supported payment method. The system must create exactly one order only after a confirmed payment outcome.
Generate test cases for this example15
Test cases
6
Coverage types
11
High priority
CSV
Export format
15 example test cases
Filter the coverage, switch between card and table views, then copy or export the cases you need. Replace assumptions with the confirmed rules, environments and risks of your product.
Showing 15 of 15 cases
Complete checkout with a successful payment
Precondition
The cart contains available products.
Expected result
One paid order is created with the correct items, totals, delivery details and confirmation.
Steps
- 1.Open checkout
- 2.Enter valid delivery and payment information
- 3.Review the total
- 4.Confirm payment
Calculate totals, tax and delivery correctly
Precondition
Calculation rules and a qualifying cart are available.
Expected result
Every component and the final payable total are calculated and displayed correctly.
Steps
- 1.Review the cart subtotal
- 2.Proceed to checkout
- 3.Compare tax, delivery, discount and final total with the documented rules
Reject an invalid or expired promotion
Precondition
An invalid or expired promotion code is available.
Expected result
The discount is not applied and the customer receives a clear reason without losing cart contents.
Steps
- 1.Enter the promotion code
- 2.Apply it to the cart
Handle a declined payment without creating a paid order
Precondition
A payment method that produces a decline is available.
Expected result
The failure is explained, no paid order is created and the customer can retry safely.
Steps
- 1.Complete checkout details
- 2.Submit the declining payment
- 3.Review the order state
Prevent duplicate orders from repeated confirmation
Precondition
The checkout is ready for final confirmation.
Expected result
At most one successful charge and one corresponding order are created.
Steps
- 1.Activate the final payment action repeatedly
- 2.Review payment and order records
Handle stock becoming unavailable during checkout
Precondition
An item can become unavailable before confirmation.
Expected result
The customer is informed before payment is finalised and the order total remains consistent.
Steps
- 1.Begin checkout with the item available
- 2.Make the item unavailable
- 3.Attempt to confirm the order
Complete checkout using keyboard navigation
Precondition
Checkout is open with keyboard input available.
Expected result
Focus order is logical, validation is perceivable and the flow can be completed without a pointer.
Steps
- 1.Navigate every field and control using the keyboard
- 2.Review errors and complete payment
Complete checkout as a guest
Precondition
Guest checkout is enabled and the cart has an available item.
Expected result
One order is created and confirmation is available without forcing account creation.
Steps
- 1.Proceed without signing in
- 2.Enter valid delivery and payment details
- 3.Confirm the order
Validate required delivery fields
Precondition
The delivery form is open.
Expected result
Progress is blocked and every missing field receives clear guidance.
Steps
- 1.Leave required delivery fields empty
- 2.Continue to payment
Update totals when cart quantity changes
Precondition
The cart contains a product with adjustable quantity.
Expected result
All displayed amounts update consistently using the documented calculation rules.
Steps
- 1.Increase and decrease the quantity
- 2.Review subtotal, discounts, tax and final total
Remove an applied promotion
Precondition
A valid promotion is applied.
Expected result
The discount is removed once and every dependent total is recalculated.
Steps
- 1.Remove the promotion
- 2.Review the updated total
- 3.Continue checkout
Handle an expired cart or price change
Precondition
A cart can expire or a product price can change.
Expected result
The user reviews the authoritative price and availability before payment is finalised.
Steps
- 1.Leave checkout open until the state changes
- 2.Attempt to confirm the order
Recover from payment cancellation
Precondition
The payment method supports cancellation.
Expected result
No paid order is created and the cart can be reviewed or retried safely.
Steps
- 1.Start payment
- 2.Cancel at the provider
- 3.Return to checkout
Refresh after successful payment
Precondition
A payment completed successfully.
Expected result
No additional charge or order is created and the confirmed state remains consistent.
Steps
- 1.Refresh the confirmation page
- 2.Use browser Back and Forward
- 3.Review payment and order records
Display a usable checkout on a mobile viewport
Precondition
A supported mobile viewport is available.
Expected result
Fields, totals, errors and the final action remain readable and operable without horizontal scrolling.
Steps
- 1.Open checkout on the mobile viewport
- 2.Enter delivery and payment details
- 3.Review and confirm
Coverage checklist
- Reconcile the order, payment and inventory states after every failure path.
- Test rounding with different quantities, taxes, discounts and currencies.
- Verify idempotency when the final action is repeated or the response is delayed.
- Cover payment cancellation, timeout, decline and unknown-result states.
- Confirm that confidential payment data is never written to logs or application storage.
Common defects
- • The displayed total differs from the charged amount.
- • Double-clicking creates duplicate orders or charges.
- • A declined payment marks the order as paid.
- • Cart contents disappear after a correctable validation error.
- • A price or stock change is not shown before confirmation.
Suggested test data
- • Guest and registered customers
- • Valid, expired and ineligible promotions
- • Addresses with different tax and delivery rules
- • Successful, declined, cancelled and timed-out payment methods
- • Products at low stock and changing prices
Automation notes
- • Stub provider outcomes for deterministic success, decline, cancellation and timeout coverage.
- • Assert the UI, order record and payment record instead of checking the confirmation message alone.
- • Use idempotency-aware cleanup so retries do not hide duplicate-order defects.
Frequently asked questions
What should ecommerce checkout testing include?+
Cover the cart, delivery details, totals, taxes, promotions, payment outcomes, inventory changes, duplicate prevention and confirmation.
How do you test duplicate payments?+
Repeat or retry the confirmation action and verify that idempotency controls allow no more than one successful charge and one matching order.
Which checkout scenarios are highest priority?+
Successful purchase, total accuracy, declined or uncertain payment outcomes, duplicate prevention and stock changes usually carry the highest business risk.
Related test case examples
Shopping cart test cases covering add, remove, quantities, prices, stock, promotions, persistence, accessibility and concurrent updates.
Payment testingPayment test cases covering successful charges, declines, timeouts, retries, duplicate prevention, currency and reconciliation.
Mobile app testingMobile application test cases covering installation, permissions, connectivity, interruptions, orientation, accessibility and supported devices.
API testingPractical REST API test cases covering successful responses, validation, authentication, authorization, status codes and response contracts.
Generate cases for your own requirement
Paste your real user story, choose the coverage categories and receive structured manual test cases you can review and export.
Open the free generator