How a Payment Gateway Glitch Cost Me $500 in One Night
At 2 AM, my payment processor had an API outage. Shopify showed "payment successful" to customers. I never received the money. Here is exactly what happened.
This happened three months ago and I'm still bitter about it. Sharing so nobody else has to learn this the hard way.
I use a third-party payment gateway (not Shopify Payments — not available in my country). It had worked fine for two years. Then one night, their API went down for about 4 hours. Here's where it gets infuriating:
What Shopify Showed vs What Actually Happened
Customers placed orders. Shopify showed them a "Payment Successful" confirmation page. Order confirmation emails went out. The orders appeared in my admin dashboard with "Paid" status. Everything looked normal.
What actually happened: the payment gateway's API was returning timeout errors. Shopify's fallback behavior — and this is the critical part — was to show "success" to the customer anyway, mark the order as paid, and queue the payment capture for retry. The retry never succeeded.
Result: 12 orders marked "Paid" in Shopify. $0 actually captured by the payment gateway.
I shipped 4 of those orders before I noticed. The other 8 I caught in time and had to awkwardly email customers asking them to pay again. Two of them never responded. I lost the product, the shipping cost, and the payment processing fee.
The Fix (After the Fact)
I now do the following every single morning:
- Log into payment gateway dashboard — check yesterday's captured payments total
- Log into Shopify — check yesterday's orders total
- If the numbers don't match within 5%, investigate immediately
It's a 3-minute check. It would have caught the glitch within hours instead of days.
The Bigger Lesson
Payment gateways fail. APIs go down. Shopify's fallback behavior is not your friend — it prioritizes "don't block the sale" over "verify the money was captured." That's arguably the right call for conversion rate, but it means you need your own verification layer. Trust nothing. Reconcile daily.
Loading comments...