1. Cross-Region
  • Cobre Docs
    • Cobre Intro
      • Welcome
      • Get started
      • Products
        • Local Payments
          • Local Payments with Cobre
          • Payouts
            • Colombia
              • Money Movements with Bre-B
              • Money Movements with Cobre Fast Pay
            • Mexico
              • Money Movements with CLABEs and SPEI Cards
            • Multi-region
              • Money Movements Scheduler
          • Payins
            • Colombia
              • Checkout
              • Request to Pay (R2P)
              • Static Bre-B Keys
            • México
              • CLABE-backed Cobre Balances
              • Account Reference – Virtual CLABEs
          • Other feaures
            • Bulk Money Movements
            • Enabling Approval Workflows (Maker–Checker)
        • Cross Border Payments
          • Cross Border Payments with Cobre
        • Stablecoins
          • Global Payouts in Stablecoins
        • Connect
          • Connect bank accounts with Cobre
      • Other features
        • Account Verification
        • Notifications and subcriptions
        • Security at Cobre
        • Performance and throughput
    • Portal
      • Introduction & Quick Start
      • Authentication in Portal
      • Troubleshooting & Support
      • Movements
        • Local Money Movement
        • Unitary Payment Initiation
        • Bulk Money Movement Initiation
        • Approval Process (Maker-Checker)
        • Scheduler
        • Cross-Border Money Movements
        • Payment Links
      • Transactions
        • Transactions
      • Accounts
        • Account and Balance Management
      • Counterparties
        • Counterparties
      • Reports
        • Reports & Reconciliation
      • Settings
        • Users and Roles Management
        • Security and Control
      • Developers
        • Subscription management
    • Developers
      • API Guides
        • Quick Start
        • Authentication
        • Cobre Balances
          • Managing Cobre Balances
          • Account Linkeage
        • Connect Accounts
          • Managing Connect Accounts
        • Counterparties
          • Managing Counterparties
        • Local Payments
          • Money Movement
          • Payouts
            • Colombia
              • Fast Pay & ACH
              • Bre-B
            • Mexico
              • SPEI
            • Cross-Region
              • Bulk Money Movements
              • Bulk Money Movements Approval
              • Money Movement Scheduler
          • Payins
            • Colombia
              • Cobre Keys with Bre-B
              • Checkout
              • Direct Link
              • Direct Debit
            • Mexico
              • Account Reference – Virtual CLABEs
        • Cross Border Payments
          • Cross Border Payments
          • Create Fx Quotes
          • Create a Cross Boder Money Movement
          • Fund your global Cobre Balance
        • Cross Features
          • Reports
          • Report Scheduler
          • Evidence API
          • Account Verification
          • Notifications & Subscriptions
        • Error Handling
          • Error Dictionary
        • Testing
          • General Testing
          • Testing Cases
      • API Explorer
        • Authentication API
          • Authentication
        • Cobre Balances
          • Create a Cobre Balance
          • Obtain all Accounts
          • Obtain one Account
          • Update an Account
          • Close a Cobre Balance
          • Obtain one Account Transactions
          • Obtain one Transaction
          • Obtain all Client Transactions
          • Obtain Account Daily Balance History
          • Assign or Change Primary Account
          • Unlinking Primary Account
        • Connect Accounts
          • Connect an Account
          • Obtain one Connected Account
          • Obtain all Connected Accounts
          • Obtain one Transaction
          • Obtain all Account Transactions
          • Obtain all Client Transactions
          • Update an account
        • Account Verifications
          • Create an Account Verification
          • Obtail all Account Verifications
        • Account References
          • Create an Account Reference
          • List one Account Reference
          • List all Account References
          • Delete an Account References
        • Counterparties
          • Account Debit Registration
            • Register a Counterparty for Direct Debit
            • Obtain all Registrations
            • Obtain one Registration
          • Create a Counterparty
          • Obtain one Counterparty
          • Obtain all Counterparties
          • Delete a Counterparty
        • Money Movements
          • Create a Money Movement
          • Obtain one Money Movement
          • Obtain all Money Movements
          • Return a Money Movement
        • Money movement Approvals
          • Approve a Money Movement
          • List all Money Movement Approvals
        • Money Movement Scheduler
          • Create a Money Movement Scheduler
          • List all Money Movement Schedulers
          • Cancel an Active Scheduler
        • Bulk Money Movement
          • Create a Bulk Money Movement
          • List all Bulk Money Movements
          • List one Bulk Money Movement
        • Bulk Money Movement Approvals
          • Bulk Money Movements Decision
        • Cobre Keys
          • Create a Key
          • Obtain all Keys
          • Obtain one Key
          • Cancel a Key
          • Block or Reactivate Keys
        • Cross Border
          • Create a FX Quote
          • Obtain one FX Quote
          • Obtain all the FX Quotes
          • Create a Cross Border Money Movement
          • Obtain one Cross Border Money Movement
          • Obtain all the Cross Border Money Movements
        • Checkout
          • Create a Checkout
          • Obtain one Checkout
          • Obtain all Checkouts
          • Desactivate a Checkout
        • Evidence API
          • Evidence Requests
            • Obtain Evidence Request
            • Search Evidence Requests
          • Evidence Documents
            • Generate Upload Links
            • Generate Download Link
          • Evidence Information
            • Submit Evidence Information
        • Report Scheduler
          • Create a Report Scheduler
          • Obtain all Reports Schedulers
          • Delete a Report Scheduler
        • Reports
          • Create a Report
          • Obtain all Reports
          • Generate Download Link for Selected Reports
          • Create a Cobre Balance Statement
        • Notifications & Subscriptions
          • Subscribe to Events
          • Obtain all Subcriptions
          • Delete a Subscription
          • List all Available Events
      • Platform Catalogs
        • Mexican Bank Codes
        • Colombian Bank Codes
        • Transaction Types
        • Account Providers
      • Reports Layout
        • Money Movements Layout
          • All Money Movements (CSV)
          • All Money Movements (JSON)
          • SPEI Money Movements (CSV)
          • LEGACY Money Movements (CSV)
        • Transactions Layout
          • All Transactions (CSV)
          • All Transactions (JSON)
          • Cobre Balance Statement (PDF)
        • Counterparties Layout
          • All Counterparties (CSV)
        • Multicash Layout
          • Multicash Header (TXT)
          • Multicash Detail (TXT)
      • Testing APIs
        • Create a Transaction Adjustment
        • Change a Money Movement Status
        • Transaction Adjustment (QA)
        • Change Money Movement Status (QA)
    • Schemas
      • Counterparties
        • RequestBodies
          • Counterparty-request
        • Colombia
          • PayOut
            • Counterparty | Create Metadata Type CC (CO)
            • Counterparty | Response Metadata Type CC (CO)
            • Counterparty | Create Metadata Type CH (CO)
            • Counterparty | Response Metadata Type CH (CO)
            • Counterparty | Create Metadata Type DP (CO)
            • Counterparty | Response Metadata Type DP (CO)
            • Counterparty | Create Metadata Type Breb Key (CO)
            • Counterparty | Response Metadata Type Breb Key (CO)
            • Counterparty | Create Metadata Type Cobre Balance (CO)
            • Counterparty | Response Metadata Type Cobre Balance (CO)
          • PayIn
            • Counterparty | Create Metadata Type r2p (CO)
            • Counterparty | Response Metadata Type r2p (CO)
            • Counterparty | Create Metadata Type r2p Breb (CO)
            • Counterparty | Response Metadata Type r2p Breb (CO)
          • Secondary Counterparty
            • Secondary Counterparty Create Request (CO)
            • Secondary Counterparty Create Response (CO)
            • Secondary Counterparty Create Metadata Type NP (CO)
            • Secondary Counterparty Response Metadata Type NP (CO)
            • Secondary Counterparty Request Metadata Type LE
            • Secondary Counterparty Response Metadata Type LE (CO)
          • Direct Debit
            • Direct Debit Registration | Create
            • Direct Debit Registration | Response
            • Direct Debit Registration | List All Items
          • Counterparty | Create Request (CO)
          • Counterparty | Create Response (CO)
        • Mexico
          • PayOut
            • Counterparty | Create Metadata Type Clabe (MX)
            • Counterparty | Response Metadata Type Clabe (MX)
            • Counterparty | Create Metadata Type SPEI Card (MX)
            • Counterparty | Response Metadata Type SPEI Card (MX)
          • Counterparty | Create Request (MX)
          • Counterparty | Create Response (MX)
        • Global
        • Counterparty | List All Items
        • MEX Money Movement Return
      • Transactions
        • Global
          • Transaction | Debit Cross Border
          • Transaction | Credit Cross Border
        • Colombia
          • Debit
            • Transaction | Debit FI (CO) (col_debit)
            • Transaction | Debit Cobre Balance (CO)
            • Transaction | Debit Breb (CO) (breb_debit)
          • Credit
            • Transaction | Credit Direct Debit (CO) (dd_credit)
            • Transaction | Rejected Breb (breb_rejected)
            • Transaction | Credit Top Up (CO) (col_top_up_credit)
            • Transaction | Credit FI (CO) (col_credit)
            • Transaction | Credit Cobre Balance (CO) (col_cb_credit)
            • Transaction | Credit Breb (CO) (breb_credit)
            • Transaction | Credit r2p (r2p_credit)
            • Transaction | Credit r2p Breb (CO) (r2p_breb_credit)
          • Transaction | Connect Obtain (CO)
          • Transaction | Cobre Balance Obtain (CO)
        • Mexico
          • Debit
            • Transaction | Debit FI (MX) (mex_debit)
            • Transaction | Debit SPEI (MX) (spei_debit)
            • Transaction | Debit Internal SPEI (MX)
          • Credit
            • Transaction | Credit FI (MX)
            • Transaction | Credit SPEI (MX)
            • Transaction | Credit Internal SPEI (MX)
          • Transaction | Connect Obtain (MX)
          • Transaction | Cobre Balance Obtain (MX)
          • Transaction | Return SPEI (MX)
        • Transactions | Connect List All Items
        • Transactions | Cobre Balance List All Items
        • Transaction | Debit Misc
        • Transaction | Credit Misc
        • Transaction | Adjustment Debit
        • Transaction | Adjustment Credit
      • Authentication
        • Authentication | Request
        • Authentication | Response
      • Cobre Keys
        • Colombia
          • Cobre Key | Create Request
          • Cobre Key | Create Response
          • Cobre Key | Obtain Response
          • Cobre Key | Reactive Request
      • Money Movements
        • Approvals
          • Money Movement Approvals | Create Request
          • Money Movement Approvals | Create Response
          • Money Movement Approvals | List All Items
        • Mexico
          • PayOut
            • Money Movement | Create Metadata Type SPEI
            • Money Movement | Response Metadata Type SPEI
          • Return
            • Money Movement Return | Create Request
            • Money Movement Return | Response Medatada Type SPEI
            • Money Movement Return | Create Response
        • Colombia
          • PayOut
            • Money Movement | Create Metadata Type Fast Pay
            • Money Movement | Response Metadata Type Fast Pay
            • Money Movement | Create Metadata Type ACH
            • Money Movement | Response Metadata Type ACH
            • Money Movement | Create Metadata Type Breb
            • Money Movement | Response Metadata Type ACH
          • PayIn
            • Money Movement Direct Link | Create Metadata Rail PSE
            • Money Movement Direct Link | Response Metadata Rail PSE
            • Money Movement Direct Link | Response Metadata Rail Bancolombia
            • Money Movement Direct Link | Response Metadata Rail Nequi
            • Money Movement Direct Link | Create Metadata Rail r2p Breb
            • Money Movement Direct Link | Response Metadata Rail r2p Breb
          • Direct Debit
            • Money Movement Direct Debit | Create Metadata
            • Money Movement Direct Debit | Response Metadata
        • Money Movement | Create Response
        • Money Movement | List All Items
      • Accounts
        • Account Verification
          • Mexico
            • Account Verification Create Metadata Type mex_acc_details_1
            • Account Verification Response Metadata Type mex_acc_details_1
            • Account Verification Create Request
            • Account Verification Create Response
            • Account Verification Create Metadata Type mex_acc_ownership_1
            • Account Verification Response Metadata Type mex_acc_ownership_1
            • Account Verifications List All Items
          • Colombia
            • Account Verification Response Metadata Type col_key_details_1
            • Account Verification Create Metadata Type col_key_details_1
            • Account Verification Create Metadata Type col_key_ownership_1
            • Account Verification Response Metadata Type col_key_ownership_1
        • Account References
          • Account References Request
          • Account Reference Response
          • List all account references
        • Cobre Balances
          • Mexico
            • Cobre Balance | Create Metadata (MX)
            • Cobre Balance | Create Response (MX)
          • Colombia
            • Cobre Balance | Create Metadata (CO)
            • Cobre Balance | Create Response (CO)
          • Global
            • Cobre Balance | Create Metadata (Global)
            • Cobre Balance | Create Response (Global)
          • Cobre Balance | Create Request
          • Cobre Balances | List All Items
          • Account_request_PATCH
          • Account_request_CONNECT_PATCH
        • Daily Balance
          • Daily Balance Obtain Response
          • Daily Balance Historiy List All Items
        • Account Connect
          • Mexico
            • Account Conect | Create Metadata (MX)
            • Account Connect | Response Metadata (MX)
          • Colombia
            • Account Conect | Create Metadata (CO)
            • Account Connect | Response Metadata (CO)
          • Account Connect | Create Request
          • Accounts Connect | List All Items
      • Bulk Money Movement
        • Bulk Money Movement | Obtain Response
        • Bulk Money Movement Decision | Create Request
        • Bulk Money Movements | List All Items
      • Money Movement Scheduler
        • Money Movement Scheduler | Create Request
        • Money Movement Scheduler | Create Response
        • Money Movement Scheduler | List All Items
      • Checkout
        • Colombia
          • Checkout | Create Request
          • Checkout | Create Response
          • Checkout | List All Items
          • Checkout | Delete
      • Notifications
        • Subscription | Create Request
        • Subscription | Create Response
        • Subscription | List All Items
        • Subscribable Events | List All Items
        • Subscribable Events | Metadata
      • Evidence Request
        • Schemas
          • Error
          • Evidence Request
          • Document Type
          • Evidence Id
          • Upload Intent
          • Evidence Request Id
          • Evidence Request Status
          • Information Type
          • Information
          • Evidence
          • Information Status
          • Document
          • Document Status
          • Headers
        • RequestBodies
          • UploadIntentRequest
      • Cross Border
        • Cross Border Money Movement
          • Cross Border Money Movement Create Request
          • Cross Border Money Movement Create Response
          • Cross Border Money Movement Obtain Response
          • Cross Border Money Movements List All Items
        • FX Quote
          • FX Static Quote
            • FX Quote Static | Create Request
            • FX Quote Static | Create Response
          • FX Rolling Quote
            • FX Quote Rolling | Create Request
            • FX Quote Rolling | Create Response
          • FX Quote | Create Request
          • FX Quote | List All Items
          • FX Quote | Metadata Quote Tiers
          • FX Quote | Metadata Penalization Tier
          • FX Quote | Metadata Fees Breakdown
      • Reports
        • Download
          • Report Download Create Request
          • Report Download Create Response
        • Reports Create Request
        • Reports Create Response
        • Reportes Create Metadata
        • Request Body Reports
        • Reports List All Items
        • Reports Object
      • Error Model
        • Error-model
      • Report Scheduler
        • Report Schedulers | Create Request
        • Report Schedulers | Create Response
  1. Cross-Region

Bulk Money Movements

The Bulk Money Movements API allows you to process multiple Money Movements from a single file upload, making it ideal for high-volume Payout and operational batch processing.
Bulk is commonly used to:
Execute mass disbursements (e.g., payroll, vendor payments, refunds).
Reduce the number of API calls by sending many Money Movements in one request.

Create the JSON file with the list of Money Movements#

The initial step is to create your JSON file that indicates the money movements that need to be processed.

JSON file requirements#

Key rules for the input JSON file:
The payload must be a JSON array: starts with [ and ends with ].
Each Money Movement request must be inside { } and separated by commas. Here is an example format layout:
[ 
   { 
       money_movement_request_1
   },
   {
       money_movement_request_2
   }
]
Comments are not allowed (e.g., // ...). For example:
[
    {
        "amount":100,
        "source_id":"acc_8NeUKp7B5B",     //Comments are not allowed
        "destination_id":"cp_KqiW8WHcaD",
        "metadata":
        {
            "description":"MX Payment - Saldo Crobre",
            "reference":100001
        },
        "external_id":"BBM_46995"
    }
]
Amount must be sent in the smallest currency unit (e.g., 100.00 MXN → 10000).
The maximum input file size is approximately 4.7 MB.

Supported types#

Bulk money movements allow two types of money movement objects.
Using an already created counterparty_id: The following represents a valid JSON format containing two Create a Money Movement request bodies which is accepted by bulk money movements:
[
    {
        "amount":100,
        "source_id":"acc_8NeUKp7B5B",
        "destination_id":"cp_KqiW8WHcaD",
        "metadata":
        {
            "description":"SPEI Payment - Saldo Cobre",
            "reference":100001
        },
        "external_id":"BBM_46995"
    },
    {
        "amount":500,
        "source_id":"acc_aJmUHHWDOB",
        "destination_id":"cp_c0jhj7gn7v",
        "metadata":
        {
            "description":"ACH Payment Bancolombia",
        },
        "external_id":"BBM_32656"
    }
]
Without a previously created counterparty_id: The process allows you to create a counterparty directly by including the Create a Counterparty request body details within the destination. The following represents a valid JSON format containing one SPEI money movement with a counterparty valid destination and is accepted by bulk money movements:
[
    {
        "amount": 1,
        "source_id": "acc_poyBrvkPRI",
        "destination":
        {
            "geo": "mex",
            "type": "clabe",
            "alias": "cccc",
            "metadata":
            {
                "account_number": "710969000037970288",
                "counterparty_fullname": "Company",
                "counterparty_id_type": "rfc",
                "counterparty_id_number": "ND"
            }
        },
        "metadata":
        {
            "description": "TEST PRO BMM",
            "reference": "009911"
        }
    }

]

Supported counterparties#

Payout via Bulk supports the following destination types:
Colombia Payout Counterparties
Mexico Payout Counterparties
Destination TypeCounterparty TypeRails
Checking AccountccFast Pay / ACH
Saving AccountchFast Pay / ACH
Electronic DepositdpFast Pay / ACH
BreB Keybreb_keyBreB / Fast Pay* / ACH*
Cobre Balancecobre_balanceFast Pay

Counterparty idempotency in Bulk#

The bulk money movement process verifies the existence of the counterparty before creation by ensuring it hasn't been created previously. This is accomplished by checking the idempotency through the concatenation of the following fields:
Counterparty TypeConcatenated Fields
ccgeo, type, account_number, beneficiary_institution, counterparty_fullname, counterparty_id_number, counterparty_id_type, counterparty_email, and counterparty_phone
chgeo, type, account_number, beneficiary_institution, counterparty_fullname, counterparty_id_number, counterparty_id_type, counterparty_email, and counterparty_phone
dpgeo, type, account_number, beneficiary_institution, counterparty_fullname, counterparty_id_number, counterparty_id_type, counterparty_email, and counterparty_phone
cobre_balancegeo, type, cobre_tag, counterparty_email, counterparty_fullname, counterparty_id_number, counterparty_id_type, and counterparty_phone

Authorization Workflow (optional)#

You can send your Bulk Money Movement for approval by setting the checker_approval flag to true in the request header.
If you choose to send the bulk for approval, all the Money Movements within the file will be submitted for approval and, if no validation or technical error is encountered, the money movements will be created with a pending_approval status.
To learn more about approvals, please refer to Bulk Money Movements Approval or approve individual money movements documentation.

Bulk lifecycle#

A Payout through Bulk Money Movement follows a simple lifecycle:
1. Build the JSON File
Build the JSON file with all Money Movements to be processed.
2. Upload the file
Upload the file to create the Bulk Money Movement.
3. Validation Process
Cobre validates the file and starts processing each Money Movement, tracking the bulk process status (e.g., validating, processing, completed, etc.).
4. Money Movement creation
Money Movements created through Bulk will include a batch_id (useful for reconciliation).
5. Receive status updates
Track progress using retrieval endpoints and/or Webhooks.
Even if a Money Movement encounters a functional error, the Money Movement object can still be created and the error will be reflected in its status description.

Bulk money movement process#

The platform will receive and validate a file containing multiple money movements.
Upon validation, the execution timestamp and total number of payments will be updated.
Then the process will execute all the money movements listed in the file and complete the process by updating the execution time and the total number of payments.

Bulk money movement statuses#

image.png
Validating: Initial status of the bulk money movement. Reflects the moment when the process started validating the file format.
Failed: Status that indicates that the validation process has encountered an error.
Processing: Status that indicates that the file has been validated, and each money movement in the file will be processed.
Pending Approval: Status that indicates that the file is awaiting for approval.
Canceled: Status that indicates that the bulk money movement processes has been canceled,.
Completed: Status that indicates that the bulk money movement processes has been completed.
The bulk money movement will only validate the uploaded file's format. If a functional error occurs, the Money Movement object will still be created, and the error (from the Error Dictionary) will be included in the description of the money movement.

Allowed file formats#

As we continue to evolve the bulk money movement process to incorporate new available formats, the following are allowed:
File Format
Object Format
Maximum Size
JSON
Money Movement request
4.7 Mb

Actions performed on Bulk Money Movements#

🔑 Create
🔍 Retrieval
👍 Approval
Description: Bulk Money Movement Creation.
What to expect after the action: Bulk Money Movement is created in Cobre.
📘 Learn more:
🔗 Create a Bulk Money Movement

How to Get Started#

Before you begin, we recommend reviewing the following considerations.

Before using this API#

1
Prepare your JSON file
Create a JSON array containing all Money Movement requests.
Follow the JSON file requirements.
Ensure each entry uses either an existing destination_id or an inline destination object.
Consider leveraging Counterparty idempotency according to the concatenated fileds per counterparty type.
2
Ensure the correct money movement request
Make sure that the money movement fields are correctly represented:
Remember that the combination between source and destination should have a valid money movement combination.
The source_id has to be valid and exist.
The destination_id (if provided) has to be valid and exist.
The fields within the metadata will need to be aligned depending on the source and destination money movement combination.
The amount is the smallest unit of the currency (e.g., 100.00 MXN should be represented as 10000).
The maximun input json file size of is approximately 4.7 MB.
Consider usign external_id to link each payment to an external object or process
Consider implemeting the checker_approval logic.
3
Send your Bulk money movement for approval (optional)
Use the Bulk Money Decision Endpoint to provide the decision outcome on the Bulk.
See Bulk Money Movements Approval Workflow for more details.
4
Implement Webhooks to track Money Movement status
To stay informed about the status of Payout transactions, we strongly recommend implementing Webhooks. Webhooks notify your system when a payment is initiated, processed, completed, or failed. Also subscribe to the required events to receive notifications about transaction debits and credits.
See Notifications for more details.

What to expect after using this API#

1
Bulk process status updates
The bulk process transitions through states such as validating, processing, and completed.
2
Reconcile using batch_id
Money Movements created from bulk include a batch_id, enabling correlation between the batch and each resulting payout.
3
Handle errors per Money Movement
Some Money Movements may fail due to functional requirements. Use retrieval endpoints and Webhooks to identify and retry only the affected entries.
Modified at 2026-01-06 02:17:27
Previous
SPEI
Next
Bulk Money Movements Approval
Built with