5 min read
Stripe Delayed Payments: Checkout Completion Is Not Always Confirmed Revenue
Count the customer action when it happens and the payment when its outcome is established.
· Grometrics Team
The short version
A buyer reaches the end of Stripe Checkout, but the selected payment method does not confirm immediately. Your funnel now contains a completed checkout action without a final paid outcome. Grometrics frames revenue around confirmed payment evidence, so those two states need different meanings. Counting the checkout as money received can overstate a campaign today and create a confusing reversal when the payment later fails.
- Keep checkout completion separate from successful payment.
- Preserve the original acquisition context while the payment outcome develops.
- Recognize later success or failure without creating another sale from repeated notifications.
Define the states in plain English
Checkout started means a person began the payment journey. Checkout completed means they finished the relevant checkout interaction. Payment pending means the final outcome is not yet established. Payment successful and payment failed are later business facts where the chosen method requires a delay. Use these definitions consistently in the funnel, revenue report, and any messages shown to the customer.
Stripe documents separate events for completed Checkout Sessions and later success or failure of delayed payments. The important operational point is to inspect the payment state rather than treat every completed interaction as confirmed revenue. The exact integration should follow Stripe's current guidance for its chosen payment methods. Do not assume that the event name alone means the same thing as a settled payment or an accounting revenue entry.
Follow an illustrative pending purchase
Imagine a fictional USD 80 purchase started from an email campaign on Monday. The buyer finishes checkout, and the payment remains pending. The funnel can record that the buyer reached the end of checkout, but the confirmed payment total is still zero for this order. If payment succeeds on Wednesday, record the genuine USD 80 payment with the appropriate provider occurrence time and retain its connection to the original acquisition evidence.
If payment fails instead, the order never becomes successful payment revenue. Keep the failed outcome available for funnel diagnosis without inventing a negative sale to compensate for money that should never have been counted. This distinction helps explain whether a source creates interested buyers, completed checkout attempts, or confirmed customers. Those outcomes can diverge even when the interface looked successful to the buyer.
Do not rely on the browser return
The buyer may close the browser after submitting payment or never revisit the confirmation page. A delayed success can occur long after the browsing session has ended. Revenue recognition in a payment based marketing report therefore needs the supported provider outcome, with a saved connection back to the relevant customer or checkout. A thank you page is useful journey evidence, but it cannot establish every later payment result.
Likewise, a browser revisit should not create another purchase. Preserve the provider transaction relationship so that the final successful outcome contributes once. Stripe's webhook documentation covers repeated delivery and events arriving out of order. Your receiving process should retain completed work and handle later updates under one consistent lifecycle, rather than introduce a second revenue path that counts the same order independently.
Keep reporting dates understandable
A campaign can acquire the buyer on Monday while the payment succeeds on Wednesday. A calendar report of confirmed payments and a cohort report of customers acquired on Monday can therefore include the same payment under different date groupings. Explain which date each view uses. Do not move the original visit to Wednesday or pretend the payment succeeded on Monday merely to make the charts line up.
When comparing methods with different confirmation timing, give recent cohorts enough time to develop. A method with slower confirmation can look weaker in an immediate payment report even if its eventual success rate is similar. Show pending outcomes separately and define the cutoff used for the comparison. Never treat every pending order as a guaranteed future payment, and do not remove pending attempts from the funnel simply because the outcome remains unknown.
Use the distinction to diagnose the right problem
If many people abandon before submitting payment, inspect the checkout experience and offer. If they complete checkout but payments fail later, inspect the supported provider outcomes and the relevant payment method behavior. If successful provider payments are absent from analytics, inspect the receiving and reconciliation process. These failures can produce the same low revenue total but require different corrections. Start from the actual state transition that did not complete.
Keep the weekly review focused on checkout attempts, pending outcomes, confirmed payments, failures, and refunds, with the definitions stated beside the numbers. Ask whether each payment can be traced to its provider record and whether any acquisition source comes from saved evidence. The desired result is a report that explains waiting honestly, counts money when supported, and remains correct when the browser disappears or a notification arrives again.
Sources and further reading
READY TO SEE YOUR REAL NUMBERS?
Connect your payment provider and see which channels actually drive revenue.
Start tracking for free →RELATED POSTS