# Reconciling stablecoin payments with invoices

Stablecoin reconciliation matches business records with verified transfers and processor events. Record the chain, token identity, transaction reference, recipient, amount, status and associated invoice, then account for fees, conversions and refunds separately. A transaction hash identifies an event; it does not by itself explain which invoice was paid or whether the business received the intended asset.

Evidence: [ERC-20 Token Standard](https://eips.ethereum.org/EIPS/eip-20); [Webhook delivery and duplicate events](https://docs.stripe.com/webhooks); [Refund and cancel payments](https://docs.stripe.com/refunds)

Canonical: https://degreesofsatoshi.com/encyclopedia/stablecoin-payment-reconciliation/
Published: 2026-10-02
Substantively modified: 2026-10-02
Independently verified by an automated reviewer: 2026-10-02T19:26:58.461Z
Data current through: 2026-10-02

AI-assisted research and drafting with a separate automated source-verification pass; no external expert or named human review is implied.

## Key facts

- **Identity:** ERC-20 transfer events belong to a particular token contract. ([ERC-20 Token Standard](https://eips.ethereum.org/EIPS/eip-20))
- **Duplicates:** Webhook delivery can repeat; processing should handle duplicate events. ([Webhook delivery and duplicate events](https://docs.stripe.com/webhooks))
- **Refunds:** A refund has its own amount and processing state. ([Refund and cancel payments](https://docs.stripe.com/refunds))

## Build a payment record that answers a business question

An invoice number and a blockchain transaction identifier serve different purposes. The invoice describes the obligation; the transaction describes execution on a specific network. Link them using the receiving workflow’s records rather than an assumed resemblance between amounts.

Two customers can both pay 50 units. A rule that matches only on amount can assign the wrong receipt. Network, token, destination and an authenticated order reference provide the necessary context.

Evidence: [ERC-20 Token Standard](https://eips.ethereum.org/EIPS/eip-20); [Stablecoin payments](https://docs.stripe.com/payments/stablecoin-payments)

## Make repeated delivery safe

Payment services may retry notifications after a timeout, and event order is not necessarily the order in which business actions should occur. Store processed event identifiers and check current state before repeating fulfillment or ledger entries.

Illustrative example: one completed payment generates a notification twice. The correct result is one paid invoice and two delivery observations, not two receipts. Retry-safe processing protects the accounting result without assuming a network delivers each event exactly once.

Evidence: [Webhook delivery and duplicate events](https://docs.stripe.com/webhooks)

## Keep transfers, fees and refunds distinct

A 100-unit receipt followed by a 20-unit refund leaves 80 units before other charges. If a network fee was paid in a different asset, record that separately instead of silently changing the token quantity shown on the receipt.

Provider settlement can involve another currency and timing. Reconcile the customer payment to the processor balance, then the processor balance to the bank payout. A matching token transfer alone cannot establish the final bank reconciliation.

Evidence: [Refund and cancel payments](https://docs.stripe.com/refunds); [Stablecoin payments](https://docs.stripe.com/payments/stablecoin-payments)

## Questions

### Is a public transaction hash enough for an invoice receipt?

It is useful evidence, but it still needs the correct chain, asset, recipient, amount and business association. It also does not reveal an off-chain processor’s later conversion, payout or refund state.

Evidence: [ERC-20 Token Standard](https://eips.ethereum.org/EIPS/eip-20); [Stablecoin payments](https://docs.stripe.com/payments/stablecoin-payments); [Refund and cancel payments](https://docs.stripe.com/refunds)

## Claims and scope

### stablecoin-payment-reconciliation-quick-answer

Stablecoin reconciliation matches business records with verified transfers and processor events. Record the chain, token identity, transaction reference, recipient, amount, status and associated invoice, then account for fees, conversions and refunds separately. A transaction hash identifies an event; it does not by itself explain which invoice was paid or whether the business received the intended asset.

Scope: {"collection":"stablecoins","dataAsOf":"2026-10-02","blockHeight":null}

### stablecoin-payment-reconciliation-fact-identity

Identity: ERC-20 transfer events belong to a particular token contract.

Scope: {"collection":"stablecoins","dataAsOf":"2026-10-02","blockHeight":null}

### stablecoin-payment-reconciliation-fact-duplicates

Duplicates: Webhook delivery can repeat; processing should handle duplicate events.

Scope: {"collection":"stablecoins","dataAsOf":"2026-10-02","blockHeight":null}

### stablecoin-payment-reconciliation-fact-refunds

Refunds: A refund has its own amount and processing state.

Scope: {"collection":"stablecoins","dataAsOf":"2026-10-02","blockHeight":null}

## Sources

- [ERC-20 Token Standard](https://eips.ethereum.org/EIPS/eip-20) — Ethereum Improvement Proposals. Names/symbols, balances and Transfer events do not independently authenticate the issuer. Locator: Token methods and events. Retrieved: 2026-10-02T18:51:07.936Z.
- [Webhook delivery and duplicate events](https://docs.stripe.com/webhooks) — Stripe. Payment event processing and idempotent reconciliation; this does not establish chain settlement. Locator: Event delivery; duplicate events; ordering. Retrieved: 2026-10-02T18:52:46.705Z.
- [Refund and cancel payments](https://docs.stripe.com/refunds) — Stripe. Refund workflow, asynchronous processing and reconciliation separate from an original charge. Locator: Refund status; handling failures. Retrieved: 2026-10-02T18:51:05.967Z.
- [Stablecoin payments](https://docs.stripe.com/payments/stablecoin-payments) — Stripe. Processor-specific stablecoin acceptance, refund and merchant balance behavior. Locator: Payment flow; refunds; disputes; settlement. Retrieved: 2026-10-02T18:51:05.825Z.

## Revision history

- 2026-10-02: First publication after primary-source research and separate automated verification.

## Cite this entry

Degrees of Satoshi editorial project. “Reconciling stablecoin payments with invoices.” Published 2026-10-02; updated 2026-10-02. https://degreesofsatoshi.com/encyclopedia/stablecoin-payment-reconciliation/
