bytes32 reference to an operation and emits a Memo event alongside it, so reconciliation is a log query instead of a deposit address per customer. Every core call has a memo variant: mintWithMemo, burnWithMemo, transferWithMemo, and transferFromWithMemo.
If you operate the merchant side and need a settlement report across captures, refunds, and payouts, see Reconcile payments.
Demo
New to B20? See the B20 Token Standard for the concepts and a full launch walkthrough. These samples target
base-std@v1.0.0, viem@2.55.11, and Base Foundry v1.1.1.Attach and Read an Invoice Memo
The receipt contains
Transfer followed immediately by Memo, with invoice-8842 encoded as bytes32.Join a memo to the preceding operation with
(transactionHash, logIndex - 1). Keep the offchain invoice ID unique.See Also
Accept a B20 Payment
The app-side B20 memo payment flow.
Query B20 Events (CDP SQL API)
Reconcile at scale with the CDP SQL API.