Intento de cobro sobre un medio de pago, con su resultado.
Intento de cobro sobre un medio de pago, con su resultado.
Queda una Transaction cada vez que Toku mueve dinero o intenta moverlo: un cobro pedido por API, un pago hecho en el portal de Toku, un pago que el deudor hizo por fuera y que se registra, o la reversa de cualquiera de ellos. Los intentos fallidos también quedan registrados.
Se crea al iniciar el cobro, cuando todavía no se conoce el resultado; es la finalización la que lo define. Recién ahí se saldan las Invoices que la Transaction cubre y se avisa el desenlace por webhook.
Atributos
additional_data object
Información complementaria del movimiento, como el detalle de la devolución cuando la Transaction fue devuelta.
amount number
Monto del movimiento, expresado en la moneda de currency.
currency string
Moneda en la que se cursó el movimiento, en formato ISO 4217. Puede diferir de la moneda de las deudas que salda.
Valores posibles: CLP, CLF, MXN, BRL, USD.
expiration_date string
Fecha y hora, en formato ISO 8601 y en UTC, hasta la que la Transaction puede resolverse. Si vence sin resolverse queda ABORTED; en una autorización diferida es el plazo hasta el que se puede capturar. Es nulo cuando la Transaction no tiene vencimiento.
external_id string
Identificador que entrega la organización para reconocer la Transaction en sus propios sistemas.
gateway string
Procesador con el que se cursó el movimiento.
id string
Identificador único de la Transaction.
id_account string
Cuenta de cobro de la organización a la que se imputa el movimiento.
id_checkout_session string
Checkout Session desde la que se originó el cobro. Es nulo cuando el cobro no partió de un checkout.
id_organization string
Organización dueña de la Transaction.
id_payout string
Payout con el que se le liquidó a la organización el dinero de esta Transaction. Es nulo mientras no se haya liquidado.
initialization_date string
Fecha y hora, en formato ISO 8601 y en UTC, en que se creó la Transaction. Se distingue de transaction_date, que es la fecha del movimiento de dinero.
original_response_message string
Mensaje con el que el procesador respondió al cobro, tal cual lo entregó. Es nulo cuando no alcanzó a haber respuesta del procesador.
remediation_detail string
Motivo con el que se remedió la Transaction, cuando un cobro que había fallado se rehízo y terminó bien. Es nulo cuando no hubo remediación.
response_code string
Código de resultado del cobro, normalizado por Toku a partir de la respuesta del procesador. Se compone de la gravedad (SU éxito, TE temporal, PE permanente, UE desconocido), tres letras que identifican la fuente y cuatro dígitos de detalle: 0000 cuando el cobro resultó exitoso y 9999 cuando la respuesta no se pudo clasificar. El listado completo está en Códigos de pago rechazado. Es nulo mientras el cobro no se resuelve y en los movimientos que no pasan por un procesador, como los pagos registrados por fuera y los contracargos.
status string
Estado de la Transaction: INITIALIZED mientras el cobro no se resuelve, SUCCESS cuando se capturó, FAILED cuando el procesador rechazó el cobro, ABORTED cuando se descartó antes de intentarlo o venció sin resolverse, y CAPTURE_PENDING cuando quedó una autorización tomada a la espera de que se capture.
Valores posibles: INITIALIZED, SUCCESS, FAILED, FAILED_INIT, ABORTED, CAPTURE_PENDING.
status_history array of StatusHistory
Cambios de estado por los que pasó la Transaction, en el orden en que ocurrieron.
status_history[].new_status string
Estado al que pasó el objeto.status_history[].old_status string
Estado en el que estaba el objeto antes del cambio. Es nulo en el primer registro.status_history[].timestamp string (date-time)
Fecha y hora en que ocurrió el cambio de estado.
toku_product string
Producto de Toku con el que se cobró, que determina el medio de pago usado, por ejemplo toku_card_on_file o transfer_cl.
transaction_date string
Fecha y hora, en formato ISO 8601 y en UTC, en que se realizó el movimiento de dinero.
transaction_metadata object
Datos con los que Toku caracteriza el cobro, como el tipo de tarjeta con la que se pagó. Las claves dependen del medio de pago usado.
type string
Tipo de movimiento: PAYMENT es un cobro al cliente final, EXTERNAL_PAYMENT un pago hecho fuera de Toku que se registra para conciliarlo, REVERSED la reversa de un pago, CHARGEBACK un contracargo que inicia el banco del cliente e INSCRIPTION la inscripción de un medio de pago.
Valores posibles: ONETIME, INSCRIPTION, INSCRIPTION_REVERSED, CARD_ON_FILE_PAYMENT, CARDLESS_PAYMENT, PATPASS_PAYMENT, REVERSED, VOID, PAYMENT, CHARGEBACK, EXTERNAL_PAYMENT, CHARGEBACK_REVERSAL.
voucher string
Comprobante del cobro que entrega el procesador. Es nulo cuando el procesador no entrega uno.
Ejemplo
{
"additional_data": {
"refund": {
"id": "re_D8kR2mV5xQ0pT7yN4wZbL1eJsH6cF3uG",
"reason": "Cobro duplicado"
},
"transaction": {
"id": "trs_7QpK4mZ0RbS2vXhTyLnE9wJdA3cF6uGx",
"type": "PAYMENT"
}
},
"amount": 19990,
"currency": "CLP",
"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_checkout_session": "cs_bT5xN2wQ8gLpH0vYzK4mR7eJdF1sUcA3qW9tXbNv",
"id_organization": "org_dhn3lnrfAjFyWuyEz8Q3DFaFPnzc9bXk",
"id_payout": "pyt_L3vQ9xW1sT6yB0nZmK8pR4eJdH2cF5uG",
"initialization_date": "2025-03-10T14:31:58.204671Z",
"original_response_message": "[51] EXCEDE SALDO MAXIMO. Intente de nuevo mas tarde",
"remediation_detail": "Cobro reprocesado tras corregir el medio de pago",
"response_code": "SUTOK0000",
"status": "INITIALIZED",
"status_history": [
{
"new_status": "string",
"old_status": "string",
"timestamp": "2026-01-20T00:00:00Z"
}
],
"toku_product": "toku_card_on_file",
"transaction_date": "2025-03-10T14:32:05.482913Z",
"transaction_metadata": {
"card_type": "credit"
},
"type": "ONETIME",
"voucher": "string"
}