Procesa una transacción B2B que puede incluir los datos del remitente (cliente final) en cuyo
nombre se realiza el envío. Base de producción: https://api.global66.com/business-api.
Resumen y acceso restringido
Procesa una transacción B2B a partir del payload enviado. Funciona igual que el endpoint estándar de pagos (POST /b2b/transactions/payments), con una diferencia: el payload puede incluir un bloque opcional remitter con los datos del remitente (cliente final) en cuyo nombre se realiza el envío. Cuando lo envías, el remitente figura como la identidad que envía la remesa, en lugar de tu empresa.
El bloque remitter es opcional. Sin él, la petición se comporta exactamente como el endpoint estándar de pagos, que está documentado en Esquemas y ejemplos.
El bloque remitter solo se admite en transacciones REMITTANCE con paymentTypeWIRE_TRANSFER y hacia los corredores listados en Corredores disponibles. En cualquier otro caso la petición se rechaza con 400.
El endpoint también acepta transacciones P2P y EXCHANGE (sin remitter), con el mismo contrato del endpoint estándar de pagos. Esta guía se centra en REMITTANCE.
La petición es multipart/form-data con dos partes:
CampoTipoReq.Descripción
request
JSON (application/json)
req
Payload de la transacción (ver Body, parte request).
voucher
archivo
opt
Comprobante de la transacción. Extensiones permitidas: PDF, JPG, JPEG, PNG.
Si el payload es válido, la respuesta devuelve el identificador de la transacción con estado PROCESSING. Si no lo es, devuelve la lista de errores de validación en violations.
Autenticación
Envía tu token de acceso en el header Authorization, tal cual, sin el prefijo Bearer (Authorization: <token>). Se asume que ya cuentas con un token válido; si todavía no lo tienes, revisa Autenticación.
El identificador de tu empresa se resuelve a partir del token; no envías ningún identificador de cliente en la petición.
Parámetros
Headers
CampoTipoReq.Descripción
Authorization
string
req
Token de acceso, tal cual (sin Bearer).
Content-Type
string
req
multipart/form-data (curl lo agrega automáticamente al usar --form).
Body (parte request)
CampoTipoReq.Descripción
externalReferenceId
string
req
Identificador de referencia único que asignas a la transacción. No puede venir vacío. ej: order-2026-001
transactionType
string (enum)
req
Tipo de transacción. Valores: REMITTANCE, P2P, EXCHANGE. Para enviar remitter debe ser REMITTANCE.
originCurrency
string
req
Código de moneda de origen (3 a 5 caracteres). ej: COP
amount
decimal
req
Monto de la transacción en la moneda de origen. Debe ser mayor que 0. ej: 3000000
way
string (enum)
req
Dirección del cálculo. ORIGIN se aplica al monto enviado; DESTINY se aplica al monto recibido.
description
string
opt
Descripción de la transacción. ej: Pago a proveedor abril 2026
paymentType
string (enum)
req
Riel de pago. Valores: WIRE_TRANSFER, SWIFT, BREB. Para enviar remitter debe ser WIRE_TRANSFER.
purposeCode
array<purposeCode>
req
Lista de propósitos de la transacción. Mínimo un elemento (ver purposeCode).
beneficiary
object
req
Datos del beneficiario. El campo operationType determina su formato (ver las tablas de beneficiario más abajo).
remitter
object (remitter)
opt
Datos del remitente (cliente final) en cuyo nombre se realiza el envío (ver remitter).
purposeCode
CampoTipoReq.Descripción
purposeCode
int
req
Identificador del propósito de la transacción. Debe ser un propósito disponible para tu empresa. ej: 1
amount
decimal
opt
Monto del propósito en la moneda de origen. ej: 100.00
remitter
Datos del remitente (cliente final) en cuyo nombre se realiza el envío.
CampoTipoReq.Descripción
countryCode
string
opt
País del remitente. Si lo omites, se usa el país de tu empresa. Restricciones: exactamente 2 letras mayúsculas (ISO 3166-1 alpha-2). ej: CO
name
string
req
Nombre completo o razón social del remitente. Restricciones: máximo 255 caracteres. ej: Comercial Andina SAS
accountType
string
opt
Tipo de cuenta del remitente. Restricciones: máximo 50 caracteres. ej: Individual
Ciudad del remitente. Restricciones: máximo 100 caracteres. ej: Bogota
contactNumber
string
opt
Teléfono de contacto, incluyendo el código de país. Restricciones: máximo 50 caracteres. ej: +573001234567
identificationNumber
string
req
Número de documento del remitente. Ver reglas por país abajo. Restricciones: máximo 50 caracteres. ej: 9001234567
identificationType
string
req
Tipo de documento del remitente. Restricciones: máximo 50 caracteres. ej: NIT
email
string
opt
Correo del remitente. Restricciones: formato de email válido, máximo 100 caracteres. ej: remitter@partner.com
Reglas de validación del remitente
name, identificationNumber e identificationType son obligatorios y no pueden venir vacíos.
Las reglas por país se aplican según el país del remitente (countryCode, o el país de tu empresa si lo omites):
Remitente colombiano (CO):
identificationNumber debe ser numérico, de 1 a 10 dígitos. Si no, 400 REMITTER_IDENTIFICATION_INVALID.
name admite letras, dígitos, espacios y los caracteres . , ; : - * / & # $ % =. Los acentos se eliminan y los demás caracteres se reemplazan por espacios. Si tras esa limpieza el nombre queda vacío, la petición se rechaza con 400 REMITTER_NAME_INVALID.
Remitente chileno (CL): identificationNumber debe ser un RUT válido (con o sin puntos y guion, dígito verificador 0-9 o K). Si no, 400 REMITTER_RUT_INVALID.
Un mismo remitente (mismo identificationType e identificationNumber) no puede volver a enviarse con un país distinto al que se registró la primera vez. Si ocurre, 400 REMITTER_COUNTRY_CONFLICT.
Beneficiario por tipo de operación
beneficiary (operationType = BANK_TRANSFER)
Transferencia bancaria local a una cuenta en el país de destino.
CampoTipoReq.Descripción
operationType
string (enum)
req
BANK_TRANSFER.
destinationCurrency
string
req
Moneda de destino (3 a 5 caracteres). ej: COP
beneficiaryName
string
req
Nombre del beneficiario. ej: Juan
beneficiaryLastName
string
opt
Apellido del beneficiario. ej: Perez
typeBeneficiary
string (enum)
req
INDIVIDUAL (persona) o COMPANY (empresa).
email
string
opt
Correo del beneficiario. Formato válido, máximo 100 caracteres.
countryCode
string
req
País del banco de destino, 2 letras mayúsculas (ISO 3166-1 alpha-2). ej: CO
accountType
string (enum)
req
Tipo de cuenta. Valores según país: CL → SAVING, CHECKING, VISTA, RUT (billeteras digitales como Mercado Pago, Tenpo o prepago usan VISTA); CO → SAVING, CHECKING, ELECTRONIC; resto de países → SAVING, ELECTRONIC, CHECKING, NOT_APPLY.
bankId
int
opt
Identificador del banco de destino dentro de los bancos disponibles. ej: 1
accountNumber
string
req
Número de cuenta del beneficiario. ej: 1234567890123456
branchCode
string
opt
Código de sucursal (agência). Requerido para Brasil. Máximo 20 caracteres.
residenceCity
string
opt
Ciudad de residencia. Requerido para Venezuela, Brasil y Uruguay. Máximo 100 caracteres.
state
string
opt
Estado o provincia de residencia. Requerido para Venezuela, Brasil y Uruguay. Máximo 100 caracteres.
postalCode
string
opt
Código postal. Requerido para Venezuela, Brasil y Uruguay. Máximo 20 caracteres.
address
string
opt
Dirección de residencia. Requerido para Venezuela, Brasil y Uruguay. Máximo 200 caracteres.
documentNumber
string
req
Número de documento del beneficiario. Máximo 30 caracteres. ej: 232323234
documentType
string
req
Tipo de documento del beneficiario (p. ej. RUT, DNI, PASSPORT). Máximo 20 caracteres.
beneficiary (operationType = BANK_ROUTING)
Transferencia bancaria local que requiere código de ruteo más número de cuenta.
CampoTipoReq.Descripción
operationType
string (enum)
req
BANK_ROUTING.
destinationCurrency
string
req
Moneda de destino (3 a 5 caracteres). ej: USD
beneficiaryName
string
req
Nombre del beneficiario.
beneficiaryLastName
string
opt
Apellido del beneficiario.
typeBeneficiary
string (enum)
req
INDIVIDUAL o COMPANY.
email
string
opt
Correo del beneficiario. Formato válido, máximo 100 caracteres.
countryCode
string
req
País del banco de destino, 2 letras mayúsculas. ej: US
routingCode
string (enum)
req
Tipo de código de ruteo. Valores: ACH, SORT, BSB, IFSC, TRANSIT, AGENCIA.
routingValue
string
req
Valor de ruteo según routingCode: ACH = 9 dígitos, SORT = 6 dígitos, BSB = 6 dígitos, IFSC = 11 caracteres (^[A-Z]{4}0[A-Z0-9]{6}$), TRANSIT = 5 dígitos, AGENCIA = 4 dígitos. ej: 021000021
accountNumber
string
req
Número de cuenta del beneficiario.
accountType
string (enum)
opt
Tipo de cuenta. ej: CHECKING
bankId
int
opt
Identificador del banco de destino.
documentNumber
string
req
Número de documento del beneficiario. Máximo 30 caracteres.
documentType
string
req
Tipo de documento del beneficiario. Máximo 20 caracteres.
beneficiary (operationType = IBAN)
Transferencia bancaria vía IBAN.
CampoTipoReq.Descripción
operationType
string (enum)
req
IBAN.
destinationCurrency
string
req
Moneda de destino (3 a 5 caracteres). ej: EUR
beneficiaryName
string
req
Nombre del beneficiario.
beneficiaryLastName
string
opt
Apellido del beneficiario.
typeBeneficiary
string (enum)
req
INDIVIDUAL o COMPANY.
email
string
opt
Correo del beneficiario. Formato válido, máximo 100 caracteres.
countryCode
string
req
País del banco de destino, exactamente 2 caracteres. ej: ES
iban
string
req
IBAN del beneficiario. Máximo 34 caracteres, formato ^[A-Z]{2}[0-9]{2}[A-Z0-9]{1,30}$. ej: ES9121000418450200051332
documentNumber
string
req
Número de documento del beneficiario. Máximo 30 caracteres.
beneficiary (operationType = PIX)
Transferencia PIX en Brasil.
CampoTipoReq.Descripción
operationType
string (enum)
req
PIX.
destinationCurrency
string
req
Moneda de destino. ej: BRL
beneficiaryName
string
req
Nombre del beneficiario.
beneficiaryLastName
string
opt
Apellido del beneficiario.
typeBeneficiary
string (enum)
req
INDIVIDUAL o COMPANY.
email
string
opt
Correo del beneficiario. Formato válido, máximo 100 caracteres.
countryCode
string
req
País de destino, exactamente 2 caracteres. Para PIX debe ser BR.
pixKeyType
string (enum)
req
Tipo de clave PIX. Valores: EVP, DOCUMENT_NUMBER, EMAIL, PHONE.
pixKeyValue
string
req
Valor de la clave PIX. Máximo 77 caracteres. ej: joao.silva@email.com
documentNumber
string
req
Número de documento del beneficiario. Máximo 30 caracteres.
documentType
string (enum)
req
Tipo de documento. Valores: CPF, CNPJ.
Los tipos SWIFT, STABLECOINS y BREB también existen en el endpoint, pero no admiten el bloque remitter; se documentan en la guía del endpoint estándar de pagos, Esquemas y ejemplos.
Corredores disponibles
El bloque remitter solo se admite en los corredores de esta sección. Fuera de ellos, la petición se rechaza con 400 REMITTER_NOT_SUPPORTED_FOR_CORRIDOR. El corredor se determina por el país (beneficiary.countryCode), la moneda de destino (beneficiary.destinationCurrency) y el tipo de operación (beneficiary.operationType).
Reglas generales
transactionType debe ser REMITTANCE. Con P2P o EXCHANGE, enviar remitter devuelve 400 REMITTER_NOT_SUPPORTED_FOR_PAYMENT_TYPE.
paymentType debe ser WIRE_TRANSFER.
SWIFT, STABLECOINS y BREB (Bre-B) no se admiten con remitter.
El bloque remitter es opcional: sin él, la petición se comporta como el endpoint estándar de pagos y estas restricciones no aplican.
En cada tabla, la primera columna es el país, la segunda la moneda de destino y la tercera los tipos de operación permitidos.
Colombia y Chile
CampoTipoDescripción
Colombia (CO)
COP
BANK_TRANSFER. No disponible para cuentas destino en Bancolombia ni Nequi
Chile (CL)
CLP
BANK_TRANSFER. Requiere originCurrency CLP y un remitente chileno (CL) con RUT válido
Solo BANK_TRANSFER
CampoTipoDescripción
Bolivia (BO)
BOB
BANK_TRANSFER
Filipinas (PH)
PHP
BANK_TRANSFER
Guatemala (GT)
GTQ
BANK_TRANSFER
Marruecos (MA)
MAD
BANK_TRANSFER
Paraguay (PY)
PYG
BANK_TRANSFER
Perú (PE)
PEN
BANK_TRANSFER
República Dominicana (DO)
DOP
BANK_TRANSFER
Tailandia (TH)
THB
BANK_TRANSFER
Uruguay (UY)
UYU
BANK_TRANSFER
Venezuela (VE)
VES
BANK_TRANSFER
BANK_TRANSFER, IBAN o BANK_ROUTING
CampoTipoDescripción
Alemania (DE)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Australia (AU)
AUD
BANK_TRANSFER, IBAN, BANK_ROUTING
Austria (AT)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Bélgica (BE)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Bulgaria (BG)
BGN
BANK_TRANSFER, IBAN, BANK_ROUTING
China (CN)
CNY
BANK_TRANSFER, IBAN, BANK_ROUTING
Chipre (CY)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Ciudad del Vaticano (VA)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Croacia (HR)
HRK
BANK_TRANSFER, IBAN, BANK_ROUTING
Dinamarca (DK)
DKK
BANK_TRANSFER, IBAN, BANK_ROUTING
Eslovaquia (SK)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Eslovenia (SI)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
España (ES)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Estados Unidos (US)
USD
BANK_TRANSFER, IBAN, BANK_ROUTING
Finlandia (FI)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Francia (FR)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Grecia (GR)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Hungría (HU)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
India (IN)
INR
BANK_TRANSFER, IBAN, BANK_ROUTING
Irlanda (IE)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Islandia (IS)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Italia (IT)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Letonia (LV)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Liechtenstein (LI)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Lituania (LT)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Luxemburgo (LU)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Malasia (MY)
MYR
BANK_TRANSFER, IBAN, BANK_ROUTING
Malta (MT)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Mónaco (MC)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Montenegro (ME)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Nepal (NP)
NPR
BANK_TRANSFER, IBAN, BANK_ROUTING
Noruega (NO)
NOK
BANK_TRANSFER, IBAN, BANK_ROUTING
Países Bajos (NL)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Polonia (PL)
PLN
BANK_TRANSFER, IBAN, BANK_ROUTING
Portugal (PT)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Puerto Rico (PR)
USD
BANK_TRANSFER, IBAN, BANK_ROUTING
Reino Unido (GB)
EUR, GBP
BANK_TRANSFER, IBAN, BANK_ROUTING
República Checa (CZ)
CZK
BANK_TRANSFER, IBAN, BANK_ROUTING
Rumania (RO)
RON
BANK_TRANSFER, IBAN, BANK_ROUTING
San Marino (SM)
EUR
BANK_TRANSFER, IBAN, BANK_ROUTING
Singapur (SG)
SGD
BANK_TRANSFER, IBAN, BANK_ROUTING
Sri Lanka (LK)
LKR
BANK_TRANSFER, IBAN, BANK_ROUTING
Suecia (SE)
SEK
BANK_TRANSFER, IBAN, BANK_ROUTING
Vietnam (VN)
VND
BANK_TRANSFER, IBAN, BANK_ROUTING
Solo PIX
CampoTipoDescripción
Brasil (BR)
BRL
PIX
Ejemplo de body y de petición
Ejemplo de body (Colombia, COP, BANK_TRANSFER con remitente)
Copiar código
Ejemplo de petición
Guarda el body en payload.json y envíalo como la parte request. La parte voucher es opcional.
Copiar código
El token va directo en Authorization, sin Bearer. Si no adjuntas comprobante, omite la línea --form 'voucher=...'.
Respuesta 200
Copiar código
Campos (respuesta)
CampoTipoDescripción
valid
boolean
Indica si el payload superó todas las validaciones.
status
string (enum)
Estado de la petición. PROCESSING cuando el payload es aceptado; FAILED cuando es rechazado.
transactionId
int
Identificador de la transacción. Presente solo cuando se generó una transacción.
externalReferenceId
string
Identificador de referencia que enviaste.
violations
array<violación>
Lista de errores. Vacía cuando valid es true.
Campos (violación)
CampoTipoDescripción
source
string (enum)
Sección de la petición donde ocurrió el error (p. ej. REQUEST, BENEFICIARY, VOUCHER, CREDENTIAL).
field
string
Campo que no superó la validación (p. ej. amount, remitter.identificationNumber).
rule
string
Código de la regla incumplida (p. ej. NOT_NULL, NOT_BLANK, SIZE, PATTERN, REMITTER_RUT_INVALID).
severity
string (enum)
Severidad del error. Valores: ERROR, WARNING, INFO.
message
string
Descripción legible del error.
Los campos con valor nulo se omiten del JSON.
Errores
Cuerpo de error (misma estructura que la respuesta 200, con valid: false y status: FAILED):