Direct Debit · Get started
Concepts
Terms used across Direct Debit, and how a charge moves from mandate to result.
Domiciliación Bancaria
The Mexican banking standard for direct debit. It is regulated by Banxico and the CNBV, and lets merchants pull payments directly from a customer’s bank account or debit card, as long as the customer authorized the collection with a mandate. Payers keep the right to dispute a charge within 90 days.
Mandate
The authorization a customer gives a merchant to collect recurring or one-off direct debits. The mandate is the legal basis for every charge. You obtain and keep the mandate: Monato does not manage mandates.
CLABE
Clave Bancaria Estandarizada: an 18-digit Mexican bank account identifier used to route direct debit transfers. The first three digits identify the bank; the following digits identify the branch and account.
Instrument
A stored representation of a customer’s payment method. There are two types:
| Type | Description |
|---|---|
mx_clabe |
An 18-digit CLABE bank account identifier |
mx_direct_debit_card |
A Mexican debit card number with an associated bank |
You can create instruments as stored (tokenized) objects through the API, or send them inline with each charge without storing them. Stored instruments let you filter and report by instrument. See Customers and instruments.
Customer
The identifying information of a payer: name, RFC or CURP document number, email and phone number. Like instruments, customers can be stored as objects or sent inline with each charge. Stored customers let you group and filter charges by customer.
RFC, CURP and passport
The document types a customer can have:
- RFC (Registro Federal de Contribuyentes): the tax ID issued by the SAT to individuals and businesses. Alphanumeric, typically 12 to 13 characters. API value:
mx_rfc. - CURP (Clave Única de Registro de Población): the national population registry key issued to individuals. 18 alphanumeric characters. API value:
mx_curp. - Passport. API value:
passport.
Charge
A single direct debit collection request. A charge has an amount, a currency (MXN), an instrument, a customer and an optional merchant reference. It moves through a defined set of statuses from creation to final result.
Penny validation
An automatic ownership check for new instruments (CLABE or debit card). Monato sends a MXN $0.01 deposit to the account, reads the beneficiary on the CEP that Banxico returns, and compares it with the customer you declared. If it does not match, the charge is canceled. You do not need to take any action. See Penny validation.
Batch file
A CSV file of charge requests, up to 30 MB, submitted over SFTP or in the Portal. Monato processes the file and returns pre-validation and response files. See Bulk collections over SFTP and Batch file specification.
Settlement
The transfer of collected funds from the banking network to you. Timing depends on when charges are submitted relative to the daily cutoff.
Chargeback
A reversal of a confirmed charge, requested by the customer through their issuing bank. Customers may request a chargeback up to 90 days after the debit. The amount is deducted from your outstanding balance. See Chargebacks.
Webhook
An HTTP callback Monato sends to your endpoint when an event happens, such as a charge result or a chargeback. See Webhook events.
Charge lifecycle
Every charge follows the same lifecycle, whether it was submitted through the API or a batch file.
Customer Merchant Monato Banking Partners
| | | |
|--- Accepts DD -->| | |
| mandate | | |
| |-- Requests -->| |
| | DD charge | |
| | |-- Penny |
| | | validation |
| | | |
| | |-- Risk |
| | | verification |
| | | |
| |<- Verification| |
| | response | |
| | |--- Sends charges ->|
| | | for processing |
| | | |
| | |<-- Bank responses -|
| |<- Results | |
| | delivered | |- The customer accepts the mandate. This happens outside Monato. You capture and store the mandate.
- You request a charge through the REST API or a batch file over SFTP.
- Penny validation (new instruments only). It runs before the risk engine. If it fails, the charge is canceled and does not reach the risk engine. It runs automatically, and a webhook is sent when it completes.
- Risk verification. If the risk engine rejects the charge, it is canceled and you get a
charge_resultevent withrisk_status: "cancelled_by_risk". - Verification response. Monato confirms the charge was accepted for processing, or reports a rejection before processing.
- Charges go to banking partners in a batch at the daily cutoff: 3:00 PM Mexico City time on business days.
- Bank responses. Banking partners confirm or decline each charge, typically by the next business day.
- Results delivered. Monato sends a
charge_resultwebhook and makes the result available in the API and the Portal.