Skip to main content

Mexico

TOPPAY TeamAbout 3 min

Country domains & codes (Mexico)

Country/RegionCountry CodeDomainCurrency CodeCurrency Name
Mexicomxglobal-mx-openapi.toppayment.comMXNMexican Peso

Domain: Prefer the unified host openapi.toppayment.com (path unchanged); legacy country domains remain available.

Sandbox/production hostnames are subject to your account setup; URL patterns follow the same convention as other regions: /sandbox/{countryCode}/... (sandbox) and /{countryCode}/... (production).

Pay-In method codes (method)

Use these values in the method field for Mexico Pay-In (see Pay-In Orders — Mexico):

  • Cashier mode: /pay/prePay (method optional)
  • API mode: /pay/transOrder (method required)
Method codeDescription
SPEIBank transfer (SPEI)
CODIScan to pay (CoDi)
OXXOOffline OXXO

If additional method values are enabled by the gateway, follow the live response and the list provided by operations. Open-API field descriptions and examples: Pay-In Orders — Mexico.

Amount format (Pay-In / Pay-Out)

Positive amount, integer or at most 2 decimal places; not all zeros; no three or more decimal places. See amount in Pay-In Orders — Mexico and Pay-Out Orders — Mexico.

Pay-In notification rules (SPEI / same CLABE, multiple credits)

For SPEI (and similar flows): for one collection instruction (same orderNum, same CLABE or same checkout path), the payer may send multiple incoming transfers. Each successful credit may trigger a successful collection-style callback. The credited amount does not have to match the original order amount for that callback to be treated as a success event.

  • orderNum (merchant order id): Unchanged across multiple callbacks.
  • platOrderNum (platform order id): One per credited event — each successful callback uses a new platform id (multiple platform order numbers).
  • Paid amount field (e.g. payMoney in live payloads; names may vary): the amount for that specific callback, and it may differ between notifications.

Integration guidance: use platOrderNum as the primary idempotency / ledger key and book each notification separately. Do not process only the first orderNum + success or you may miss split credits.

Examples (field names per live gateway):

First credit notification:

{
  "code": "00",
  "description": "desc",
  "method": "SPEI",
  "msg": "SUCCESS",
  "orderNum": "TEST00000000000001",
  "payFee": "3",
  "payMoney": "25",
  "platOrderNum": "PRE10262034203986608803927",
  "platSign": "…",
  "status": "SUCCESS"
}

Second credit notification (same orderNum, different platOrderNum and payMoney):

{
  "code": "00",
  "description": "desc",
  "method": "SPEI",
  "msg": "SUCCESS",
  "orderNum": "TEST00000000000001",
  "payFee": "3",
  "payMoney": "15",
  "platOrderNum": "SUB1034205556524208141",
  "platSign": "…",
  "status": "SUCCESS"
}

Pay-Out notification rules (bank submission and central-bank review)

Pay-out funds are submitted via partner banks into Banco de México (and related clearing) for review. The chain may produce multiple stages and multiple asynchronous callbacks:

  1. Early bank callback: the processing bank may first return success (accepted into further review / clearing). This does not by itself mean the beneficiary has finally received funds.
  2. Central bank and beneficiary-bank checks: after central-bank routing, the beneficiary’s bank validates the payload; if everything is correct, the payout completes successfully.
  3. Failure, refund, second callback: if data is wrong or the account is invalid, the bank may refund and send a second (or further) callback with a failure reason.
  4. Final outcome: when multiple notifications exist, treat the last notification as the business final state. Do not treat the first success as completion.

See also Pay-Out Orders — Mexico and Transaction Status Codes.

SPEI participating institutions (pay-out bankCode / display bankName)

For Mexico SPEI pay-out, bankCode is the numeric institution code below; bankName is the display name. If multiple names map to one code upstream, follow the gateway and operations.

bankCodebankNameChannel
40012BBVA MEXICOSPEI
40137BANCOPPELSPEI
40127AZTECASPEI
90638NU MEXICO/AKALASPEI
40072BANORTESPEI
40014SANTANDERSPEI
40002BANAMEXSPEI
90728SPIN BY OXXOSPEI
90722Mercado Pago WSPEI
40021HSBCSPEI
90646STPSPEI
40058BANREGIOSPEI
40138UALASPEI
37019BANJERCITOSPEI
40062AFIRMESPEI
90720MexPagoSPEI
37006BANCOMEXTSPEI
37009BANOBRASSPEI
37135NAFINSPEI
37166BaBien/BANSEFISPEI
37168HIPOTECARIA FEDSPEI
40030BAJIOSPEI
40036INBURSASPEI
40042MIFELSPEI
40044SCOTIABANKSPEI
40059INVEXSPEI
40060BANSISPEI
40106BANK OF AMERICASPEI
40108MUFGSPEI
40110JP MORGANSPEI
40112BMONEXSPEI
40113VE POR MASSPEI
40126CREDIT SUISSESPEI
40128AUTOFINSPEI
40129BARCLAYSSPEI
40130COMPARTAMOSSPEI
40132MULTIVA BANCOSPEI
40133ACTINVERSPEI
40136INTERCAM BANCOSPEI
40140CONSUBANCOSPEI
40141VOLKSWAGENSPEI
40143CIBANCOSPEI
40145BBASESPEI
40147BANKAOOLSPEI
40148PAGATODOSPEI
40150INMOBILIARIOSPEI
40151DONDESPEI
40152BANCREASPEI
40154BANCO COVALTO/BANCO FINTERRASPEI
40155ICBCSPEI
40156SABADELLSPEI
40157SHINHANSPEI
40158MIZUHO BANKSPEI
40159BANK OF CHINASPEI
40160BANCO S3SPEI
90600MONEXCBSPEI
90601GBMSPEI
90602MASARISPEI
90605VALUESPEI
90608VECTORSPEI
90613MULTIVA CBOLSASPEI
90616FINAMEXSPEI
90617VALMEXSPEI
90620PROFUTUROSPEI
90630CB INTERCAMSPEI
90631CI BOLSASPEI
90634FINCOMUNSPEI
90642REFORMASPEI
90652CREDICAPITALSPEI
90653KUSPITSPEI
90656UNAGRASPEI
90659ASP INTEGRA OPCSPEI
90661KLARSPEI
90670LIBERTADSPEI
90677CAJA POP MEXICASPEI
90680CRISTOBAL COLONSPEI
90683CAJA TELEFONISTSPEI
90684TRANSFERSPEI
90685FONDO (FIRA)SPEI
90686INVERCAPSPEI
90688CREDICLUBSPEI
90689FOMPEDSPEI
90703TESOREDSPEI
90706ARCUS FISPEI
90710NVIOSPEI
90723CuencaSPEI
90901CLSSPEI
90902INDEVALSPEI
90903CoDi ValidaSPEI
40124CITI MEXICOSPEI
90699FONDEADORASPEI
90732PeiboSPEI
90715CASHI CUENTASPEI
40167HEY BANCOSPEI
90734FINCO PAYSPEI
90721ALBOSPEI
2001BANXICOSPEI
90729Dep y Pag DigSPEI
90725COOPDESARROLLOSPEI
90738FINTOCSPEI
90727TRANSFER DIRECTSPEI
90730SwapSPEI

For Pay-In and Pay-Out status values, see Transaction Status Codes.

Pay-Out request fields and examples: Pay-Out Orders — Mexico.