How Crypto Payments Work: From Checkout Click to Shipped Order

·5 min read

The full journey of a crypto payment, explained: dedicated addresses, what nodes actually detect and when, why 'seen on-chain' isn't 'safe to ship', how settlement executes, and the webhook that closes the loop.

Contents
  1. 1Act 1: the payment is born (and why the address matters)
  2. 2Act 2: the customer pays (three doors, same room)
  3. 3Act 3: detection — the moment the chain says something
  4. 4The intermission that matters: detected is not settled
  5. 5Act 4: settlement — where the models diverge
  6. 6Act 5: the webhook closes the loop
  7. 7What the customer never sees
  8. 8FAQ

The short answer: a crypto payment is a five-act play — the merchant's system creates a payment and gets a dedicated address; the customer transfers funds to it from any wallet or exchange; the gateway's nodes detect the transfer the moment it enters a block; settlement executes and the money reaches the merchant's wallet; a signed webhook tells the store to ship. The whole thing takes seconds on a fast chain. The subtlety that separates working integrations from broken ones lives between acts three and five: seeing money is not the same as having money, and every reliable system is built around that difference.

Act 1: the payment is born (and why the address matters)

When a customer picks crypto at checkout, the merchant's backend asks the gateway to create a payment: amount, token, chain, order ID. Back comes a dedicated address that exists for this one payment.

That address is the load-bearing design decision of the entire flow. Because it maps 1:1 to the order, there's no guessing which transfer belongs to which customer — reconciliation is automatic by construction. And on Finality, the address carries something more: the settlement rules are welded into its derivation. Where the money will go was fixed the moment the address was created, and nobody — merchant, platform, or attacker — can point it elsewhere afterward.

Act 2: the customer pays (three doors, same room)

Act 3: detection — the moment the chain says something

The gateway's nodes watch every new block. The instant the customer's transfer is included in one, the payment flips to detected — sub-second on Solana, a few seconds on EVM chains. The customer's checkout page turns green while their phone is still in their hand.

Detection is a statement about the chain, not about your money: the transfer exists in a block. Amount matching happens here too — full amount inside the window moves the payment forward; a short payment flags as partial (order stays open, customer can top up the same address); money arriving after expiry flags as late, sits safely at the dedicated address, and is recoverable rather than lost.

The intermission that matters: detected is not settled

This is the sentence that saves integrations: never ship on "detected". Between a transfer appearing and money being final, chains have confirmation depth, and payment systems have settlement work to do. A serious gateway models these as distinct states — detected, confirmed, settled — and is explicit that only one of them means "the money is yours."

Fulfillment logic that triggers on the wrong event is the most expensive bug in crypto commerce: goods shipped against a payment that was partial, blocked, or not yet final. (The engineering details — signatures, retries, idempotency — are a topic of their own: payment webhooks done right.)

Act 4: settlement — where the models diverge

Detection looks the same everywhere. Settlement is where gateways reveal their architecture:

Act 5: the webhook closes the loop

When settlement completes, the gateway sends the merchant's backend a signed webhook — on Finality, payment.settled, which by definition fires only after funds have reached your wallet. The store verifies the signature, checks it hasn't processed this event before, and ships. Five acts, a few seconds of wall-clock time, and a permanent on-chain record tying the order to the money.

What the customer never sees

The best part of the whole machine is invisible: no accounts, no forms, no "create a wallet with us." The customer sent a transfer the way they already know how; the merchant got paid into their own wallet; the chain holds the receipt for both. Everything else — matching, edge cases, notifications, splits — happened in the seconds between.

FAQ

How long does a crypto payment take end to end?

On Solana: detection sub-second, settlement and webhook within seconds. EVM chains add confirmation time. Either way the customer experience is "it turned green while I watched."

What happens if the customer pays the wrong amount?

Underpayment holds the order open with the remainder shown; they top up the same address. Overpayments and late arrivals sit at the dedicated address, visible and recoverable — not lost.

Can a payment be reversed after settlement?

No — settled crypto payments are final. That removes chargeback fraud entirely; refunds become a deliberate action by the merchant (how refunds work non-custodially).

Do customers pay gas fees?

The network fee for the customer's transfer is theirs and is typically cents or less on modern chains; the merchant-side settlement cost is the gateway's fee — on Finality a flat 1%, carved out on-chain.

How are crypto payments detected?

Nodes watch every new block; the moment a transfer to a payment address is included, detection fires — sub-second when the nodes are the gateway's own.

Are crypto payments instant?

Detection effectively is, on fast chains; settlement follows within seconds — and the distinction is the article's whole point: ship on settled, never on seen.

Can a crypto payment fail?

It can expire unpaid, arrive short (order stays open for top-up), or arrive late (flagged, recoverable). What it can't do is silently vanish — every state is visible on-chain.

How does the merchant know I paid?

A signed webhook tells their system the moment settlement completes — no human checking an explorer, no "did you get it?" emails.

What if I pay after the checkout expired?

On dedicated-address systems the funds sit safely at that order's address, flagged as late and recoverable — annoying, visible, not lost.

Why does my payment show as pending?

It's queued for a block — normal on slower chains, near-invisible on fast ones. Pending means waiting, not lost.

Reading about the five acts takes longer than watching them: create a sandbox payment, pay it with the simulate button, and watch detected → settled → webhook happen in real time — zero real money, and the whole machine stops being abstract.

Related reading