Transactions

Crear Charges en lote

Cobra un lote de Invoices en una sola llamada.

Se usa para ejecutar muchos cobros a demanda sin llamar al endpoint individual por cada uno: el cuerpo lleva la lista charges_requests, con el mismo contenido que un cobro individual en cada elemento. Las rutas /public/cl, /public/mx y /public/br son equivalentes: el país de cada cobro lo determina la Organization dueña de su Account, no el prefijo de la ruta.

El lote se procesa como una orquestación identificada por id_bulk_charge, que la respuesta devuelve para hacer seguimiento. Cuando el cuerpo pide esperar el resultado, la respuesta agrega el resumen del lote y las Transactions que dejó; si no, trae solo el identificador del lote.

Cada Transaction que deja el lote queda marcada con ese id_bulk_charge, así que las Transactions de un lote que se procesó sin esperar su resultado se consultan después con GET /public/transactions?id_bulk_charge={id_bulk_charge}.

Acepta como máximo 500 cobros por llamada.

Límite de tasa: 1 solicitud por segundo. Al superarlo, la API responde 429. Ver Límites de tasa.

post/{country_code}/charge/bulk

Request

  • Base URL
    https://api.trytoku.com
  • URL
    https://api.trytoku.com/{country_code}/charge/bulk
  • Auth
    API key in header x-api-key

Path parameters

country_code'cl' | 'mx' | 'br' required

País de la organización sobre la que se opera, como primer segmento de la ruta: cl (Chile), mx (México) o br (Brasil).

Headers

x-api-versionstring date

Versión del API para esta petición, como cualquier fecha YYYY-MM-DD. Fija el contrato de la respuesta; si se omite, se deriva de la fecha de creación de la organización.

Example:2026-10-08
x-account-keystring

Llave de API de una Account, para operar sobre esa Account en lugar de la principal.

Request body

wait_for_resultboolean

Cuando es true, la respuesta espera que el lote termine y agrega su resumen y sus Transactions.

Example request

{
  "charges_requests": [
    {
      "id_account": "acc_7bQ2mN4pR6sT8vX0yZ2aB4cD6eF8gH0j",
      "id_invoices": [
        "in_5dF7hJ9kM1nP3rT5vX7zB9dF1hJ3lN5p"
      ],
      "id_payment_methods": [
        "pm_3kL5nP7qR9sU1wY3aC5eG7iK9mO1qS3u"
      ]
    }
  ],
  "wait_for_result": true
}

Response

Identificador del lote y, si se pidió esperar el resultado, su resumen y sus Transactions.

id_bulk_chargestring

Identificador del lote con que se sigue su procesamiento.

Example response

{
  "transactions": [
    {
      "transaction": {
        "additional_data": {
          "refund": {
            "id": "re_D8kR2mV5xQ0pT7yN4wZbL1eJsH6cF3uG",
            "reason": "Cobro duplicado"
          },
          "transaction": {
            "id": "trs_7QpK4mZ0RbS2vXhTyLnE9wJdA3cF6uGx",
            "type": "PAYMENT"
          }
        },
        "amount": 19990,
        "expiration_date": "2025-03-17T14:31:58.204671Z",
        "external_id": "cobro-marzo-2025-000123",
        "gateway": "transbank_oneclick",
        "id": "trs_7QpK4mZ0RbS2vXhTyLnE9wJdA3cF6uGx",
        "id_account": "acc_gzD0XoUTFxbUFcItpWOCqN686noSd9HQ",
        "id_charge_scheduled_date": "csd_9Kq2LwZ7pR4tV1xB6nM3cH8yJ0dF5sGa",
        "id_checkout_session": "cs_bT5xN2wQ8gLpH0vYzK4mR7eJdF1sUcA3qW9tXbNv",
        "id_organization": "org_dhn3lnrfAjFyWuyEz8Q3DFaFPnzc9bXk",
        "id_payout": "pyt_L3vQ9xW1sT6yB0nZmK8pR4eJdH2cF5uG",
        "initialization_date": "2025-03-10T14:31:58.204671Z",
        "installment_amount": 1000,
        "number_of_installments": 12,
        "original_response_message": "[51] EXCEDE SALDO MAXIMO. Intente de nuevo mas tarde",
        "provider_external_id": "123456789012345678901234567890",
        "remediation_detail": "Cobro reprocesado tras corregir el medio de pago",
        "response_code": "SUTOK0000",
        "toku_product": "toku_card_on_file",
        "transaction_date": "2025-03-10T14:32:05.482913Z",
        "transaction_metadata": {
          "card_type": "credit"
        }
      }
    }
  ]
}

Changes

No recorded changes to this operation across all 2 revisions of this API.