Payins on dedicated CLABEs

šŸ‡²šŸ‡½

Mexico only. In Chile, use the single default Account Number and reconcile via counterparty + comment.

What you'll build

Each customer (or each order) gets its own CLABE. When money lands at that CLABE, 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 a CLABE.
3. Your customer sends a SPEI to that CLABE.
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: CLABE 738969…
    You-->>Customer: Show this CLABE on the invoice
    Customer->>Fintoc: SPEI to that CLABE
    Fintoc->>You: transfer.inbound.succeeded (includes your metadata)
    You->>You: Mark invoice paid

One CLABE per customer, or one per order?

One per customerOne per order
CLABEs needed# of customers# of open orders
ReconciliationMatch by customer, then amountOne-to-one. Strongest.
CleanupDelete when customer offboardsDelete 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

  1. Create the Account Number with metadata. See Receive transfers → Create an Account Number.
  2. Handle the webhook. Subscribe to transfer.inbound.succeeded; read data.account_number.metadata. Payload reference: Receive transfers → Webhook payload.
  3. Harden with business rules. Set options.min_amount / max_amount to auto-reject wrong amounts, and disable the CLABE after payment. See Add logic to CLABEs.
  4. Clean up unused CLABEs as customers offboard or orders close. See Manage your CLABEs. You can have up to 1,000,000 CLABEs. If you've created CLABEs you no longer use, disable or delete them. Stale CLABEs keep accepting transfers, which can pollute your reconciliation and statements.

What’s Next