SPEI return codes

A returned SPEI transfer isn't lost money: it's reimbursed to the origin account. This guide explains the CEP's four official states, what the reason your bank shows means, and how to confirm which one applies without relying on that message.

The CEP's four states

A SPEI transfer's CEP always carries one of four states: settled, in process, returned, or rejected. Settled means the money reached the beneficiary account; returned means it arrived and came back afterward.

These four are the only states that exist: any message you see in your bank's app is a translation of one of them, not a fifth state.

StateWhat it means
SettledThe money reached the beneficiary account and stayed there
In processThe operation hasn't finished settling yet
ReturnedThe money arrived and the receiving bank sent it back afterward
RejectedThe operation never settled: the money never left the origin

Bank of Mexico

What your bank's reason means

Every bank writes a return reason its own way. These eight cover most of the cases an integrator runs into.

What you seeWhat it means and what to do
Missing required informationA field in the payment arrived empty or malformed — the beneficiary's name is the most common one; check that every required field is complete, with the beneficiary's exact registered name.
Account doesn't existThe CLABE or account doesn't exist at the receiving bank; check the 18 digits, including the check digit.
Account canceled or blockedThe account exists but can't receive deposits; the beneficiary needs to sort it out with their bank.
Rejected by the sending bankThe sending bank canceled the order before it settled, over its own internal checks; the cause is on their side, not the receiver's.
Receiving bank offlineThe destination bank's system didn't respond at settlement time; it usually resolves itself, try again later.
Malformed referenceThe numeric reference doesn't match the format the receiving bank requires; use a valid reference, with no leading zeros or special characters.
Amount exceeds the account's limitThe beneficiary account has a deposit cap, typical of lower-tier accounts; split the payment or ask for another account.
Beneficiary name doesn't matchThe name sent isn't the one the bank has on file; correct it to match exactly what appears on the beneficiary's bank statement.

Confirm it with the CEP

The message your bank shows is an interpretation. The CEP is the source that doesn't change its mind: if it says settled, the money did reach the receiving account, whatever happens afterward.

When the CEP says settled and the beneficiary insists they received nothing, the problem is inside the receiving bank, not the payment — and the CEP is the documentary proof to file a claim.

ImportantLook up the CEP with the date the payment was made, not the date you're checking it: they differ when the payment crosses a weekend or was made after 18:00.

With VerikoVeriko's verdict distinguishes returned from rejected and from not found, and brings the operation date exactly as Banxico reports it.

How Veriko does it

Veriko looks up the CEP and returns the real state Banxico reports, without translating it into a bank's own wording: you'll know if a payment is settled, in process, returned, or rejected, with the exact date and amount.

When the state changes after an earlier lookup — a payment that was in process and ends up returned —, a webhook notifies you instead of you having to ask again.

What you needBy hand, with your bank's messageWith Veriko
DataThe text your bank wrote, different for each oneThe state Banxico reports, always the same wording
HoursYour bank app's own hoursAny time, by API or webhook
VolumeOne payment at a time, checking the appHundreds of payments, with automatic change notices
ResultA bank message you have to interpretStructured verdict: settled, returned, rejected, or not found
LogNoneHistory of every validation and its state change

If you reconcile payments every day, checking bank messages one by one doesn't scale. There's a free plan that never expires to try it, and the pricing page compares the plans.

Bank receipt capture from the demo, with personal data masked
Figure The demo capture What Veriko receives: amount, destination account, date and tracking key. The state you see here is the same wording Banxico reports. See the validation in the demo

Frequently asked questions

Does a returned SPEI mean I lost the money?

No. It's reimbursed to the origin account, usually the same business day or the next one.

How long does a returned SPEI take to come back?

The same business day, unless the return is generated near closing time or on a weekend: then it shows up the next business day.

Why doesn't my bank's message match what the CEP says?

Because the message is your bank's own wording, not the official state. The CEP always uses the same vocabulary, no matter which bank issued it.

What do I do if the CEP says settled but the beneficiary says they got nothing?

The problem is inside the receiving bank. The CEP is documentary proof that the money arrived; the beneficiary can use it to file a claim with their bank.

What are "return 14" and "return 22"?

They're internal numbering some banks show alongside the reason; they don't change the meaning, which is the same this guide's table describes.

Does a blocked account always return the payment?

Yes: an account that can't receive deposits makes the transfer come back to the origin, without exception.

Start validating your payments

Create a free account and we confirm your first payment with Banxico.

Start free