Guide

How to Test an Ecommerce Checkout Flow

Cart maths, coupons, tax, payment failures, refunds and the edge cases that quietly lose revenue.

Checkout is where bugs cost money It is also the screen teams test least, because setting up real payment scenarios is tedious. Here is the checklist Apex Automation Team works through on every store.

Cart maths

Change quantities up and down, remove the last item, add an out-of-stock item, add the same item twice, and confirm the totals every time. Check rounding on prices that do not divide cleanly, and check that the total in the cart, the total on the payment page and the total on the receipt all agree to the cent.

Coupons and discounts

Valid code, expired code, code for another product, code below the minimum spend, two codes at once, and a code applied then removed. A surprising number of stores let a removed coupon keep its discount, or let one coupon stack with an automatic sale price.

Tax and shipping

Tax and shipping usually depend on the address, so test a domestic address, an international one, and a region with a different rate. Change the address after choosing a shipping method and confirm the cost recalculates rather than keeping the old one.

Payment states

Success is the easy case. The ones that break stores are: card declined, insufficient funds, expired card, 3-D Secure challenge cancelled, the customer closing the tab during redirect, and the browser back button after payment. In each case the order should end in one clear state, and the customer should never be charged for an order that does not exist.

Double submission

Click pay twice quickly, refresh the confirmation page, and replay the return URL. None of these should create a second order or a second charge.

Subscriptions and refunds

For subscriptions, test the first charge, a renewal, a failed renewal, an upgrade mid-cycle and a cancellation. For refunds, check full and partial refunds, and confirm stock, invoices and the customer email all reflect the change.

After the order

Confirmation email sent, order visible in the admin, stock reduced, invoice correct, and the order pushed into your accounting or fulfilment system. A checkout that takes the money but does not reach fulfilment is still a failed checkout.

Sandbox or live

We run almost everything in the payment provider's sandbox. Where a scenario only exists in production, we agree a small number of controlled live transactions with you first and refund them immediately.

Apex Automation Team runs this checklist manually on the first cycle, then turns the stable parts into an automated regression suite that runs before every release. Send us your store for a free checkout test plan.

Quick checklist

  • Verify totals match in the cart, on payment and on the receipt
  • Test expired, stacked and below-minimum coupon codes
  • Recalculate tax and shipping after an address change
  • Test declined cards, cancelled 3-D Secure and abandoned redirects
  • Click pay twice and refresh the confirmation page
  • Check stock, invoice, email and fulfilment after the order
  • Test a failed subscription renewal and a partial refund

Frequently asked

Do you test with real payments?

Almost always in the payment provider's sandbox. Where a case only exists in production we agree a few controlled live transactions with you first and refund them immediately.

Which platforms do you cover?

Shopify, WooCommerce, Magento, custom carts, and anything using Stripe, PayPal, Adyen or a local gateway.