- Cómo enviar a Bre-b
- Cómo debitar al usuario origen
- Cómo aceptar la transferencia
- Cómo acreditar al beneficiario
- Notificación estado final
- Como enviar marcas de tiempo
- Cómo reintentar créditos
- Lineamientos del flujo regulatorio
- Errores del MOL
- Como consultar una transferencia
- Gestión de errores servicios ACH En-línea
- Flujos de excepción
- Tablas de referencia
- Token de autenticación
Cómo debitar al usuario origen
Débito al usuario origen
El endpoint de débito se invoca al inicio del procesamiento de una transferencia, con el objetivo de debitar la cuenta del usuario origen. Este endpoint debe garantizar que la cuenta esté activa y sea válida, y debe reservar los fondos necesarios para que la operación pueda ejecutarse.
En ACH En Línea, una operación de débito se representa como una acción de tipo COMMIT DEBIT. Si esta acción se marca como COMPLETED exitosamente, pero más adelante ocurre un error en el procesamiento, ACH En Línea ejecutará una operación opuesta (de tipo crédito) para revertir el movimiento de saldo y restablecer el estado original de la cuenta.
Proceso de débito paso a paso
A continuación, se describe detalladamente el flujo de procesamiento para una transferencia tipo regulada, enfocándonos en la etapa de débito al usuario origen. Este flujo se ejecuta en múltiples etapas, combinando interacciones entre ACH En Línea y el banco originador, tanto en fases síncronas como asincrónicas.
El objetivo principal de este proceso es asegurar que los fondos del usuario origen estén disponibles y sean reservados o debitados correctamente antes de avanzar con el resto de la operación. El flujo también contempla los mecanismos necesarios para revertir movimientos en caso de errores, así como el cumplimiento de los tiempos regulatorios.
A continuación, se detallan las acciones involucradas, junto con ejemplos prácticos y consideraciones técnicas relevantes.
sequenceDiagram
autonumber
participant sb as Entidad Origen
participant ach as ACH En Línea
sb ->> +ach: Creación de la tx
Note over ach,sb: POST /v1/money-movement/transfers
ach -->> +sb: 200 OK
ach ->> +sb: Llama al prepare debit
status: prepare
Note over sb,ach: POST /v1/debits
sb -->> +ach: 200 OK
sb ->> +sb: Reserva de fondos
sb ->> +ach: Confirma preparación del debit
status: prepared
Note over ach,sb: POST /v1/money-movement/transfers/{id}/status
ach -->> -sb: 200 OK
ach ->> -sb: Llama al commit debit
status: commit
Note over ach,sb: POST /v1/debits/{idDebit}/commit
sb ->> +sb: Realiza débito de fondos
sb ->>+ach: Confirma débito
Status: comited
Note over sb,ach: POST /v1/money-movement/transfers/{id}/status
ach -->> +sb: 200 OK
ach ->> -sb: Confirma estado final
status: completed
Note over ach,sb: PUT v1/transfers/{id}
sb -->> +ach: 200 OK
1. ACH En Línea llama al banco origen para procesar la operación de preparación del débito
A continuación, se detalla la información requerida para la implementación y puesta en marcha del servicio para la preparación del débito en la Entidad Origen.
Dominio: URL Base Entidad POST /v1/debits Campos de entrada preparación del débito
| Campo | Tipo | Validación | Longitud | Obligatoriedad |
|---|---|---|---|---|
| meta | objeto | N/A | N/A | SI |
| id | cadena | Identificador único de la transacción. | Min 1 Max 36 | SI |
| status | cadena | Estado de la transacción. Ver Tablas de referencia: "Estados de las transacciones". | Min 1 Max 8 | SI |
| data | objeto | N/A | N/A | SI |
| debitId | cadena | Identificador del debit prepare, el banco debe guardar este valor. | Min 1 Max 36 | SI |
| movementType | lista | Identificador del schema del flujo transaccional. Ver Tablas de referencia: "Valores para el campo movementType". | Lista | SI |
| amountInformation | objeto | N/A | N/A | SI |
| amount | decimal | Valor de la transacción. 13 enteros, 2 decimales, siempre mayor que cero. El monto máximo por transacción corresponde a 250 MM. | 13,2 | SI |
| currency | lista | Valor por defecto "COP" | Lista | SI |
| source | objeto | N/A | N/A | SI |
| personType | lista | Tipo de persona que origina la transacción. Ver Tablas de referencia: "Valores para el campo personType". | lista | SI |
| document | objeto | N/A | N/A | SI |
| number | cadena | Número de identificación del ordenante del pago. Solo números, si el campo type es NIT. El valor no debe superar los 9 dígitos y sin caracteres especiales. | entero | SI |
| type | lista | Tipo de identificación del ordenante del pago. Ver Tablas de referencia: "Tipos de documento". | lista | SI |
| fullName | cadena | Nombre comercial, se usa para persona jurídica. | Min 1 Max 160 | COND. Obligatorio si personType es LEGAL |
| firstName | cadena | Primer nombre. | Min 1 Max 40 | Obligatorio si personType es NATURAL |
| secondName | cadena | Segundo nombre. | Min 1 Max 40 | NO |
| firstLastName | cadena | Primer apellido. | Min 1 Max 40 | Obligatorio si personType es NATURAL |
| secondLastName | cadena | Segundo apellido. | Min 1 Max 40 | NO |
| accountInformation | objeto | N/A | N/A | SI |
| accountId | cadena | Número de cuenta del origen de la transacción. Tomar la parte en negrilla: svgs:20753228543@bancorojo.com.co | Min 1 Max 34 | SI |
| accountType | lista | Tipo de cuenta del origen de la transacción. Traducir de la tabla la parte en negrilla: svgs:20753228543@bancorojo.com.co | lista | SI |
| financialInstitutionId | entero | Identificador de la entidad origen. Número NIT sin dígito de verificación y sin caracteres especiales. | Min 1 Max 9 | SI |
| target | objeto | N/A | N/A | SI |
| personType | lista | Tipo de persona beneficiaria de la transacción. Ver Tablas de referencia: "Valores para el campo personType". | lista | SI |
| document | Objeto | N/A | N/A | SI |
| number | cadena | Número de identificación del beneficiario del pago. Solo números, si el campo type es NIT. El valor no debe superar los 9 dígitos y sin caracteres especiales. | entero | SI |
| type | lista | Tipo de identificación del beneficiario del pago. Ver Tablas de referencia: "Tipos de documento". | lista | SI |
| fullName | cadena | Nombre comercial, se usa para persona jurídica. | Min 1 Max 160 | COND. Obligatorio si personType es LEGAL |
| firstName | cadena | Primer nombre. | Min 1 Max 40 | Obligatorio si personType es NATURAL |
| secondName | cadena | Segundo nombre. | Min 1 Max 40 | NO |
| firstLastName | cadena | Primer apellido. | Min 1 Max 40 | Obligatorio si personType es NATURAL |
| secondLastName | cadena | Segundo apellido. | Min 1 Max 40 | NO |
| accountInformation | objeto | N/A | N/A | SI |
| accountId | cadena | Número de cuenta del beneficiario de la transacción. Tomar la parte en negrilla: svgs:20753228543@bancorojo.com.co | Min 1 Max 34 | SI |
| accountType | lista | Tipo de cuenta del beneficiario de la transacción. Traducir de la tabla la parte en negrilla: svgs:20753228543@bancorojo.com.co | lista | SI |
| financialInstitutionId | entero | Identificador de la entidad destino. Número NIT sin dígito de verificación y sin caracteres especiales. | Min 1 Max 9 | SI |
Request preparación del débito
{
"meta": {
"id": "debf4f70-c30d-4f27-95e6-2f96b91c0001",
"status": "prepare"
},
"data": {
"debitId": "9d2f9ed9-7fdb-4d3b-a7bf-8cd1a8e50001",
"movementType": "B2P-TRANSFER",
"amountInformation": {
"amount": 2500000.00,
"currency": "COP"
},
"source": {
"personType": "LEGAL",
"document": {
"number": "900123456",
"type": "NIT"
},
"fullName": "COMERCIALIZADORA ABC SAS",
"accountInformation": {
"accountId": "200012345678",
"accountType": "CCTE",
"financialInstitutionId": 900123456
}
},
"target": {
"personType": "NATURAL",
"document": {
"number": "1020304050",
"type": "CC"
},
"firstName": "CARLOS",
"firstLastName": "RAMIREZ",
"accountInformation": {
"accountId": "3001234567",
"accountType": "CAHO",
"financialInstitutionId": 860987654
}
}
}
} 2. La Entidad Participante origen envía respuesta al llamado de preparación del débito
La Entidad Participante confirma la recepción de la instrucción para preparación del débito.
Response preparación del débito
HTTP/1.1 200 OK
Content-Length: 0 3. Reserva de fondos
La Entidad Participante asegura la reserva de fondos al usuario origen.
4. Procesar rechazo de la transferencia
Si alguna de las validaciones no se cumple, la Entidad Participante originadora rechaza la operación enviando una solicitud al endpoint v1/money-movement/transfers/{id}/status con el estado "failed".
Dominio: https://bank.apihub.crt.achcolombia.com.co POST v1/money-movement/transfer/{id}/status Campos de entrada error en la confirmación de la confirmación del débito (header)
| Campo | Tipo | Validación | Descripción | Obligatoriedad |
|---|---|---|---|---|
| x-hash | String | Min 64 – Máx 64 | Cadena de comprobación de integridad de la trama. Serializar el objeto data y aplicar SHA256. | SI |
Campos de entrada error en la preparación del débito (body)
| Campo | Tipo | Validación | Longitud | Obligatoriedad |
|---|---|---|---|---|
| meta | Objeto | N/A | N/A | SI |
| requestId | cadena | UUID que identifica el mensaje. | Min 36 - Max 36 | SI |
| version | cadena | versión del protocolo de mensajería. valor fijo "1.0.0" | Min 1 Max 15 | SI |
| timestamp | fecha | Marca de tiempo de envío del mensaje | N/A | SI |
| data | objeto | N/A | N/A | SI |
| movementType | lista | Identificador del schema del flujo transaccional. Ver Tablas de referencia: "Valores para el campo movementType". | Lista | SI |
| status | cadena | Estado de la transacción. Ver Tablas de referencia: "Estados de las transacciones". | Lista | SI |
| creationDateTime | fecha | Momento en el que se confirma la preparación del débito o crédito | N/A | SI |
| debitId | cadena | Identificador del debit prepare, el banco debe enviar el valor que corresponde a la transferencia. Este valor fue entregado por ACH En-línea en el llamado al endpoint /v1/debits. | Min 1 Max 36 | COND Si la acción es un débito se debe informar este campo |
| coreId | cadena | Identificador interno del banco para la preparación del débito o crédito. | Min 1 Max 255 | SI |
| custom | objeto | N/A | N/A | COND Si el status = failed o aborted. Se debe informar este objeto con sus campos. |
| error | subobjeto | N/A | N/A | COND |
| code | cadena | Identificador del error. Ver tabla "VALORES PARA EL CAMPO CODE DEL STATUS". | Min 1 Max 36 | COND |
| description | cadena | Descripción del error | Min 1 Max 255 | COND |
Request rechazo
curl --location 'https://url_ach/v1/money_movement/transfers/{id}/status' \
--header 'hash: 695ffdf84f0dad0c19e3b8b09a4565246c156d747ffb26149e4c2dc5d3b66ca1' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiJkZW1vLXVzdWFyaW8iLCJyb2xlIjoiYXBwLXRlc3QiLCJpYXQiOjE3MDAwMDAwMDAsImV4cCI6MTcwMDA4NjQwMH0.abc123xyz987fakeSignatureOnlyForDemoPurposes' \
--data '{
"meta": {
"requestId": "45cdaa41-b567-4057-9fb7-7240efdfb437",
"version": "1.0.0",
"timestamp": "2026-06-15T14:27:28.001"
},
"data": {
"movementType": "P2P-TRANSFER",
"status": "failed",
"creationDateTime": "2026-06-15T14:27:28.001",
"debitId": "deb_03rgXTmRB7aI7jomy",
"coreId": "13456278395678906789"
},
"custom": {
"error": {
"code": "bridge.account-not-found",
"description": "1039: Cuenta no encontrada"
}
}
}' Response rechazo preparación débito
HTTP/1.1 200 OK
Content-Length: 0 5. Confirma preparación del débito
La Entidad Participante envía la confirmación de la preparación del débito a ACH En Línea. Solicitud POST al endpoint v1/money-movement/transfers/{id}/status con el estado "prepared"
Dominio: https://bank.apihub.crt.achcolombia.com.co POST v1/money-movement/transfers/{id}/status Campos de entrada confirmación preparación débito
Campos de entrada confirmación de preparación del débito (header)
| Campo | Tipo | Validación | Descripción | Obligatoriedad |
|---|---|---|---|---|
| x-hash | String | Min 64 – Máx 64 | Cadena de comprobación de integridad de la trama. Serializar el objeto data y aplicar SHA256. | SI |
Campos de entrada confirmación del débito (Body)
| Campo | Tipo | Validación | Longitud | Obligatoriedad |
|---|---|---|---|---|
| meta | Objeto | N/A | N/A | SI |
| requestId | cadena | UUID que identifica el mensaje. | Min 36 - Max 36 | SI |
| version | cadena | versión del protocolo de mensajería. valor fijo "1.0.0" | Min 1 Max 15 | SI |
| timestamp | fecha | Marca de tiempo de envío del mensaje | N/A | SI |
| data | objeto | N/A | N/A | SI |
| movementType | lista | Identificador del schema del flujo transaccional. Ver Tablas de referencia: "Valores para el campo movementType". | Lista | SI |
| status | cadena | Estado de la transacción. Ver Tablas de referencia: "Estados de las transacciones". | Lista | SI |
| creationDateTime | fecha | Momento en el que se confirma la preparación del débito o crédito | N/A | SI |
| debitId | cadena | Identificador del debit prepare, el banco debe enviar el valor que corresponde a la transferencias. Este valor fue entregado por ACH En-línea en el llamado al endpoint /v1/debits. | Min 1 Max 36 | COND Si la acción es un débito se debe informar este campo |
| coreId | cadena | Identificador interno del banco para la preparación del débito o crédito. | Min 1 Max 255 | SI |
| custom | objeto | N/A | N/A | COND Si el status = failed o aborted. Se debe informar este objeto con sus campos. |
| error | subobjeto | N/A | N/A | COND |
| code | cadena | Identificador del error. Ver tabla "VALORES PARA EL CAMPO CODE DEL STATUS". | Min 1 Max 36 | COND |
| description | cadena | Descripción del error. | Min 1 Max 255 | COND |
Request confirmación de preparación del débito
curl --location 'https://url_ach/v1/money-movement/transfers/{id}/status' \
--header 'x-hash: 695ffdf84f0dad0c19e3b8b09a4565246c156d747ffb26149e4c2dc5d3b66ca1' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiJkZW1vLXVzdWFyaW8iLCJyb2xlIjoiYXBwLXRlc3QiLCJpYXQiOjE3MDAwMDAwMDAsImV4cCI6MTcwMDA4NjQwMH0.abc123xyz987fakeSignatureOnlyForDemoPurposes' \
--data '{...}' {
"meta": {
"requestId": "550e8400-e29b-41d4-a716-446655440000",
"version": "1.0.0",
"timestamp": "2026-08-20T14:30:00-05:00"
},
"data": {
"movementType": "P2P-TRANSFER",
"status": "prepared",
"creationDateTime": "2026-08-20T14:35:20-05:00",
"debitId": "dbt-3f8d8b9a-1234-4567-89ab-123456789abc",
"coreId": "CORE-987654321"
}
} Response confirmación preparación débito
HTTP/1.1 200 OK
Content-Length: 0 6. ACH En Línea llama al banco origen para procesar la operación commit del débito
ACH En Línea ejecuta la solicitud POST al endpoint v1/debits/{idDebit}/commit (status: commit) del banco origen para dejar en firme el débito al usuario.
Dominio: URL Base Entidad POST v1/debits/{idDebit}/commit Campos de entrada commit debit
| Campo | Tipo | Validación | Longitud | Obligatoriedad |
|---|---|---|---|---|
| meta | objeto | N/A | N/A | SI |
| id | cadena | Identificador único de la transacción. | Min 1 Max 36 | SI |
| status | cadena | Estado de la transacción. Ver Tablas de referencia: "Estados de las transacciones". | Min 1 Max 8 | SI |
| data | objeto | N/A | N/A | SI |
| debitId | cadena | Identificador del debit prepare, el banco debe guardar este valor. | Min 1 Max 36 | SI |
| movementType | lista | Identificador del schema del flujo transaccional. Ver Tablas de referencia: "Valores para el campo movementType". | Lista | SI |
| amountInformation | objeto | N/A | N/A | SI |
| amount | decimal | Valor de la transacción. 13 enteros, 2 decimales, siempre mayor que cero. El monto máximo por transacción corresponde a 250 MM. | 13,2 | SI |
| currency | lista | Valor por defecto "COP" | Lista | SI |
| source | objeto | N/A | N/A | SI |
| personType | lista | Tipo de persona que origina la transacción. Ver Tablas de referencia: "Valores para el campo personType". | lista | SI |
| document | objeto | N/A | N/A | SI |
| number | cadena | Número de identificación del ordenante del pago. Solo números, si el campo type es NIT. El valor no debe superar los 9 dígitos y sin caracteres especiales. | entero | SI |
| type | lista | Tipo de identificación del ordenante del pago. Ver Tablas de referencia: "Tipos de documento". | lista | SI |
| fullName | cadena | Nombre comercial, se usa para persona jurídica. | Min 1 Max 160 | COND. Obligatorio si personType es LEGAL |
| firstName | cadena | Primer nombre. | Min 1 Max 40 | Obligatorio si personType es NATURAL |
| secondName | cadena | Segundo nombre. | Min 1 Max 40 | NO |
| firstLastName | cadena | Primer apellido. | Min 1 Max 40 | Obligatorio si personType es NATURAL |
| secondLastName | cadena | Segundo apellido. | Min 1 Max 40 | NO |
| accountInformation | objeto | N/A | N/A | SI |
| accountId | cadena | Número de cuenta del origen de la transacción. Tomar la parte en negrilla: svgs:20753228543@bancorojo.com.co | Min 1 Max 34 | SI |
| accountType | lista | Tipo de cuenta del origen de la transacción. Traducir de la tabla la parte en negrilla: svgs:20753228543@bancorojo.com.co | lista | SI |
| financialInstitutionId | entero | Identificador de la entidad origen. Número NIT sin dígito de verificación y sin caracteres especiales. | Min 1 Max 9 | SI |
| target | objeto | N/A | N/A | SI |
| personType | lista | Tipo de persona beneficiaria de la transacción. Ver Tablas de referencia: "Valores para el campo personType". | lista | SI |
| document | Objeto | N/A | N/A | SI |
| number | cadena | Número de identificación del beneficiario del pago. Solo números, si el campo type es NIT. El valor no debe superar los 9 dígitos y sin caracteres especiales. | entero | SI |
| type | lista | Tipo de identificación del beneficiario del pago. Ver Tablas de referencia: "Tipos de documento". | lista | SI |
| fullName | cadena | Nombre comercial, se usa para persona jurídica. | Min 1 Max 160 | COND. Obligatorio si personType es LEGAL |
| firstName | cadena | Primer nombre. | Min 1 Max 40 | Obligatorio si personType es NATURAL |
| secondName | cadena | Segundo nombre. | Min 1 Max 40 | NO |
| firstLastName | cadena | Primer apellido. | Min 1 Max 40 | Obligatorio si personType es NATURAL |
| secondLastName | cadena | Segundo apellido. | Min 1 Max 40 | NO |
| accountInformation | objeto | N/A | N/A | SI |
| accountId | cadena | Número de cuenta del beneficiario de la transacción. Tomar la parte en negrilla: svgs:20753228543@bancorojo.com.co | Min 1 Max 34 | SI |
| accountType | lista | Tipo de cuenta del beneficiario de la transacción. Traducir de la tabla la parte en negrilla: svgs:20753228543@bancorojo.com.co | lista | SI |
| financialInstitutionId | entero | Identificador de la entidad destino. Número NIT sin dígito de verificación y sin caracteres especiales. | Min 1 Max 9 | SI |
Request commit debit
curl --location 'https://url_participante/v1/debits/{idDebit}/commit' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiJkZW1vLXVzdWFyaW8iLCJyb2xlIjoiYXBwLXRlc3QiLCJpYXQiOjE3MDAwMDAwMDAsImV4cCI6MTcwMDA4NjQwMH0.abc123xyz987fakeSignatureOnlyForDemoPurposes' \
--data '{...}' {
"meta": {
"id": "debf4f70-c30d-4f27-95e6-2f96b91c0001",
"status": "commit"
},
"data": {
"debitId": "9d2f9ed9-7fdb-4d3b-a7bf-8cd1a8e50001",
"movementType": "B2P-TRANSFER",
"amountInformation": {
"amount": 2500000.00,
"currency": "COP"
},
"source": {
"personType": "LEGAL",
"document": {
"number": "900123456",
"type": "NIT"
},
"fullName": "COMERCIALIZADORA ABC SAS",
"accountInformation": {
"accountId": "200012345678",
"accountType": "CCTE",
"financialInstitutionId": 900123456
}
},
"target": {
"personType": "NATURAL",
"document": {
"number": "1020304050",
"type": "CC"
},
"firstName": "CARLOS",
"firstLastName": "RAMIREZ",
"accountInformation": {
"accountId": "3001234567",
"accountType": "CAHO",
"financialInstitutionId": 860987654
}
}
}
} Response commit del débito
HTTP/1.1 200 OK
Content-Length: 0 5. Confirma commit del débito
La Entidad Participante envía la confirmación del commit del débito a ACH En Línea. Solicitud POST al endpoint v1/money-movement/transfers/{id}/status con status:comited
Dominio: https://bank.apihub.crt.achcolombia.com.co POST v1/money-movement/transfers/{id}/status Campos de entrada confirmación del commit débito
Campos de entrada confirmación del commit del débito (header)
| Campo | Tipo | Validación | Descripción | Obligatoriedad |
|---|---|---|---|---|
| x-hash | String | Min 64 – Máx 64 | Cadena de comprobación de integridad de la trama. Serializar el objeto data y aplicar SHA256. | SI |
Campos de entrada confirmación del commit débito (Body)
| Campo | Tipo | Validación | Longitud | Obligatoriedad |
|---|---|---|---|---|
| meta | Objeto | N/A | N/A | SI |
| requestId | cadena | UUID que identifica el mensaje. | Min 36 - Max 36 | SI |
| version | cadena | versión del protocolo de mensajería. valor fijo "1.0.0" | Min 1 Max 15 | SI |
| timestamp | fecha | Marca de tiempo de envío del mensaje | N/A | SI |
| data | objeto | N/A | N/A | SI |
| movementType | lista | Identificador del schema del flujo transaccional. Ver Tablas de referencia: "Valores para el campo movementType". | Lista | SI |
| status | cadena | Estado de la transacción. Ver Tablas de referencia: "Estados de las transacciones". | Lista | SI |
| creationDateTime | fecha | Momento en el que se confirma la preparación del débito o crédito | N/A | SI |
| debitId | cadena | Identificador del debit prepare, el banco debe enviar el valor que corresponde a la transferencias. Este valor fue entregado por ACH En-línea en el llamado al endpoint /v1/debits. | Min 1 Max 36 | COND Si la acción es un débito se debe informar este campo |
| coreId | cadena | Identificador interno del banco para la preparación del débito o crédito. | Min 1 Max 255 | SI |
| custom | objeto | N/A | N/A | COND Si el status = failed o aborted. Se debe informar este objeto con sus campos. |
| error | subobjeto | N/A | N/A | COND |
| code | cadena | Identificador del error. Ver tabla "VALORES PARA EL CAMPO CODE DEL STATUS". | Min 1 Max 36 | COND |
| description | cadena | Descripción del error. | Min 1 Max 255 | COND |
Request confirmación del commit del débito
curl --location 'https://url_ach/v1/money-movement/transfers/{id}/status' \
--header 'x-hash: 695ffdf84f0dad0c19e3b8b09a4565246c156d747ffb26149e4c2dc5d3b66ca1' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiJkZW1vLXVzdWFyaW8iLCJyb2xlIjoiYXBwLXRlc3QiLCJpYXQiOjE3MDAwMDAwMDAsImV4cCI6MTcwMDA4NjQwMH0.abc123xyz987fakeSignatureOnlyForDemoPurposes' \
--data '{...}' {
"meta": {
"requestId": "550e8400-e29b-41d4-a716-446655440000",
"version": "1.0.0",
"timestamp": "2026-08-20T14:30:00-05:00"
},
"data": {
"movementType": "P2P-TRANSFER",
"status": "comited",
"creationDateTime": "2026-08-20T14:35:20-05:00",
"debitId": "dbt-3f8d8b9a-1234-4567-89ab-123456789abc",
"coreId": "CORE-987654321"
}
} Response confirmación del commit débito
HTTP/1.1 200 OK
Content-Length: 0 6. Notificación estado final
ACH En-línea confirma el estado final de la transferencia tanto a la Entidad Participante Origen como a la Entidad Participante Receptora
Dominio: URL Base entidad PUT /v1/transfers/{id} Campos de entrada notificación estado final
| Campo | Tipo | Validación | Descripción | Obligatoriedad |
|---|---|---|---|---|
| data | objeto | N/A | N/A | SI |
| id | cadena | Identificador único de la transacción | Min 1 Max 36 | SI |
| status | cadena | Estado de la transacción. Ver Tablas de referencia: "Estados de las transacciones". | Para estados finales, los valores serán: completed rejected | SI |
| creationDateTime | fecha | Momento de la respuesta al participante | N/A | SI |
| movementType | lista | Identificador del schema del flujo transaccional. Ver Tablas de referencia: "Valores para el campo movementType". | Lista | SI |
Request notificación estado final
{
"data": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"status": "completed",
"creationDateTime": "2026-08-21T10:15:30-05:00",
"movementType": "P2P-TRANSFER"
}
} Response notificación estado final
HTTP/1.1 200 OK
Content-Length: 0 