Payment methods · Mexico
SPEI in Mexico: CLABE Virtual Accounts in, real-time payouts out
Give each customer, order or invoice its own CLABE, see transfers matched automatically and pay beneficiaries over SPEI in real time, 24/7.
- Instant transfer
- Mexico
- Pay-in · Payout
Virtual account
Customer #000123
CLABE
646180 •••• •••• 4821
- SPEI · ref 7F2A009309:41MX$ 12,400.00Matched
- SPEI · ref 3B7Q021109:12MX$ 4,980.50Matched
- SPEI · ref 9A1C1189YesterdayMX$ 22,150.00Matched
Key facts
SPEI in numbers
Figures published by Banco de México.
5,342 million
SPEI transfers (transactions, 2024)
Source: Banco de México, Informe anual sobre las infraestructuras de los mercados financieros 2024
MXN 578 trillion
SPEI value transferred (2024)
Source: Banco de México, Informe anual sobre las infraestructuras de los mercados financieros 2024
86
Direct SPEI participants (institutions, End of 2024)
Source: Banco de México, Informe anual sobre las infraestructuras de los mercados financieros 2024
73.5 million
Individuals who made at least one SPEI transaction in the quarter (people, Q4 2024)
Source: Banco de México, Informe anual sobre las infraestructuras de los mercados financieros 2024
What it is
The real-time transfer rail of Mexico
SPEI is Mexico’s electronic interbank payment system, operated by Banco de México. Customers pay by transferring to a CLABE from their own bank, and funds move in seconds, at any hour. With Localpayment you use it to collect through CLABE virtual accounts and to send payouts.
- A unique CLABE per customer, order or invoice, matched automatically
- TEF-In and USD collections over SPID, alongside the SPEI CLABE
- SPEI payouts in real time, 24/7, with no documented maximum
Virtual account
Customer #000123
CLABE
646180 •••• •••• 4821
- SPEI · ref 7F2A009309:41MX$ 12,400.00Matched
- SPEI · ref 3B7Q021109:12MX$ 4,980.50Matched
- SPEI · ref 9A1C1189YesterdayMX$ 22,150.00Matched
How it works
How a SPEI transfer is collected
Actors and steps follow the documented flow. The final status always arrives by signed webhook.
- 1
Your businessLocalpayment:
Creates the virtual account
POST /api/virtual-account, one by one or in batches. The number or key in the local format, ready to share.
- 2
Your businessCustomer:
Shares the payment details
In your checkout, invoice or app.
- 3
CustomerBank · SPEI:
Transfers from their bank
Electronic transfers only; cash deposits are not credited.
- 4
LocalpaymentYour business:
Webhook: payment received
Localpayment matches the transfer to the virtual account automatically. Signed webhook with payer data and amount; funds are credited to your Localpayment balance.
Simplified diagram. Timing depends on the rail and the bank; see the key facts below.
How it works
How a SPEI payout works
Actors and steps follow the documented flow. The final status always arrives by signed webhook.
- 1
Your businessLocalpayment:
Sends the payout request
POST /api/payout/ with the beneficiary details, amount and externalId. Compliance checks run; with requireAuth, a second approver signs off before funds move.
- 2
LocalpaymentBank · SPEI:
Locks the funds and sends the instruction
The payout moves from Locked to In Progress over SPEI.
- 3
Bank · SPEIBeneficiary:
Credits the beneficiary
Timing depends on the rail; see the key facts below.
- 4
LocalpaymentYour business:
Webhook: payout completed
Localpayment updates the payout to its final status. Signed webhook with the final status; the proof of payment can be downloaded.
Simplified diagram. Timing depends on the rail and the bank; see the key facts below.
How it works
See SPEI in action
A simplified, fictitious walkthrough. Names and amounts are examples.
- 1Comercio EjemploCheckout shows the account details to pay MXN 1,250.00.
- 2Banco EjemploThe payer transfers MXN 1,250.00 to the account shown.
- 3Payment confirmedYour system receives the signed webhook and releases the order.
Key facts
SPEI: key facts
Country
- Detail
- 🇲🇽 Mexico
Currency
- Detail
- MXN · USD
Direction
- Detail
- Pay-in and payout
Pay-in · Virtual account (CLABE, SPEI)
- Detail
- Real-time, confirmed by webhook · MXN 1 – 1,000,000,000
Pay-in · Virtual account (TEF-In)
- Detail
- Asynchronous, confirmed by webhook · MXN 1 – 1,000,000,000
Pay-in · Virtual account (SPID, USD)
- Detail
- Asynchronous, confirmed by webhook · USD 1 – 10,000,000
Payout · Bank transfer (SPEI)
- Detail
- Real-time, 24/7 · Min. MXN 0.01, no maximum
Taken from the Localpayment documentation for each country. Limits and availability can change; confirm them with your account manager.
Consumer experience
What your customer sees with SPEI
Authorization, limits and refunds as documented on docs.localpayment.com. Limits are shown only where the documentation states them.
How the customer authorizes
Your checkout shows an 18-digit CLABE. The customer opens their bank or wallet app, adds the CLABE as a beneficiary, enters the amount and confirms with their usual second factor. SPEI credits within seconds and the pay-in is matched to the virtual account automatically; only electronic transfers are accepted.
Documented limits
Virtual account (CLABE, SPEI) (Pay-in): MXN 1 – 1,000,000,000 · Virtual account (TEF-In) (Pay-in): MXN 1 – 1,000,000,000 · Virtual account (SPID, USD) (Pay-in): USD 1 – 10,000,000 · Bank transfer (SPEI) (Payout): Min. MXN 0.01, no maximum. Per transaction, as published in the documentation; contractual limits may differ.
Refunds and returns
A credited transfer can be refunded with PATCH /api/payin/{externalId}/refund. Only full refunds are supported and the funds are routed back to the payer’s original account automatically, with no extra beneficiary data. Cash deposits are never credited.
Integration checklist
Go live with SPEI in five steps
The same sequence for every rail. Watch the animated checkout for this country before you build.
Get Stage credentials
Request access, receive sandbox credentials and obtain a JWT with POST /api/token/.
Create the pay-in
POST /api/payin/ with the Localpayment code from the key facts table, ISO-3 country, currency, amount and payer data.
Show the instructions
Render the QR, code, redirect or account details from the response and respect the expiration date.
Verify the webhook
Validate x-Signature (HMAC-SHA256), release the order on status 200 and deduplicate on externalId.
Watch the animated checkout
Every method of this country, screen by screen, in the checkout experiences gallery.
History
Twenty years of SPEI
Source: Banco de México, annual report on financial market infrastructures 2024.
SPEI goes live
Banco de México launches SPEI as its real-time gross settlement system for interbank transfers, replacing the previous SPEUA.
24/7 operation
Low-value transfers become available around the clock, every day, turning SPEI into Mexico’s de facto instant payment rail.
CoDi and DiMo overlays
CoDi (QR and payment requests, 2019) and DiMo (mobile-number addressing, 2023) are built on top of SPEI.
5.3 billion transfers
SPEI settles 5,342 million transfers worth MXN 578 trillion, with 86 direct participants, a third of them non-bank institutions.
Why Localpayment
Why use SPEI with Localpayment
One API for pay-ins and payouts
SPEI runs on the same API as every other method: POST /api/payin/ to collect, POST /api/payout/ to pay out, and new markets by configuration.
Webhook status on every transaction
Every status change is pushed to your endpoint, signed with HMAC-SHA256, so you can verify and automate.
Reconciliation in the Business Portal
Match every transaction through your externalId and our internalId, with Business Portal reports and balance APIs.
Keep exploring
Pay-ins
Collect in local currency with the methods people actually use.
Pay-ins —Payouts
Pay sellers, suppliers and workers on local rails in 14 countries.
Payouts —Virtual accounts
A unique account per customer, reconciled automatically.
Virtual accounts —Mexico
Methods, rails, currencies and licenses in Mexico.
Mexico —Pix
Rails, limits and flow, step by step.
Pix —Bre-B
Rails, limits and flow, step by step.
Bre-B —Methods by country
The full directory of documented pay-ins and payout rails.
Methods by country —
FAQ
SPEI: frequently asked questions
How does a customer pay with SPEI?
You create a CLABE virtual account for the customer, order or invoice and share it. The customer transfers from their own bank; Localpayment matches the transfer to that CLABE and sends you a signed webhook.
Which Mexican collection options are available?
CLABE virtual accounts over SPEI (code 1630), TEF-In (1680) and USD collections over SPID-In (1698). See the key facts table above for limits and confirm yours with your account manager.
How do SPEI payouts work?
SPEI payouts (code 0130) are real-time, 24/7, with no documented maximum. Send POST /api/payout/ and receive the final status by signed webhook.
What is a CLABE and who issues it?
The CLABE is Mexico’s 18-digit standardized bank account number. Localpayment issues one CLABE per virtual account you create with POST /api/virtual-account; any SPEI participant can transfer to it.
How are SPEI refunds handled?
A credited transfer can be refunded in full with PATCH /api/payin/{externalId}/refund; the funds are routed back to the payer’s original account through SPEI without extra beneficiary data. Refunds are not available for payments processed through Banco Azteca.
Can I collect USD in Mexico?
Yes. A SPID virtual account (code 1698) receives USD interbank transfers in Mexico, alongside the MXN CLABE account. See the key facts table for limits and speed.
Is there a cut-off for SPEI payouts?
SPEI payouts run in real time, 24/7, with no documented maximum. Approval with requireAuth, if enabled, happens before the funds are locked and sent.
Add SPEI to your payments
Tell us your markets and volumes. We start you on Stage (sandbox) credentials and guide you to go-live.

Instant transfer