Payins on dedicated Account Numbers
What you'll build
Each customer (or each order) gets its own Account Number (CLABE in Mexico). When money lands at that Account Number, Fintoc sends you a webhook with the metadata you attached when you created it — so you know instantly which customer paid, without parsing bank statements or matching amounts.
When to use it
- Lending installments, insurance premiums, SaaS subscriptions.
- Any flow with identifiable customers who pay you repeatedly.
- Marketplaces where each buyer needs a stable place to deposit.
How it works
1. Your backend creates an Account Number with metadata.customer_id.
2. Fintoc returns an Account Number.
3. Your customer sends a Transfer to that Account Number.
4. Fintoc fires transfer.inbound.succeeded with your metadata attached.
5. Your backend marks the invoice paid.
sequenceDiagram
autonumber
participant You as Your backend
participant Fintoc
participant Customer
You->>Fintoc: Create Account Number (with metadata.customer_id)
Fintoc-->>You: Account Number 738969…
You-->>Customer: Show this Account Number on the invoice
Customer->>Fintoc: SPEI/TEF to that Account Number
Fintoc->>You: transfer.inbound.succeeded (includes your metadata)
You->>You: Mark invoice paid
One CLABE per customer, or one per order?
| One per customer | One per order | |
|---|---|---|
| CLABEs needed | # of customers | # of open orders |
| Reconciliation | Match by customer, then amount | One-to-one. Strongest. |
| Cleanup | Delete when customer offboards | Delete when order is paid |
Both patterns are supported. One per order is the strongest reconciliation model — disable or delete the CLABE as soon as the order is paid to prevent double payments.
Implementation checklist
- Create the Account Number with metadata. See Receive transfers → Create an Account Number.
- Handle the webhook. Subscribe to
transfer.inbound.succeeded; readdata.account_number.metadata. Payload reference: Receive transfers → Webhook payload. - Harden with business rules. Set
options.min_amount/max_amountto auto-reject wrong amounts, and disable the CLABE after payment. See Add logic to Account Numbers. - Clean up unused Account Numbers as customers offboard or orders close. See Manage your Account Numbers. You can have up to 1,000,000 Account Numbers. If you've created Account Numbers you no longer use, disable or delete them. Stale Account Numbers keep accepting transfers, which can pollute your reconciliation and statements.
Updated 5 days ago
What’s Next