DEV Community

poetic
poetic

Posted on

What edge cases would you test for stablecoin checkout webhooks?

I'm building ChainPay, a stablecoin checkout for WooCommerce, SaaS products, Telegram sellers, and agent workflows.

The wallet UI is only one part of the problem. The part I keep coming back to is payment state: webhook retries, late payments, partial payments, duplicated events, and what happens when the customer closes the checkout tab.

Here is the checklist I am using right now:

  • exact payment within the expiry window
  • payment after expiry
  • partial payment
  • overpayment
  • duplicate webhook delivery
  • webhook delivered before the customer returns to the merchant site
  • order cancelled before payment confirmation
  • chain confirmation delay
  • customer pays from an exchange and cannot control the exact timing

For state, I am leaning toward:

pending -> confirming -> paid

with separate terminal states for expired, underpaid, overpaid, and cancelled.

I wrote a short implementation note here for context: https://chainpay.hashnode.dev/webhook-idempotency-for-stablecoin-checkout

If you have built crypto checkout, marketplace payments, billing webhooks, or webhook-heavy SaaS integrations: what edge cases would you add before calling this production-ready?

Top comments (0)