Transfer memos for payment reconciliation
Use a payment reference to connect a stablecoin transfer to an invoice or payout record, with clear limits on memo size, privacy, and verification.
A transfer memo is a reference attached to a token transfer. On Tempo, TIP-20 payments can carry a 32-byte memo, allowing an application to connect the transfer to an invoice, order, or payout record.
The memo helps identify the payment. It does not replace verification of the token, recipient, amount, or transaction result.
Choose a reference that fits the workflow
Use a short, opaque identifier that points to a record in your application. An invoice payment might carry a payment-request ID; a refund might carry a refund ID linked to the original purchase. Keep names, email addresses, bank details, and other customer information in the application.
Tempo's payment references guide specifies a 32-byte field. Bytes and characters are different, especially for non-ASCII text. If a reference is too long, generate a shorter lookup ID and store the mapping internally.
| Workflow | Useful reference | Record to retain internally |
|---|---|---|
| Invoice collection | Payment-request ID | Invoice, expected asset and amount, customer, and status |
| Payroll payout | Individual payout ID | Pay period, recipient, asset, amount, and approval |
| Refund | Refund ID | Original payment, approved destination, and refund amount |
These are illustrative application choices, not mandatory encoding formats.
Verify before crediting an invoice
A matching memo is evidence to inspect, not an instruction to credit an account. Another sender could reuse the same reference, or a payment could have the correct reference but the wrong asset or amount.
For each received transfer, verify the selected network, exact token contract, receiving address, amount, and successful receipt. Retain the transaction hash and event log index so processing an event again does not create another credit. Handle partial payments, overpayments, and unmatched references as explicit cases in the ledger.
The official receiving guide provides the current verification flow. The payment reconciliation guide explains how those records connect to accounting.
Check wallet and provider support
A token's support for memos does not mean every sending wallet or exchange exposes a memo field. Confirm the exact send path before requiring a customer to include one.
If the sender cannot provide a memo, consider the documented customer deposit address flow or a provider-supported reference method. Choose the method before presenting payment instructions, and make the fallback clear to the payer.
In a batch payment, distinct references can identify individual transfers that share one transaction hash. A memo is also not a complete ISO 20022 message. Mapping it to richer payment records remains an application responsibility.
Keep references out of sensitive data
Memos on public Tempo transactions are public transaction data. An opaque ID reduces what is exposed, but the application still needs to control access to the record behind that ID. Do not put private customer details in a memo or assume hashing a predictable value makes it private.
FAQ
How large is a Tempo transfer memo?
The TIP-20 memo field holds 32 bytes. Validate the encoded byte length and use a short lookup ID for longer application references.
Is a matching memo enough to confirm payment?
No. Verify the network, exact token, recipient, amount, and receipt, then deduplicate the transfer event before crediting the payment.
Can every wallet send a transfer memo?
No. Support depends on the wallet or provider and the transaction method it exposes. Confirm support or choose a supported deposit-address or reference flow.