Connect

Ejecutar pago Global66

Ejecuta una remesa, un P2P o un cambio de divisas desde una cuenta de la conexión.

Tool IDglobal66.pago.ejecutar
Nombre MCPglobal66__pago__ejecutar
Conectorglobal66
Planoaction
Scope (permiso)global66:pagos
Authconnection_credentials
Versión1
Sensiblesí
Deprecadono
ComportamientoreadOnly=false, destructive=true, idempotent=true, openWorld=true

Requiere conexión. Indica cuál en cada llamada: header X-Connect-Connection en REST y campo connectionId en el execute_write de MCP. No hay resolución implícita, ni siquiera con una sola conexión activa: la conexión es la empresa. El id sale de conexiones.estado.consultar.

Qué hace

MUEVE DINERO. Exige el preparacionId de global66.pago.validar, el MISMO pago validado y una Idempotency-Key estable. Solo quien validó puede ejecutar. Un reintento con la misma clave reenvía la misma referencia y Global66 no duplica el pago. Ante un timeout, reintenta con la misma clave o consulta global66.pago.estado; nunca uses una clave nueva ni valides de nuevo el mismo pago.

Entrada

CampoTipoRequeridoDescripción
preparacionIdstring ^g66p_[0-9a-z]{21}$sípreparacionId devuelto por global66.pago.validar para EXACTAMENTE este pago.
pagovalorsíPago según el contrato oficial de Global66; transactionType decide los campos.
voucherobjetonoComprobante opcional del pago (voucher). No es un recibo ni un DTE de Global66.
voucher.nombrestring `^[\w.- ]120.(pdfpngjpe?g)$`
voucher.tipo"application/pdf" · "image/png" · "image/jpeg"síTipo MIME; se comprueba contra el contenido.
voucher.contenidoBase64stringsíContenido en base64. El cuerpo completo de la tool está limitado a 256 KiB: el archivo efectivo debe ser menor que 192 KiB y dejar espacio para el resto del pago. No se registra en la bitácora.
JSON Schema de entrada
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "preparacionId": {
      "type": "string",
      "pattern": "^g66p_[0-9a-z]{21}$",
      "description": "preparacionId devuelto por global66.pago.validar para EXACTAMENTE este pago."
    },
    "pago": {
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "transactionType": {
              "type": "string",
              "const": "REMITTANCE",
              "description": "Remesa a un beneficiario externo."
            },
            "cuentaOrigenId": {
              "type": "string",
              "pattern": "^\\d{1,10}$",
              "description": "accountId (walletId) de la cuenta de origen, de global66.saldos.consultar. Se comprueba que pertenezca a la conexión."
            },
            "amount": {
              "type": "number",
              "minimum": 0,
              "description": "Monto en la moneda de origen (way ORIGIN) o en la de destino (way DESTINY)."
            },
            "way": {
              "type": "string",
              "enum": [
                "ORIGIN",
                "DESTINY"
              ],
              "description": "ORIGIN: amount es lo que se envía. DESTINY: amount es lo que recibe el beneficiario."
            },
            "description": {
              "description": "Glosa para el proveedor de pago; máximo 66 caracteres.",
              "type": "string",
              "maxLength": 66
            },
            "paymentType": {
              "type": "string",
              "enum": [
                "WIRE_TRANSFER",
                "SWIFT",
                "BREB"
              ],
              "description": "Riel de pago; los válidos para un destino salen de global66.medios_pago.listar."
            },
            "purposeCode": {
              "minItems": 1,
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "purposeCode": {
                    "type": "integer",
                    "minimum": -9007199254740991,
                    "maximum": 9007199254740991,
                    "description": "ID del propósito de global66.propositos.listar."
                  },
                  "amount": {
                    "description": "Monto de este propósito en moneda de origen.",
                    "type": "number"
                  }
                },
                "required": [
                  "purposeCode"
                ]
              },
              "description": "Propósitos de la remesa con su monto en moneda de origen."
            },
            "beneficiary": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "operationType": {
                      "type": "string",
                      "const": "BANK_TRANSFER",
                      "description": "Transferencia bancaria local."
                    },
                    "destinationCurrency": {
                      "type": "string",
                      "pattern": "^[A-Z]{3,5}$",
                      "description": "Moneda que recibe el beneficiario."
                    },
                    "beneficiaryName": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Nombre o razón social del beneficiario."
                    },
                    "beneficiaryLastName": {
                      "description": "Apellido del beneficiario.",
                      "type": "string"
                    },
                    "typeBeneficiary": {
                      "type": "string",
                      "enum": [
                        "INDIVIDUAL",
                        "COMPANY"
                      ],
                      "description": "Persona natural (INDIVIDUAL) o empresa (COMPANY)."
                    },
                    "email": {
                      "description": "Correo del beneficiario.",
                      "type": "string",
                      "maxLength": 100,
                      "format": "email",
                      "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
                    },
                    "countryCode": {
                      "type": "string",
                      "pattern": "^[A-Z]{2}$",
                      "description": "País ISO 3166-1 alfa-2."
                    },
                    "accountType": {
                      "type": "string",
                      "enum": [
                        "SAVING",
                        "ELECTRONIC",
                        "CHECKING",
                        "NOT_APPLY",
                        "VISTA",
                        "RUT"
                      ],
                      "description": "Tipo de cuenta bancaria del beneficiario."
                    },
                    "bankId": {
                      "description": "ID del banco en el catálogo de la ruta (bankingCodes de global66.destinos.listar).",
                      "type": "integer",
                      "minimum": -9007199254740991,
                      "maximum": 9007199254740991
                    },
                    "accountNumber": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Número de cuenta, como texto."
                    },
                    "branchCode": {
                      "description": "Sucursal (agência); requerida en algunos corredores.",
                      "type": "string",
                      "maxLength": 20
                    },
                    "residenceCity": {
                      "description": "Ciudad de residencia; requerida en VE, BR y UY.",
                      "type": "string",
                      "maxLength": 100
                    },
                    "state": {
                      "description": "Estado o provincia; requerido en VE, BR y UY.",
                      "type": "string",
                      "maxLength": 100
                    },
                    "postalCode": {
                      "description": "Código postal; requerido en VE, BR y UY.",
                      "type": "string",
                      "maxLength": 20
                    },
                    "address": {
                      "description": "Dirección; requerida en VE, BR y UY.",
                      "type": "string",
                      "maxLength": 200
                    },
                    "documentNumber": {
                      "type": "string",
                      "maxLength": 30,
                      "description": "Número de documento del beneficiario, como texto."
                    },
                    "documentType": {
                      "type": "string",
                      "maxLength": 20,
                      "description": "Tipo de documento (RUT, DNI, PASSPORT…); los válidos por país salen de global66.documentos.listar."
                    }
                  },
                  "required": [
                    "operationType",
                    "destinationCurrency",
                    "beneficiaryName",
                    "typeBeneficiary",
                    "countryCode",
                    "accountType",
                    "accountNumber",
                    "documentNumber",
                    "documentType"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "operationType": {
                      "type": "string",
                      "const": "BANK_ROUTING",
                      "description": "Cuenta con código de ruteo (ACH, SORT, BSB, IFSC, TRANSIT, AGENCIA)."
                    },
                    "destinationCurrency": {
                      "type": "string",
                      "pattern": "^[A-Z]{3,5}$",
                      "description": "Moneda que recibe el beneficiario."
                    },
                    "beneficiaryName": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Nombre o razón social del beneficiario."
                    },
                    "beneficiaryLastName": {
                      "description": "Apellido del beneficiario.",
                      "type": "string"
                    },
                    "typeBeneficiary": {
                      "type": "string",
                      "enum": [
                        "INDIVIDUAL",
                        "COMPANY"
                      ],
                      "description": "Persona natural (INDIVIDUAL) o empresa (COMPANY)."
                    },
                    "email": {
                      "description": "Correo del beneficiario.",
                      "type": "string",
                      "maxLength": 100,
                      "format": "email",
                      "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
                    },
                    "countryCode": {
                      "type": "string",
                      "pattern": "^[A-Z]{2}$",
                      "description": "País ISO 3166-1 alfa-2."
                    },
                    "routingCode": {
                      "type": "string",
                      "enum": [
                        "ACH",
                        "SORT",
                        "BSB",
                        "IFSC",
                        "TRANSIT",
                        "AGENCIA"
                      ],
                      "description": "Tipo de código de ruteo; fija el formato de routingValue."
                    },
                    "routingValue": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Valor de ruteo, como texto."
                    },
                    "accountNumber": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Número de cuenta, como texto."
                    },
                    "accountType": {
                      "type": "string",
                      "enum": [
                        "SAVING",
                        "ELECTRONIC",
                        "CHECKING",
                        "NOT_APPLY",
                        "VISTA",
                        "RUT"
                      ],
                      "description": "Tipo de cuenta bancaria del beneficiario."
                    },
                    "bankId": {
                      "description": "ID del banco en el catálogo de la ruta.",
                      "type": "integer",
                      "minimum": -9007199254740991,
                      "maximum": 9007199254740991
                    },
                    "documentNumber": {
                      "type": "string",
                      "maxLength": 30,
                      "description": "Número de documento del beneficiario, como texto."
                    },
                    "documentType": {
                      "type": "string",
                      "maxLength": 20,
                      "description": "Tipo de documento (RUT, DNI, PASSPORT…); los válidos por país salen de global66.documentos.listar."
                    }
                  },
                  "required": [
                    "operationType",
                    "destinationCurrency",
                    "beneficiaryName",
                    "typeBeneficiary",
                    "countryCode",
                    "routingCode",
                    "routingValue",
                    "accountNumber",
                    "documentNumber",
                    "documentType"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "operationType": {
                      "type": "string",
                      "const": "SWIFT",
                      "description": "Transferencia internacional SWIFT."
                    },
                    "destinationCurrency": {
                      "type": "string",
                      "pattern": "^[A-Z]{3,5}$",
                      "description": "Moneda que recibe el beneficiario."
                    },
                    "beneficiaryName": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Nombre o razón social del beneficiario."
                    },
                    "beneficiaryLastName": {
                      "description": "Apellido del beneficiario.",
                      "type": "string"
                    },
                    "typeBeneficiary": {
                      "type": "string",
                      "enum": [
                        "INDIVIDUAL",
                        "COMPANY"
                      ],
                      "description": "Persona natural (INDIVIDUAL) o empresa (COMPANY)."
                    },
                    "email": {
                      "description": "Correo del beneficiario.",
                      "type": "string",
                      "maxLength": 100,
                      "format": "email",
                      "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
                    },
                    "countryCode": {
                      "type": "string",
                      "pattern": "^[A-Z]{2}$",
                      "description": "País ISO 3166-1 alfa-2."
                    },
                    "swiftCode": {
                      "type": "string",
                      "pattern": "^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$",
                      "description": "BIC de 8 u 11 caracteres."
                    },
                    "accountNumber": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Número de cuenta internacional, como texto."
                    },
                    "documentNumber": {
                      "type": "string",
                      "maxLength": 30,
                      "description": "Número de documento del beneficiario, como texto."
                    },
                    "documentType": {
                      "type": "string",
                      "maxLength": 20,
                      "description": "Tipo de documento (RUT, DNI, PASSPORT…); los válidos por país salen de global66.documentos.listar."
                    }
                  },
                  "required": [
                    "operationType",
                    "destinationCurrency",
                    "beneficiaryName",
                    "typeBeneficiary",
                    "countryCode",
                    "swiftCode",
                    "accountNumber",
                    "documentNumber",
                    "documentType"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "operationType": {
                      "type": "string",
                      "const": "IBAN",
                      "description": "Transferencia a una cuenta IBAN."
                    },
                    "destinationCurrency": {
                      "type": "string",
                      "pattern": "^[A-Z]{3,5}$",
                      "description": "Moneda que recibe el beneficiario."
                    },
                    "beneficiaryName": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Nombre o razón social del beneficiario."
                    },
                    "beneficiaryLastName": {
                      "description": "Apellido del beneficiario.",
                      "type": "string"
                    },
                    "typeBeneficiary": {
                      "type": "string",
                      "enum": [
                        "INDIVIDUAL",
                        "COMPANY"
                      ],
                      "description": "Persona natural (INDIVIDUAL) o empresa (COMPANY)."
                    },
                    "email": {
                      "description": "Correo del beneficiario.",
                      "type": "string",
                      "maxLength": 100,
                      "format": "email",
                      "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
                    },
                    "countryCode": {
                      "type": "string",
                      "pattern": "^[A-Z]{2}$",
                      "description": "País ISO 3166-1 alfa-2."
                    },
                    "iban": {
                      "type": "string",
                      "maxLength": 34,
                      "pattern": "^[A-Z]{2}[0-9]{2}[A-Z0-9]{1,30}$",
                      "description": "IBAN del beneficiario."
                    },
                    "documentNumber": {
                      "type": "string",
                      "maxLength": 30,
                      "description": "Número de documento del beneficiario, como texto."
                    },
                    "documentType": {
                      "type": "string",
                      "maxLength": 20,
                      "description": "Tipo de documento (RUT, DNI, PASSPORT…); los válidos por país salen de global66.documentos.listar."
                    }
                  },
                  "required": [
                    "operationType",
                    "destinationCurrency",
                    "beneficiaryName",
                    "typeBeneficiary",
                    "countryCode",
                    "iban",
                    "documentNumber"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "operationType": {
                      "type": "string",
                      "const": "PIX",
                      "description": "PIX en Brasil."
                    },
                    "destinationCurrency": {
                      "type": "string",
                      "pattern": "^[A-Z]{3,5}$",
                      "description": "Moneda que recibe el beneficiario."
                    },
                    "beneficiaryName": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Nombre o razón social del beneficiario."
                    },
                    "beneficiaryLastName": {
                      "description": "Apellido del beneficiario.",
                      "type": "string"
                    },
                    "typeBeneficiary": {
                      "type": "string",
                      "enum": [
                        "INDIVIDUAL",
                        "COMPANY"
                      ],
                      "description": "Persona natural (INDIVIDUAL) o empresa (COMPANY)."
                    },
                    "email": {
                      "description": "Correo del beneficiario.",
                      "type": "string",
                      "maxLength": 100,
                      "format": "email",
                      "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
                    },
                    "countryCode": {
                      "type": "string",
                      "pattern": "^[A-Z]{2}$",
                      "description": "País ISO 3166-1 alfa-2."
                    },
                    "pixKeyType": {
                      "type": "string",
                      "enum": [
                        "EVP",
                        "DOCUMENT_NUMBER",
                        "EMAIL",
                        "PHONE"
                      ],
                      "description": "Tipo de llave PIX."
                    },
                    "pixKeyValue": {
                      "type": "string",
                      "maxLength": 77,
                      "description": "Valor de la llave PIX."
                    },
                    "documentNumber": {
                      "type": "string",
                      "maxLength": 30,
                      "description": "Número de documento del beneficiario, como texto."
                    },
                    "documentType": {
                      "type": "string",
                      "enum": [
                        "CPF",
                        "CNPJ"
                      ],
                      "description": "CPF o CNPJ."
                    }
                  },
                  "required": [
                    "operationType",
                    "destinationCurrency",
                    "beneficiaryName",
                    "typeBeneficiary",
                    "countryCode",
                    "pixKeyType",
                    "pixKeyValue",
                    "documentNumber",
                    "documentType"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "operationType": {
                      "type": "string",
                      "const": "STABLECOINS",
                      "description": "Envío a una billetera de stablecoins."
                    },
                    "destinationCurrency": {
                      "type": "string",
                      "pattern": "^[A-Z]{3,5}$",
                      "description": "Moneda que recibe el beneficiario."
                    },
                    "beneficiaryName": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Nombre o razón social del beneficiario."
                    },
                    "beneficiaryLastName": {
                      "description": "Apellido del beneficiario.",
                      "type": "string"
                    },
                    "typeBeneficiary": {
                      "type": "string",
                      "enum": [
                        "INDIVIDUAL",
                        "COMPANY"
                      ],
                      "description": "Persona natural (INDIVIDUAL) o empresa (COMPANY)."
                    },
                    "email": {
                      "description": "Correo del beneficiario.",
                      "type": "string",
                      "maxLength": 100,
                      "format": "email",
                      "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
                    },
                    "stablecoin": {
                      "type": "string",
                      "enum": [
                        "USDC",
                        "USDT",
                        "PYUSD"
                      ],
                      "description": "Stablecoin."
                    },
                    "network": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Red, por ejemplo SOLANA o ETHEREUM."
                    },
                    "walletAddress": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Dirección de la billetera en la red indicada."
                    }
                  },
                  "required": [
                    "operationType",
                    "destinationCurrency",
                    "beneficiaryName",
                    "typeBeneficiary",
                    "stablecoin",
                    "network",
                    "walletAddress"
                  ]
                },
                {
                  "type": "object",
                  "properties": {
                    "operationType": {
                      "type": "string",
                      "const": "BREB",
                      "description": "Llave Bre-B en Colombia."
                    },
                    "destinationCurrency": {
                      "type": "string",
                      "pattern": "^[A-Z]{3,5}$",
                      "description": "Moneda que recibe el beneficiario."
                    },
                    "beneficiaryName": {
                      "type": "string",
                      "minLength": 1,
                      "description": "Nombre o razón social del beneficiario."
                    },
                    "beneficiaryLastName": {
                      "description": "Apellido del beneficiario.",
                      "type": "string"
                    },
                    "typeBeneficiary": {
                      "type": "string",
                      "enum": [
                        "INDIVIDUAL",
                        "COMPANY"
                      ],
                      "description": "Persona natural (INDIVIDUAL) o empresa (COMPANY)."
                    },
                    "email": {
                      "description": "Correo del beneficiario.",
                      "type": "string",
                      "maxLength": 100,
                      "format": "email",
                      "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"
                    },
                    "countryCode": {
                      "type": "string",
                      "const": "CO",
                      "description": "Bre-B solo existe en Colombia."
                    },
                    "keyValue": {
                      "type": "string",
                      "maxLength": 92,
                      "description": "Llave Bre-B: celular, correo, documento o alfanumérica."
                    },
                    "documentType": {
                      "type": "string",
                      "maxLength": 20,
                      "description": "Tipo de documento (RUT, DNI, PASSPORT…); los válidos por país salen de global66.documentos.listar."
                    },
                    "documentNumber": {
                      "type": "string",
                      "maxLength": 30,
                      "description": "Número de documento del beneficiario, como texto."
                    }
                  },
                  "required": [
                    "operationType",
                    "destinationCurrency",
                    "beneficiaryName",
                    "typeBeneficiary",
                    "countryCode",
                    "keyValue"
                  ]
                }
              ],
              "description": "Beneficiario de la remesa; operationType decide los campos. Global66 no permite crear beneficiarios por API: estos datos viajan en cada pago."
            }
          },
          "required": [
            "transactionType",
            "cuentaOrigenId",
            "amount",
            "way",
            "paymentType",
            "purposeCode",
            "beneficiary"
          ]
        },
        {
          "type": "object",
          "properties": {
            "transactionType": {
              "type": "string",
              "const": "P2P",
              "description": "Pago a otro usuario de Global66."
            },
            "cuentaOrigenId": {
              "type": "string",
              "pattern": "^\\d{1,10}$",
              "description": "accountId (walletId) de la cuenta de origen, de global66.saldos.consultar. Se comprueba que pertenezca a la conexión."
            },
            "amount": {
              "type": "number",
              "minimum": 0,
              "description": "Monto en la moneda de origen (way ORIGIN) o en la de destino (way DESTINY)."
            },
            "way": {
              "type": "string",
              "enum": [
                "ORIGIN",
                "DESTINY"
              ],
              "description": "ORIGIN: amount es lo que se envía. DESTINY: amount es lo que recibe el beneficiario."
            },
            "description": {
              "description": "Glosa para el proveedor de pago; máximo 66 caracteres.",
              "type": "string",
              "maxLength": 66
            },
            "paymentType": {
              "type": "string",
              "enum": [
                "WIRE_TRANSFER",
                "SWIFT",
                "BREB"
              ],
              "description": "Riel de pago; los válidos para un destino salen de global66.medios_pago.listar."
            },
            "operationType": {
              "type": "string",
              "const": "P2P",
              "description": "Siempre P2P."
            },
            "destinationCurrency": {
              "type": "string",
              "pattern": "^[A-Z]{3,5}$",
              "description": "Código de moneda ISO 4217 o de Global66 (3 a 5 letras mayúsculas)."
            },
            "purposeCode": {
              "minItems": 1,
              "type": "array",
              "items": {
                "type": "integer",
                "minimum": -9007199254740991,
                "maximum": 9007199254740991
              },
              "description": "IDs de propósito."
            },
            "beneficiary": {
              "type": "object",
              "properties": {
                "username": {
                  "type": "string",
                  "minLength": 1,
                  "description": "Usuario Global66 del destinatario."
                },
                "typeBeneficiary": {
                  "type": "string",
                  "enum": [
                    "INDIVIDUAL",
                    "COMPANY"
                  ],
                  "description": "Persona natural (INDIVIDUAL) o empresa (COMPANY)."
                }
              },
              "required": [
                "username",
                "typeBeneficiary"
              ],
              "description": "Destinatario P2P."
            }
          },
          "required": [
            "transactionType",
            "cuentaOrigenId",
            "amount",
            "way",
            "paymentType",
            "operationType",
            "destinationCurrency",
            "purposeCode",
            "beneficiary"
          ]
        },
        {
          "type": "object",
          "properties": {
            "transactionType": {
              "type": "string",
              "const": "EXCHANGE",
              "description": "Cambio de divisas entre cuentas propias."
            },
            "cuentaOrigenId": {
              "type": "string",
              "pattern": "^\\d{1,10}$",
              "description": "accountId (walletId) de la cuenta de origen, de global66.saldos.consultar. Se comprueba que pertenezca a la conexión."
            },
            "amount": {
              "type": "number",
              "minimum": 0,
              "description": "Monto en la moneda de origen (way ORIGIN) o en la de destino (way DESTINY)."
            },
            "way": {
              "type": "string",
              "enum": [
                "ORIGIN",
                "DESTINY"
              ],
              "description": "ORIGIN: amount es lo que se envía. DESTINY: amount es lo que recibe el beneficiario."
            },
            "description": {
              "description": "Glosa para el proveedor de pago; máximo 66 caracteres.",
              "type": "string",
              "maxLength": 66
            },
            "paymentType": {
              "type": "string",
              "enum": [
                "WIRE_TRANSFER",
                "SWIFT",
                "BREB"
              ],
              "description": "Riel de pago; los válidos para un destino salen de global66.medios_pago.listar."
            },
            "operationType": {
              "type": "string",
              "const": "EXCHANGE",
              "description": "Siempre EXCHANGE."
            },
            "destinationCurrency": {
              "type": "string",
              "pattern": "^[A-Z]{3,5}$",
              "description": "Código de moneda ISO 4217 o de Global66 (3 a 5 letras mayúsculas)."
            }
          },
          "required": [
            "transactionType",
            "cuentaOrigenId",
            "amount",
            "way",
            "paymentType",
            "operationType",
            "destinationCurrency"
          ]
        }
      ],
      "description": "Pago según el contrato oficial de Global66; transactionType decide los campos."
    },
    "voucher": {
      "type": "object",
      "properties": {
        "nombre": {
          "type": "string",
          "pattern": "^[\\w.\\- ]{1,120}\\.(pdf|png|jpe?g)$",
          "description": "Nombre del archivo; PDF, PNG, JPG o JPEG."
        },
        "tipo": {
          "type": "string",
          "enum": [
            "application/pdf",
            "image/png",
            "image/jpeg"
          ],
          "description": "Tipo MIME; se comprueba contra el contenido."
        },
        "contenidoBase64": {
          "type": "string",
          "maxLength": 6990508,
          "description": "Contenido en base64. El cuerpo completo de la tool está limitado a 256 KiB: el archivo efectivo debe ser menor que 192 KiB y dejar espacio para el resto del pago. No se registra en la bitácora."
        }
      },
      "required": [
        "nombre",
        "tipo",
        "contenidoBase64"
      ],
      "description": "Comprobante opcional del pago (voucher). No es un recibo ni un DTE de Global66."
    }
  },
  "required": [
    "preparacionId",
    "pago"
  ]
}

Salida

CampoTipoRequeridoDescripción
estado"aceptado" · "rechazado" · "duplicado_conciliado"síaceptado: Global66 recibió la orden (no significa que el dinero llegó). rechazado: valid:false, no se ejecutó; corrige, valida de nuevo y usa otra Idempotency-Key. duplicado_conciliado: Global66 ya tenía esta referencia y se devolvió su estado.
externalReferenceIdstringsíReferencia enviada a Global66; consulta su estado con global66.pago.estado.
preparacionIdstringsíPreparación consumida por esta ejecución.
transactionIdstringnullsí
apiStatusstringnullsí
violacioneslista de objetosíViolaciones si fue rechazado.
violaciones[].sourcestringnullsí
violaciones[].fieldstringnullsí
violaciones[].rulestringnullsí
violaciones[].severitystringnullsí
violaciones[].messagestringnullsí
resumenobjetosíLo ejecutado.
resumen.cuentaOrigenIdstringsíCuenta de origen.
resumen.monedaOrigenstringsíMoneda de la cuenta de origen.
resumen.transactionTypestringsíREMITTANCE, P2P o EXCHANGE.
resumen.montonúmerosíamount del pago.
resumen.waystringsíORIGIN o DESTINY.
resumen.monedaDestinostringnullsí
resumen.beneficiariostringnullsí
JSON Schema de salida
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "estado": {
      "type": "string",
      "enum": [
        "aceptado",
        "rechazado",
        "duplicado_conciliado"
      ],
      "description": "aceptado: Global66 recibió la orden (no significa que el dinero llegó). rechazado: valid:false, no se ejecutó; corrige, valida de nuevo y usa otra Idempotency-Key. duplicado_conciliado: Global66 ya tenía esta referencia y se devolvió su estado."
    },
    "externalReferenceId": {
      "type": "string",
      "description": "Referencia enviada a Global66; consulta su estado con global66.pago.estado."
    },
    "preparacionId": {
      "type": "string",
      "description": "Preparación consumida por esta ejecución."
    },
    "transactionId": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "ID de transacción de Global66, como texto."
    },
    "apiStatus": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "description": "Estado de la petición en la API (PENDING, PROCESSING, COMPLETED, FAILED). COMPLETED no confirma que el beneficiario recibió el dinero."
    },
    "violaciones": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "source": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "description": "Sección donde falló: REQUEST, BENEFICIARY, ROUTES, VOUCHER, WALLET…"
          },
          "field": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "description": "Campo que falló."
          },
          "rule": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "description": "Regla incumplida, por ejemplo NOT_NULL."
          },
          "severity": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "description": "ERROR, WARNING o INFO."
          },
          "message": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "description": "Explicación de Global66."
          }
        },
        "required": [
          "source",
          "field",
          "rule",
          "severity",
          "message"
        ],
        "additionalProperties": false,
        "description": "Violación informada por Global66."
      },
      "description": "Violaciones si fue rechazado."
    },
    "resumen": {
      "type": "object",
      "properties": {
        "cuentaOrigenId": {
          "type": "string",
          "description": "Cuenta de origen."
        },
        "monedaOrigen": {
          "type": "string",
          "description": "Moneda de la cuenta de origen."
        },
        "transactionType": {
          "type": "string",
          "description": "REMITTANCE, P2P o EXCHANGE."
        },
        "monto": {
          "type": "number",
          "description": "amount del pago."
        },
        "way": {
          "type": "string",
          "description": "ORIGIN o DESTINY."
        },
        "monedaDestino": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Moneda que recibe el destino."
        },
        "beneficiario": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "description": "Nombre, usuario o cuenta destino resumidos."
        }
      },
      "required": [
        "cuentaOrigenId",
        "monedaOrigen",
        "transactionType",
        "monto",
        "way",
        "monedaDestino",
        "beneficiario"
      ],
      "additionalProperties": false,
      "description": "Lo ejecutado."
    }
  },
  "required": [
    "estado",
    "externalReferenceId",
    "preparacionId",
    "transactionId",
    "apiStatus",
    "violaciones",
    "resumen"
  ],
  "additionalProperties": false
}

Errores de esta tool

CódigoHTTPReintentableQué hacer
connection_disabled403noReactívala en /connections o usa otra conexión del mismo sistema.
connection_not_found404noUsa uno de los connectionId que lista el error, o revisa la conexión en /connections. No hace falta reactivar nada.
connection_credential_required428noCrea un enlace con conexiones.enlace.crear (modo reconectar si la conexión ya existe) y pide a la persona que entregue la credencial de nuevo. No reintentes con la credencial anterior.
connection_busy409síEspera unos segundos y reintenta. Es una espera transitoria: no necesitas volver a conectar ni ingresar la credencial otra vez.
upstream_error502síReintenta más tarde. Si persiste, el problema está en el sistema externo, no en tu integración.
timeout504síReintenta. Para sincronizaciones largas usa la vía asíncrona y consulta el estado del trabajo.
connector_onboarding_required428noLee el mensaje: dice qué falta. Se completa en el portal de ese sistema, no en Connect, y después la llamada funciona sin cambios.
connection_scope_not_enabled403noPide a un owner/admin que habilite el scope en /connections para esa conexión, o usa otra que ya lo tenga activo. Cambiar la credencial del actor no resuelve este error.
rate_limited429síEspera y reintenta con backoff exponencial.
upstream_unexpected_response502noNo reintentes: la respuesta es determinista. Repórtalo con el request_id para que actualicemos el conector.

Toda llamada puede devolver además los códigos transversales (validation_error, unauthorized, scope_not_granted, rate_limited, entre otros): el detalle vive en el catálogo de errores.

En esta página