{"componentChunkName":"component---src-templates-article-template-tsx","path":"/co/payouts/transfer/breb","result":{"data":{"article":{"title":"Dispersa con Bre-B","subtitle":null,"fullWidth":null,"hero":null,"heroTextColor":null,"heroImg":null,"content":[{"body":{"childMdx":{"body":"var _excluded = [\"components\"];\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n/* @jsxRuntime classic */\n/* @jsx mdx */\n\nvar _frontmatter = {};\nvar makeShortcode = function makeShortcode(name) {\n  return function MDXDefaultShortcode(props) {\n    console.warn(\"Component \" + name + \" was not imported, exported, or provided by MDXProvider as global scope\");\n    return mdx(\"div\", props);\n  };\n};\nvar Aside = makeShortcode(\"Aside\");\nvar CodeTabs = makeShortcode(\"CodeTabs\");\nvar NextStep = makeShortcode(\"NextStep\");\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n    props = _objectWithoutProperties(_ref, _excluded);\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"p\", null, \"Dispersar pagos con Bre-B consiste en entregar dinero en tiempo real a las cuentas de tus usuarios usando \\xFAnicamente una llave de pago del destinatario \\u2014 sin necesidad de conocer su n\\xFAmero de cuenta bancaria. Si ya cuentas con la llave de tus destinatarios (su c\\xE9dula, celular, correo, alias o c\\xF3digo de comercio), puedes usar tu cuenta de dispersi\\xF3n de Kushki para depositar directamente usando la l\\xF3gica que prefieras.\"), mdx(\"p\", null, \"Ideal para:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Pago a proveedores o vendedores\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Marketplaces\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Aplicaciones de delivery\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Plataformas gig economy\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Reembolsos y compensaciones\")), mdx(Aside, {\n    title: \"Importante\",\n    type: \"danger\",\n    mdxType: \"Aside\"\n  }, mdx(\"p\", null, \"Ten en cuenta que Bre-B est\\xE1 disponible exclusivamente para Colombia con el procesador Bre-B configurado en tu MID. Debido a nuestras pol\\xEDticas de riesgo, los medios de pago disponibles y el tipo de integraci\\xF3n pueden variar al momento en que formalices la afiliaci\\xF3n. Te indicaremos c\\xF3mo proceder en caso de que este proceso aplique para tu comercio.\")), mdx(\"h2\", {\n    \"id\": \"detalles-de-operación\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h2\",\n    \"href\": \"#detalles-de-operaci%C3%B3n\",\n    \"aria-label\": \"detalles de operación permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Detalles de operaci\\xF3n\"), mdx(\"p\", null, \"El proceso de dispersi\\xF3n con Bre-B en Colombia se realiza siguiendo el flujo: Comercio \\u2192 Kushki \\u2192 Banco de la Rep\\xFAblica (SPBVI) \\u2192 Banco Receptor \\u2192 Beneficiario.\"), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"strong\", {\n    parentName: \"th\"\n  }, \"Par\\xE1metro\")), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"strong\", {\n    parentName: \"th\"\n  }, \"Detalle\")))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"strong\", {\n    parentName: \"td\"\n  }, \"Monto m\\xEDnimo por transacci\\xF3n\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"1 COP\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"strong\", {\n    parentName: \"td\"\n  }, \"Monto m\\xE1ximo por transacci\\xF3n\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Equivalente a 1.000 UVT (Unidades de Valor Tributario, actualizado anualmente por la DIAN). Cada entidad financiera o usuario puede establecer l\\xEDmites inferiores diarios o por transacci\\xF3n.\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"strong\", {\n    parentName: \"td\"\n  }, \"Moneda\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"COP\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"strong\", {\n    parentName: \"td\"\n  }, \"Bancos disponibles\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Todos los bancos colombianos (reglamentaci\\xF3n del Banco de la Rep\\xFAblica)\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"strong\", {\n    parentName: \"td\"\n  }, \"Horario de procesamiento API\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"24/7\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"strong\", {\n    parentName: \"td\"\n  }, \"Tiempo de acreditamiento\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Tiempo real (m\\xE1ximo 30 segundos desde el inicio)\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"strong\", {\n    parentName: \"td\"\n  }, \"Tipo de respuesta\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"As\\xEDncrona \\u2014 el resultado final llega por webhook o por consulta al endpoint Get Status\")))), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Nota importante:\"), \" La API de Kushki recibe y procesa las peticiones 24/7. A diferencia de ACH, Bre-B no utiliza ciclos bancarios \\u2014 el procesamiento es en tiempo real a trav\\xE9s del SPBVI del Banco de la Rep\\xFAblica. No es necesario consultar el listado de bancos antes de tokenizar.\")), mdx(\"h2\", {\n    \"id\": \"flujo\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h2\",\n    \"href\": \"#flujo\",\n    \"aria-label\": \"flujo permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Flujo\"), mdx(\"p\", null, \"El flujo que integrar\\xE1s es el siguiente:\"), mdx(\"p\", null, \"Aqu\\xED aprender\\xE1s c\\xF3mo integrar las dispersiones de dinero con Bre-B.\"), mdx(\"h2\", {\n    \"id\": \"1-tokeniza-la-información\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h2\",\n    \"href\": \"#1-tokeniza-la-informaci%C3%B3n\",\n    \"aria-label\": \"1 tokeniza la información permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"1. Tokeniza la informaci\\xF3n\"), mdx(\"p\", null, \"El primer paso es obtener un token enviando la llave del destinatario a Kushki. A diferencia de ACH, \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"no necesitas consultar el listado de bancos\"), \" antes de este paso \\u2014 todos los bancos colombianos soportan transferencias a llaves por reglamentaci\\xF3n del Banco de la Rep\\xFAblica.\"), mdx(\"p\", null, \"Deber\\xE1s realizar la petici\\xF3n del token utilizando nuestro \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://api-docs.kushkipagos.com/docs/API-REFERENCE/transfer-out/request-a-transfer-out-token\"\n  }, \"endpoint de tokenizaci\\xF3n\"), \".\"), mdx(\"h3\", {\n    \"id\": \"campos-obligatorios-para-obtener-el-token\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h3\",\n    \"href\": \"#campos-obligatorios-para-obtener-el-token\",\n    \"aria-label\": \"campos obligatorios para obtener el token permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Campos obligatorios para obtener el token\"), mdx(\"p\", null, \"Ten en cuenta los campos requeridos en el cuerpo de la petici\\xF3n de token para Bre-B:\"), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"strong\", {\n    parentName: \"th\"\n  }, \"Dispersi\\xF3n con llave Bre-B (accountType = \", mdx(\"inlineCode\", {\n    parentName: \"strong\"\n  }, \"KI\"), \", \", mdx(\"inlineCode\", {\n    parentName: \"strong\"\n  }, \"KP\"), \", \", mdx(\"inlineCode\", {\n    parentName: \"strong\"\n  }, \"KE\"), \", \", mdx(\"inlineCode\", {\n    parentName: \"strong\"\n  }, \"KA\"), \", \", mdx(\"inlineCode\", {\n    parentName: \"strong\"\n  }, \"KM\"), \")\")))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"- \", mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"accountType\"), \" \", mdx(\"br\", null), \" - \", mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"accountNumber\"), \" \", mdx(\"br\", null), \" - \", mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"totalAmount\"), \" \", mdx(\"br\", null), \" - \", mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"currency\"))))), mdx(\"p\", null, \"Los campos \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"documentType\"), \", \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"documentNumber\"), \", \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"bankId\"), \" y \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"name\"), \" son \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"opcionales\"), \" para Bre-B en Colombia.\"), mdx(\"h3\", {\n    \"id\": \"tipos-de-llave-accounttype\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h3\",\n    \"href\": \"#tipos-de-llave-accounttype\",\n    \"aria-label\": \"tipos de llave accounttype permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Tipos de llave (\", mdx(\"inlineCode\", {\n    parentName: \"h3\"\n  }, \"accountType\"), \")\"), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"th\"\n  }, \"accountType\")), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Tipo de llave\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"KI\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"N\\xFAmero de identificaci\\xF3n\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"KP\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"N\\xFAmero de celular\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"KE\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Correo electr\\xF3nico\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"KA\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Alias alfanum\\xE9rico\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"KM\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"C\\xF3digo de comercio\")))), mdx(\"h3\", {\n    \"id\": \"formatos-válidos-para-accountnumber\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h3\",\n    \"href\": \"#formatos-v%C3%A1lidos-para-accountnumber\",\n    \"aria-label\": \"formatos válidos para accountnumber permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Formatos v\\xE1lidos para \", mdx(\"inlineCode\", {\n    parentName: \"h3\"\n  }, \"accountNumber\")), mdx(\"p\", null, \"El formato del \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"accountNumber\"), \" se valida antes de enviar cualquier solicitud a la red de pagos (fail-fast). Un formato inv\\xE1lido retorna \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"HTTP 400\"), \" de inmediato, sin llegar a consultar la red.\"), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"th\"\n  }, \"accountType\")), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Formato requerido en \", mdx(\"inlineCode\", {\n    parentName: \"th\"\n  }, \"accountNumber\")))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"KI\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Alfanum\\xE9rico en may\\xFAsculas. M\\xEDnimo 1 car\\xE1cter. Sin espacios ni caracteres especiales.\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"KP\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Exactamente 10 d\\xEDgitos. Debe iniciar con \", mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"3\"), \", seguido de 9 d\\xEDgitos.\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"KE\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Email v\\xE1lido. M\\xE1ximo 30 caracteres antes de \", mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"@\"), \" y 61 despu\\xE9s. Debe incluir dominio v\\xE1lido.\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"KA\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Debe iniciar con \", mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"@\"), \". Solo caracteres alfanum\\xE9ricos en may\\xFAsculas. Sin espacios ni caracteres especiales.\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"KM\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Exactamente 10 d\\xEDgitos. Debe iniciar con \", mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"00\"), \", seguido de 8 d\\xEDgitos.\")))), mdx(CodeTabs, {\n    group: \"backend\",\n    mdxType: \"CodeTabs\"\n  }, mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-javascript\"\n  }, \"var request = require('request');\\n\\n// Ejemplo con llave de celular (KP)\\nvar options = {\\n  'method': 'POST',\\n  'url': 'https://api-uat.kushkipagos.com/payouts/transfer/v1/tokens', // Ambiente de prueba\\n  'headers': {\\n    'Public-Merchant-Id': '', // Reemplaza con tu Public Key\\n    'Content-Type': 'application/json'\\n  },\\n  body: JSON.stringify({\\n    \\\"accountType\\\": \\\"KP\\\",\\n    \\\"accountNumber\\\": \\\"3001234567\\\",\\n    \\\"totalAmount\\\": 1000,\\n    \\\"currency\\\": \\\"COP\\\"\\n  })\\n};\\nrequest(options, function (error, response) {\\n  if (error) throw new Error(error);\\n  var jsonData = JSON.parse(response.body);\\n  console.log('Token:', jsonData.token);\\n  // Muestra jsonData.keyResolution al usuario para confirmar el destinatario\\n  console.log('Destinatario:', jsonData.keyResolution.ownerName);\\n});\\n\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-python\"\n  }, \"import requests\\nimport json\\n\\n# Ejemplo con llave de celular (KP)\\nurl = \\\"https://api-uat.kushkipagos.com/payouts/transfer/v1/tokens\\\" # Ambiente de prueba\\n\\npayload = json.dumps({\\n  \\\"accountType\\\": \\\"KP\\\",\\n  \\\"accountNumber\\\": \\\"3001234567\\\",\\n  \\\"totalAmount\\\": 1000,\\n  \\\"currency\\\": \\\"COP\\\"\\n})\\nheaders = {\\n  'Public-Merchant-Id': '',  # Reemplaza con tu Public Key\\n  'Content-Type': 'application/json'\\n}\\n\\nresponse = requests.request(\\\"POST\\\", url, headers=headers, data=payload)\\ndata = response.json()\\n\\nprint('Token:', data['token'])\\n# Muestra data['keyResolution'] al usuario para confirmar el destinatario\\nprint('Destinatario:', data['keyResolution']['ownerName'])\\n\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-php\"\n  }, \"$client = new http\\\\Client;\\n$request = new http\\\\Client\\\\Request;\\n\\n// Ejemplo con llave de celular (KP)\\n$request->setRequestUrl('https://api-uat.kushkipagos.com/payouts/transfer/v1/tokens'); // Ambiente de prueba\\n$request->setRequestMethod('POST');\\n$body = new http\\\\Message\\\\Body;\\n$body->append(json_encode([\\n  \\\"accountType\\\" => \\\"KP\\\",\\n  \\\"accountNumber\\\" => \\\"3001234567\\\",\\n  \\\"totalAmount\\\" => 1000,\\n  \\\"currency\\\" => \\\"COP\\\"\\n]));\\n$request->setBody($body);\\n$request->setOptions(array());\\n$request->setHeaders(array(\\n  'Public-Merchant-Id' => '', // Reemplaza con tu Public Key\\n  'Content-Type' => 'application/json'\\n));\\n$client->enqueue($request)->send();\\n$data = json_decode($client->getResponse()->getBody(), true);\\necho 'Token: ' . $data['token'];\\n// Muestra $data['keyResolution'] al usuario para confirmar el destinatario\\necho 'Destinatario: ' . $data['keyResolution']['ownerName'];\\n\"))), mdx(\"p\", null, \"La respuesta incluye el token \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"y\"), \" el objeto \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"keyResolution\"), \" con los datos del destinatario resueltos por la red de pagos:\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-json\"\n  }, \"{\\n  \\\"token\\\": \\\"53de1cb6bbb54011a0a98053d48677e0\\\",\\n  \\\"keyResolution\\\": {\\n    \\\"keyValue\\\": \\\"3001234567\\\",\\n    \\\"ownerName\\\": \\\"M**** G**** L****\\\"\\n  }\\n}\\n\")), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Campo\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Descripci\\xF3n\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"token\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Token de la transacci\\xF3n. Expira en \", mdx(\"strong\", {\n    parentName: \"td\"\n  }, \"30 minutos\"), \". De un solo uso, independientemente del resultado.\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"keyResolution.keyValue\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Valor exacto de la llave, sin transformaciones.\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"keyResolution.ownerName\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Nombre del titular, retornado \", mdx(\"strong\", {\n    parentName: \"td\"\n  }, \"enmascarado\"), \" por la red de pagos (ej: \", mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"M**** G**** L****\"), \").\")))), mdx(Aside, {\n    type: \"info\",\n    mdxType: \"Aside\"\n  }, mdx(\"p\", null, \"Revisa nuestra \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://api-docs.kushkipagos.com/docs/API-REFERENCE/transfer-out/request-a-transfer-out-token\"\n  }, \"Referencia de la API\"), \" para consultar todos los campos disponibles en el request y response del token.\")), mdx(\"h2\", {\n    \"id\": \"2-confirma-el-destinatario\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h2\",\n    \"href\": \"#2-confirma-el-destinatario\",\n    \"aria-label\": \"2 confirma el destinatario permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"2. Confirma el destinatario\"), mdx(\"p\", null, \"Ya que has obtenido el token y el objeto \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"keyResolution\"), \", \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"debes mostrar al operador o usuario final\"), \" la informaci\\xF3n del destinatario para confirmar que los datos son correctos antes de inicializar la transacci\\xF3n. Este paso es requerido por el Banco de la Rep\\xFAblica.\"), mdx(\"p\", null, \"Muestra al operador o usuario:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"El valor de la llave: \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"keyResolution.keyValue\")), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"El nombre del titular: \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"keyResolution.ownerName\"), \" (enmascarado, ej: \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"M**** G**** L****\"), \")\")), mdx(Aside, {\n    type: \"info\",\n    mdxType: \"Aside\"\n  }, mdx(\"p\", null, \"Ten en cuenta que es posible que no conozcas el nombre del titular de una llave (por ejemplo, si solo tienes el n\\xFAmero de c\\xE9dula). La red de pagos resuelve el nombre asociado a esa llave para que el usuario confirme la identidad del destinatario. Solo procede al siguiente paso despu\\xE9s de recibir la confirmaci\\xF3n.\")), mdx(\"h2\", {\n    \"id\": \"3-inicializa-la-transacción\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h2\",\n    \"href\": \"#3-inicializa-la-transacci%C3%B3n\",\n    \"aria-label\": \"3 inicializa la transacción permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"3. Inicializa la transacci\\xF3n\"), mdx(\"p\", null, \"Una vez confirmados los datos del destinatario, debes enviar el token obtenido e iniciar el proceso de dispersi\\xF3n con Kushki. Deber\\xE1s realizar una llamada a nuestro \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://api-docs.kushkipagos.com/docs/API-REFERENCE/transfer-out/init-transaction\"\n  }, \"endpoint de inicializaci\\xF3n\"), \" para iniciar el pago. Este paso descuenta el saldo inmediatamente de tu cuenta de dispersi\\xF3n.\"), mdx(Aside, {\n    title: \"Verifica tu saldo antes de inicializar\",\n    type: \"warning\",\n    mdxType: \"Aside\"\n  }, mdx(\"p\", null, \"Comprueba los fondos de tu comercio en Kushki antes de iniciar. Puedes verificar tu saldo en la Consola o usando el endpoint \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://api-docs.kushkipagos.com/docs/online-payments/transfer-out/operations/get-a-wallet-v-1-merchant-balance\"\n  }, \"Balance for Payouts\"), \".\")), mdx(Aside, {\n    type: \"info\",\n    mdxType: \"Aside\"\n  }, mdx(\"p\", null, \"Ten en cuenta que el campo \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"webhooks\"), \" en el body del Init debe enviarse como un \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"array\"), \". Envuelve tu objeto de configuraci\\xF3n entre corchetes \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"[ ]\"), \".\")), mdx(CodeTabs, {\n    group: \"backend\",\n    mdxType: \"CodeTabs\"\n  }, mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-javascript\"\n  }, \"var request = require('request');\\nvar options = {\\n  'method': 'POST',\\n  'url': 'https://api-uat.kushkipagos.com/payouts/transfer/v1/init', // Ambiente de prueba\\n  'headers': {\\n    'Private-Merchant-Id': '', // Reemplaza con tu Private Key\\n    'Content-Type': 'application/json'\\n  },\\n  body: JSON.stringify({\\n    \\\"token\\\": \\\"53de1cb6bbb54011a0a98053d48677e0\\\", // Reemplaza con el token recibido\\n    \\\"amount\\\": {\\n      \\\"subtotalIva\\\": 0,\\n      \\\"subtotalIva0\\\": 1000,\\n      \\\"iva\\\": 0\\n    },\\n    \\\"webhooks\\\": [\\n      {\\n        \\\"events\\\": [\\\"approvedTransaction\\\", \\\"declinedTransaction\\\"],\\n        \\\"urls\\\": [\\\"https://tu-endpoint.com/webhook\\\"]\\n      }\\n    ]\\n  })\\n};\\nrequest(options, function (error, response) {\\n  if (error) throw new Error(error);\\n  var jsonData = JSON.parse(response.body);\\n  console.log('ticketNumber:', jsonData.ticketNumber);\\n  console.log('status:', jsonData.status);\\n  // Guarda el ticketNumber para consultar el estado m\\xE1s adelante\\n});\\n\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-python\"\n  }, \"import requests\\nimport json\\n\\nurl = \\\"https://api-uat.kushkipagos.com/payouts/transfer/v1/init\\\" # Ambiente de prueba\\n\\npayload = json.dumps({\\n  \\\"token\\\": \\\"53de1cb6bbb54011a0a98053d48677e0\\\",  # Reemplaza con el token recibido\\n  \\\"amount\\\": {\\n    \\\"subtotalIva\\\": 0,\\n    \\\"subtotalIva0\\\": 1000,\\n    \\\"iva\\\": 0\\n  },\\n  \\\"webhooks\\\": [\\n    {\\n      \\\"events\\\": [\\\"approvedTransaction\\\", \\\"declinedTransaction\\\"],\\n      \\\"urls\\\": [\\\"https://tu-endpoint.com/webhook\\\"]\\n    }\\n  ]\\n})\\nheaders = {\\n  'Private-Merchant-Id': '',  # Reemplaza con tu Private Key\\n  'Content-Type': 'application/json'\\n}\\n\\nresponse = requests.request(\\\"POST\\\", url, headers=headers, data=payload)\\ndata = response.json()\\n\\nprint('ticketNumber:', data['ticketNumber'])\\nprint('status:', data['status'])\\n# Guarda el ticketNumber para consultar el estado m\\xE1s adelante\\n\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-php\"\n  }, \"$client = new http\\\\Client;\\n$request = new http\\\\Client\\\\Request;\\n$request->setRequestUrl('https://api-uat.kushkipagos.com/payouts/transfer/v1/init'); // Ambiente de prueba\\n$request->setRequestMethod('POST');\\n$body = new http\\\\Message\\\\Body;\\n$body->append(json_encode([\\n  \\\"token\\\" => \\\"53de1cb6bbb54011a0a98053d48677e0\\\", // Reemplaza con el token recibido\\n  \\\"amount\\\" => [\\n    \\\"subtotalIva\\\" => 0,\\n    \\\"subtotalIva0\\\" => 1000,\\n    \\\"iva\\\" => 0\\n  ],\\n  \\\"webhooks\\\" => [\\n    [\\n      \\\"events\\\" => [\\\"approvedTransaction\\\", \\\"declinedTransaction\\\"],\\n      \\\"urls\\\" => [\\\"https://tu-endpoint.com/webhook\\\"]\\n    ]\\n  ]\\n]));\\n$request->setBody($body);\\n$request->setOptions(array());\\n$request->setHeaders(array(\\n  'Private-Merchant-Id' => '', // Reemplaza con tu Private Key\\n  'Content-Type' => 'application/json'\\n));\\n$client->enqueue($request)->send();\\n$data = json_decode($client->getResponse()->getBody(), true);\\necho 'ticketNumber: ' . $data['ticketNumber'];\\necho 'status: ' . $data['status'];\\n// Guarda el ticketNumber para consultar el estado m\\xE1s adelante\\n\"))), mdx(Aside, {\n    type: \"info\",\n    mdxType: \"Aside\"\n  }, mdx(\"p\", null, \"Revisa nuestra \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://api-docs.kushkipagos.com\"\n  }, \"Referencia de la API\"), \" para mayor informaci\\xF3n sobre los campos disponibles en la respuesta, incluyendo \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"fullResponse V2\"), \" donde el objeto \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"keyResolution\"), \" se incluye dentro de \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"details\"), \".\")), mdx(\"p\", null, \"La respuesta entrega un \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"n\\xFAmero de ticket\"), \" y el \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"estado\"), \" de la transacci\\xF3n:\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-json\"\n  }, \"{\\n  \\\"status\\\": \\\"INITIALIZED\\\",\\n  \\\"ticketNumber\\\": \\\"1234567890\\\",\\n  \\\"transactionReference\\\": \\\"a1b2c3d4-e5f6-7890-abcd-ef1234567890\\\"\\n}\\n\")), mdx(\"h2\", {\n    \"id\": \"4-consulta-el-estado-de-la-transacción\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h2\",\n    \"href\": \"#4-consulta-el-estado-de-la-transacci%C3%B3n\",\n    \"aria-label\": \"4 consulta el estado de la transacción permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"4. Consulta el estado de la transacci\\xF3n\"), mdx(\"p\", null, \"Ahora que la dispersi\\xF3n est\\xE1 en proceso, puedes conocer el estado de la transacci\\xF3n utilizando \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"/notifications/webhooks/webhook-transfer-out\"\n  }, \"webhooks\"), \" o consultando manualmente utilizando nuestra \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://api-docs.kushkipagos.com/docs/API-REFERENCE/transfer-out/get-status\"\n  }, \"API\"), \".\"), mdx(\"h3\", {\n    \"id\": \"webhook\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h3\",\n    \"href\": \"#webhook\",\n    \"aria-label\": \"webhook permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Webhook\"), mdx(\"p\", null, \"El estado de la transacci\\xF3n se notifica autom\\xE1ticamente en el momento en que la transferencia es aprobada o declinada. El payload incluye el objeto \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"keyResolution\"), \" con \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"keyValue\"), \" y \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"ownerName\"), \".\"), mdx(Aside, {\n    mdxType: \"Aside\"\n  }, mdx(\"p\", null, \"Para configurar un webhook a tu comercio de prueba, es necesario que lo notifiques a nuestros agentes especificando la URL y el m\\xE9todo de pago, mediante correo electr\\xF3nico. Cuando recibas la notificaci\\xF3n, responde siempre con \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"HTTP 200\"), \".\")), mdx(\"h3\", {\n    \"id\": \"api\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h3\",\n    \"href\": \"#api\",\n    \"aria-label\": \"api permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"API\"), mdx(\"p\", null, \"Puedes utilizar nuestro endpoint \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://api-docs.kushkipagos.com/docs/API-REFERENCE/transfer-out/get-status\"\n  }, \"Get Status\"), \" para consultar manualmente el estado de una transacci\\xF3n espec\\xEDfica.\"), mdx(CodeTabs, {\n    group: \"backend\",\n    mdxType: \"CodeTabs\"\n  }, mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-javascript\"\n  }, \"var request = require('request');\\nvar options = {\\n  'method': 'GET',\\n  'url': 'https://api-uat.kushkipagos.com/payouts/transfer/v1/transaction/{{ticketNumber}}', // Reemplaza {{ticketNumber}}\\n  'headers': {\\n    'Private-Merchant-Id': '' // Reemplaza con tu Private Key\\n  }\\n};\\nrequest(options, function (error, response) {\\n  if (error) throw new Error(error);\\n  console.log(response.body);\\n});\\n\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-python\"\n  }, \"import requests\\n\\nticket_number = \\\"1234567890\\\"  # Reemplaza con el ticketNumber recibido\\nurl = f\\\"https://api-uat.kushkipagos.com/payouts/transfer/v1/transaction/{ticket_number}\\\"\\n\\nheaders = {\\n  'Private-Merchant-Id': ''  # Reemplaza con tu Private Key\\n}\\n\\nresponse = requests.request(\\\"GET\\\", url, headers=headers)\\nprint(response.text.encode('utf8'))\\n\")), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\",\n    \"className\": \"language-php\"\n  }, \"$client = new http\\\\Client;\\n$request = new http\\\\Client\\\\Request;\\n$ticketNumber = \\\"1234567890\\\"; // Reemplaza con el ticketNumber recibido\\n$request->setRequestUrl(\\\"https://api-uat.kushkipagos.com/payouts/transfer/v1/transaction/{$ticketNumber}\\\");\\n$request->setRequestMethod('GET');\\n$request->setOptions(array());\\n$request->setHeaders(array(\\n  'Private-Merchant-Id' => '' // Reemplaza con tu Private Key\\n));\\n$client->enqueue($request)->send();\\n$response = $client->getResponse();\\necho $response->getBody();\\n\"))), mdx(Aside, {\n    type: \"info\",\n    mdxType: \"Aside\"\n  }, mdx(\"p\", null, \"Para transacciones Bre-B, los campos \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"bankId\"), \", \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"documentNumber\"), \" y \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"documentType\"), \" retornan \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"vac\\xEDos o nulos\"), \" en la respuesta. La informaci\\xF3n del destinatario estar\\xE1 disponible \\xFAnicamente en el objeto \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"keyResolution\"), \".\")), mdx(\"h2\", {\n    \"id\": \"5-prueba-tu-integración\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h2\",\n    \"href\": \"#5-prueba-tu-integraci%C3%B3n\",\n    \"aria-label\": \"5 prueba tu integración permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"5. Prueba tu integraci\\xF3n\"), mdx(\"p\", null, \"El ambiente UAT de Bre-B opera sobre un sandbox de la red de pagos. Las respuestas son \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"simuladas\"), \" y replican el comportamiento productivo, pero no generan movimientos reales de dinero ni operaciones en la red.\"), mdx(Aside, {\n    type: \"info\",\n    mdxType: \"Aside\"\n  }, mdx(\"p\", null, \"Los valores de prueba a continuaci\\xF3n son exclusivos del ambiente UAT (\", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"api-uat.kushkipagos.com\"), \"). No los uses en producci\\xF3n.\")), mdx(\"h3\", {\n    \"id\": \"resolución-exitosa-de-llave\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h3\",\n    \"href\": \"#resoluci%C3%B3n-exitosa-de-llave\",\n    \"aria-label\": \"resolución exitosa de llave permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Resoluci\\xF3n exitosa de llave\"), mdx(\"p\", null, \"Usa estos valores para obtener un token con \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"keyResolution\"), \" resuelto. Todos retornan una transacci\\xF3n aprobada.\"), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"th\"\n  }, \"accountType\")), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"th\"\n  }, \"accountNumber\"), \" de prueba\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"th\"\n  }, \"keyResolution.ownerName\"), \" simulado\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"KP\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"3001234567\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"JUAN PEREZ\"))), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"KE\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"USUARIO@CORREO.COM\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"MARIA LOPEZ\"))), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"KA\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"@COLOMBIA\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"ANA MARTINEZ\"))), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"KM\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"0012345678\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"COMERCIO PRINCIPAL SAS\"))), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"KI\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"CC12345678\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"LUIS GOMEZ\"))))), mdx(Aside, {\n    type: \"info\",\n    title: \"ownerName en UAT\",\n    mdxType: \"Aside\"\n  }, mdx(\"p\", null, \"En el sandbox, \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"keyResolution.ownerName\"), \" se retorna \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"sin enmascarar\"), \" para facilitar la verificaci\\xF3n durante el desarrollo. En producci\\xF3n, el nombre siempre llega enmascarado (ej: \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"J*** P****\"), \").\")), mdx(\"h3\", {\n    \"id\": \"errores-en-tokenización-pt060\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h3\",\n    \"href\": \"#errores-en-tokenizaci%C3%B3n-pt060\",\n    \"aria-label\": \"errores en tokenización pt060 permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Errores en tokenizaci\\xF3n (PT060)\"), mdx(\"p\", null, \"Usa estos valores para simular una llave inv\\xE1lida o suspendida durante el paso de tokenizaci\\xF3n. Retornan \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"PT060\"), \" antes de que se inicie la transacci\\xF3n.\"), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"th\"\n  }, \"accountType\")), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"th\"\n  }, \"accountNumber\"), \" de prueba\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Escenario simulado\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"KE\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"BLOCKED@TEST.COM\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Llave suspendida\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"KM\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"0011111111\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Llave suspendida por el participante\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"KP\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"3000005001\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Error en la resoluci\\xF3n de la llave\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"KI\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"ERRDICE9994\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Error inesperado durante la resoluci\\xF3n\")))), mdx(\"h3\", {\n    \"id\": \"simulación-de-escenarios-de-pago-por-monto\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h3\",\n    \"href\": \"#simulaci%C3%B3n-de-escenarios-de-pago-por-monto\",\n    \"aria-label\": \"simulación de escenarios de pago por monto permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"Simulaci\\xF3n de escenarios de pago por monto\"), mdx(\"p\", null, \"Para simular respuestas de error en el procesamiento de pago, env\\xEDa el valor exacto indicado en el campo \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"totalAmount\"), \" del request de tokenizaci\\xF3n. Si el monto \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"no coincide\"), \" con ning\\xFAn valor de la tabla, la transacci\\xF3n resultar\\xE1 \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"aprobada\"), \".\"), mdx(Aside, {\n    type: \"warning\",\n    title: \"Solo son simulaciones\",\n    mdxType: \"Aside\"\n  }, mdx(\"p\", null, \"Estos montos no tienen ning\\xFAn significado econ\\xF3mico. Son \\xFAnicamente identificadores de escenario dentro del sandbox. No los uses en producci\\xF3n.\")), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Errores s\\xEDncronos\"), \" \\u2014 llegan directamente en la respuesta del endpoint \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"/init\"), \", sin necesidad de esperar el webhook:\"), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"th\"\n  }, \"totalAmount\")), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"th\"\n  }, \"responseCode\"), \" Kushki\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Descripci\\xF3n\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"4001\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"002\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Ha ocurrido un error inesperado\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"4002\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"068\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Monto Inv\\xE1lido\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"5001\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"073\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Transacci\\xF3n no permitida\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"5003\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"074\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Banco o cuenta no inscrita\")))), mdx(\"p\", null, mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Errores as\\xEDncronos\"), \" \\u2014 llegan a trav\\xE9s del webhook o al consultar Get Status, despu\\xE9s de que el \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"/init\"), \" retorna \", mdx(\"inlineCode\", {\n    parentName: \"p\"\n  }, \"INITIALIZED\"), \":\"), mdx(\"table\", null, mdx(\"thead\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"thead\"\n  }, mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"th\"\n  }, \"totalAmount\")), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"th\"\n  }, \"responseCode\"), \" Kushki\"), mdx(\"th\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Descripci\\xF3n\"))), mdx(\"tbody\", {\n    parentName: \"table\"\n  }, mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"6001\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"076\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Error al efectuar el pago\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"4016\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"045\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Fondos insuficientes\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"4017\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"077\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Pendiente respuesta de otros bancos\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"4019\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"077\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Pendiente respuesta de otros bancos\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"4020\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"041\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Ocurri\\xF3 un error en el sistema. Por favor, vuelve a intentarlo\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"9999\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"002\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Ha ocurrido un error inesperado\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"4006\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"080\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Cuenta destino inv\\xE1lida\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"4007\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"052\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"N\\xFAmero de cuenta inv\\xE1lido\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"4010\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"088\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Cuenta no existe\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"4011\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"091\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Cuenta con bloqueo transaccional\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"4012\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"071\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Valor de traslado inv\\xE1lido\")), mdx(\"tr\", {\n    parentName: \"tbody\"\n  }, mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"4013\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, mdx(\"inlineCode\", {\n    parentName: \"td\"\n  }, \"071\")), mdx(\"td\", {\n    parentName: \"tr\",\n    \"align\": null\n  }, \"Valor de traslado inv\\xE1lido\")))), mdx(\"h2\", {\n    \"id\": \"6-prepara-tu-certificación\",\n    \"style\": {\n      \"position\": \"relative\"\n    }\n  }, mdx(\"a\", {\n    parentName: \"h2\",\n    \"href\": \"#6-prepara-tu-certificaci%C3%B3n\",\n    \"aria-label\": \"6 prepara tu certificación permalink\",\n    \"className\": \"anchor before\"\n  }, mdx(\"svg\", {\n    parentName: \"a\",\n    \"aria-hidden\": \"true\",\n    \"focusable\": \"false\",\n    \"height\": \"16\",\n    \"version\": \"1.1\",\n    \"viewBox\": \"0 0 16 16\",\n    \"width\": \"16\"\n  }, mdx(\"path\", {\n    parentName: \"svg\",\n    \"fillRule\": \"evenodd\",\n    \"d\": \"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"\n  }))), \"6. Prepara tu certificaci\\xF3n\"), mdx(\"p\", null, \"Toma en consideraci\\xF3n las siguientes pautas para aprobar la certificaci\\xF3n t\\xE9cnica (requerida para obtener credenciales productivas):\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Los c\\xE1lculos de los montos son correctos (\", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"subtotalIva\"), \", \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"subtotalIva0\"), \", \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"iva\"), \").\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Mostrar mensajes en pantalla de acuerdo con las respuestas de Kushki.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Guardar y registrar todas las respuestas de Kushki (requeridas en caso de necesitar soporte).\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Mostrar el objeto \", mdx(\"inlineCode\", {\n    parentName: \"li\"\n  }, \"keyResolution\"), \" al operador o usuario y requerir confirmaci\\xF3n expl\\xEDcita antes de inicializar la transacci\\xF3n.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"El procesador configurado en la Consola corresponde a Bre-B.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Si no se requiere enviar comprobante al correo del cliente, no se debe especificar el email en la solicitud del token.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Si se reciben notificaciones por webhook correctamente, responder a la solicitud con un status 200.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"El bot\\xF3n de dispersi\\xF3n se deshabilita despu\\xE9s del primer clic para evitar doble env\\xEDo.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"El logo de Kushki debe ser visible para el cliente. Puedes encontrar nuestro logo en varios formatos \", mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://s3.amazonaws.com/kushki-cdn-production/docs/Logo+Kushki.zip\"\n  }, \"aqu\\xED\"), \".\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, \"Asegurarse de que en el cuerpo de la petici\\xF3n se env\\xEDen todos los campos requeridos en la \", mdx(\"a\", {\n    parentName: \"li\",\n    \"href\": \"https://api-docs.kushkipagos.com\"\n  }, \"referencia API\"), \".\")), mdx(\"hr\", null), mdx(NextStep, {\n    title: \"Acepta webhooks\",\n    link: \"/notifications/webhooks/webhook-transfer-out\",\n    type: \"recommended\",\n    side: \"left\",\n    mdxType: \"NextStep\"\n  }, mdx(\"p\", null, \"Maneja eventos post-dispersi\\xF3n de la manera correcta.\")), mdx(NextStep, {\n    title: \"C\\xF3digos de error\",\n    link: \"/payouts/transfer/breb-error-codes\",\n    side: \"right\",\n    type: \"recommended\",\n    mdxType: \"NextStep\"\n  }, mdx(\"p\", null, \"Consulta los c\\xF3digos de error para dispersiones con Bre-B.\")));\n}\n;\nMDXContent.isMDXComponent = true;","excerpt":"Dispersar pagos con Bre-B consiste en entregar dinero en tiempo real a las cuentas de tus usuarios usando únicamente una llave de pago del…","timeToRead":4,"tableOfContents":{"items":[{"url":"#detalles-de-operación","title":"Detalles de operación"},{"url":"#flujo","title":"Flujo"},{"url":"#1-tokeniza-la-información","title":"1. Tokeniza la información","items":[{"url":"#campos-obligatorios-para-obtener-el-token","title":"Campos obligatorios para obtener el token"},{"url":"#tipos-de-llave-accounttype","title":"Tipos de llave (accountType)"},{"url":"#formatos-válidos-para-accountnumber","title":"Formatos válidos para accountNumber"}]},{"url":"#2-confirma-el-destinatario","title":"2. Confirma el destinatario"},{"url":"#3-inicializa-la-transacción","title":"3. Inicializa la transacción"},{"url":"#4-consulta-el-estado-de-la-transacción","title":"4. Consulta el estado de la transacción","items":[{"url":"#webhook","title":"Webhook"},{"url":"#api","title":"API"}]},{"url":"#5-prueba-tu-integración","title":"5. Prueba tu integración","items":[{"url":"#resolución-exitosa-de-llave","title":"Resolución exitosa de llave"},{"url":"#errores-en-tokenización-pt060","title":"Errores en tokenización (PT060)"},{"url":"#simulación-de-escenarios-de-pago-por-monto","title":"Simulación de escenarios de pago por monto"}]},{"url":"#6-prepara-tu-certificación","title":"6. Prepara tu certificación"}]}}},"updatedAt":"12 mayo 2026","tabTitle":null}]}},"pageContext":{"country":"co","id":"437ad5d6-60bf-53cd-80c4-968cd2bd3246","locale":"es","localeDateFormat":"DD MMMM YYYY"}},"staticQueryHashes":["1632712422","2408418099","63159454"]}