Payouts to users or suppliers

What you'll build

From your Fintoc Account you send money to any third-party bank account in real time — SPEI in Mexico, TEF in Chile — and track every state change via webhooks.

When to use it

  • Loan disbursements and refunds.
  • Marketplace payouts to sellers.
  • Wallet withdrawals.
  • Vendor and supplier payments.

How it works

1. Your backend POSTs /v2/transfers.
2. Fintoc submits to SPEI (MX) or TEF (CL).
3. Webhook fires: transfer.outbound.succeeded / .rejected / .failed.
4. Your backend updates the user or order.
sequenceDiagram
    autonumber
    participant You as Your backend
    participant Fintoc
    participant Rail as SPEI / TEF

    You->>Fintoc: POST /v2/transfers
    Fintoc-->>You: Transfer pending
    Fintoc->>Rail: Submit
    Rail-->>Fintoc: Settled / rejected
    Fintoc->>You: transfer.outbound.succeeded · .rejected · .failed

Implementation checklist

  1. Fund the source Account. Send money from your company's external bank account to the root_account_number of your Fintoc Account.
  2. Create the transfer. Full request format, MX and CL examples, counterparty fields: Send transfers → Create a transfer.
  3. Handle the webhooks. Event catalog and status semantics: Send transfers → Monitor status.
  4. (Optional) Verify the destination first if the CLABE was typed in by a user. See Verify a CLABE before payout.

A common pitfall

Webhooks can arrive out of order. Always branch on data.status, not on which event arrived first. See Send transfers → Monitor status for details.


What’s Next