Docs

Direct Debit · Guides

Bulk collections over SFTP

Upload a CSV of charges to the Monato SFTP server and read the pre-validation, validation and response files.

Submit charges in bulk by uploading a CSV file to the Monato SFTP server. Monato returns pre-validation, validation and result files to the same server.

How it works

SFTP flow
Merchant                    Monato SFTP                 Monato Platform
   |                            |                            |
   |-- Uploads charge request ->|                            |
   |       file to /in          |                            |
   |                            |<-- Picks up file ---------|
   |                            |                            |
   |                            |-- Publishes pre-       --->|
   |                            |   validation response      |
   |                            |                            |
   |                            |-- Publishes charges    --->|
   |                            |   response file            |
   |<-- Merchant reads files ---|                            |
   |    from /out               |                            |
  1. You upload a charge request CSV to the /in folder.
  2. Monato picks up the file, validates it and publishes a pre-validation response to /out within 5 minutes.
  3. If pre-validation passes, Monato processes the charges and publishes a charges response file to /out the next business day.

Capacity

Files can be up to 30 MB. There is no fixed limit on the number of charges: a file is bounded only by that size limit and by finishing processing within the platform’s processing window. If a file approaches the size limit, split it into several files. See Limits.

Processing schedule

Charges follow the standard cutoff times. Files uploaded before 3:00 PM Mexico City time on a business day are processed the same day. Files uploaded after the cutoff, or on non-business days, are processed the next business day.

The cutoff applies to when the platform picks up and validates the file, not when you upload it. Leave enough lead time before 3:00 PM for pre-validation and input validation (typically 5 to 7 minutes).

Step 1: Get your SFTP credentials

The Monato team provides SFTP credentials and connection details at contract signing. They include:

  • Host: the SFTP server address.
  • Username: your organization’s SFTP username.
  • Password or SSH key: depending on the authentication method configured for your account.

Contact the Monato team if you have not received them.

Step 2: Prepare the charge request file

Build a CSV file following the Batch file specification. Each row is one charge. Start from the Charges Request File Layout and the Charges Request File Example.

Warning:

The file name must not contain special characters or spaces. Use only letters (upper or lowercase), numbers, hyphens (-) and underscores (_). Example: charges_20251120_group_1.csv

Step 3: Upload the file

Connect to the Monato SFTP server with your credentials and upload the file to the in folder.

Step 4: Read the pre-validation response

Within 5 minutes of upload, Monato publishes a pre-validation file in the out folder.

Result File name Content What to do
Passed {original_file_name}_pre_validation_ok_{uuid}.csv FILE_SCHEDULED_FOR_PROCESSING Nothing. The file is queued for processing.
Failed {original_file_name}_pre_validation_nok_{uuid}.csv NOT_ABLE_TO_PROCESS_FILE Check the file name, format and structure against the column specification, then upload it again.

Step 5: Read the input validation result

If pre-validation passes, Monato validates the file contents within 2 minutes.

Result File name What it means
Errors found {original_file_name}_process_nok_{uuid}.csv Contains every row of the original file plus a column with the validation error for each failing row. Fix the errors and upload the file again. See the Validation Response File Example.
Passed {original_file_name}_process_ok_{uuid}.csv All charges passed validation and were submitted to the banking network for processing.

Step 6: Read the charge responses

On the next business day, Monato publishes a charges response file in the out folder:

Response file name
responses_{yyyyMMdd}_{uuid}.csv

It contains a row for every charge that received a response from the banking network on that date, including risk and penny validation errors. See the Charges Response File Example.

The result column holds one of these values:

Value Description
confirmed The charge was successfully collected
declined The charge was not collected — see the error code column for the reason
canceled The charge was canceled before processing

For the codes that can appear in response files, see Error codes.

Prefer a browser?

You can upload the same files manually in the Portal, without an SFTP client. See Batch upload.