A integração ClearPago envolve três camadas principais: o seu sistema, a plataforma ClearPago e o parceiro BaaS. Cada camada tem responsabilidades bem definidas.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"ClearPago","description":"Documentação oficial da API Pix ClearPago — integração, referência e operações.","colors":{"primary":"#0f766e"},"logo":{"light":"https://mintcdn.com/clearpago/mSJ86kniaUbCKbT4/logo_lightmode.png?fit=max\u0026auto=format\u0026n=mSJ86kniaUbCKbT4\u0026q=85\u0026s=874e04286f63996eee39a525d0e88605","dark":"https://mintcdn.com/clearpago/mSJ86kniaUbCKbT4/logo_darkmode.png?fit=max\u0026auto=format\u0026n=mSJ86kniaUbCKbT4\u0026q=85\u0026s=b1d1e55f3c47423ae78c56d021c837f6"},"footer":{"socials":{}},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"clearpago","hasAudioNarration":false,"actualSubdomain":"clearpago","customDomains":["docs.clearpago.com"],"gitSource":{"type":"github","owner":"europixgopay","repo":"doc-clearpago","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6a21b6e8b246900909733949","collectionId":"d62e408a-61dd-4644-a467-75b991618918","schemaVersion":"v2"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6a21b6e8b246900909733949:success","clientVersion":"0.0.3971","searchFilterCounts":[{"language":"default","tag":"Referência de API","count":17},{"language":"default","tag":"Guias","count":8},{"language":"default","tag":"Webhooks","count":7},{"language":"default","tag":"Conceitos","count":6},{"language":"default","tag":"Introdução","count":5},{"language":"default","tag":"Cash-out","count":4},{"language":"default","tag":"Cash-in","count":3},{"language":"default","tag":"Refund","count":3},{"language":"default","tag":"Erros","count":3},{"language":"default","tag":"Go-live","count":3}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"core-concepts/architecture","slug":"/core-concepts/architecture","pageMetadata":{"title":"Arquitetura","description":"Visão lógica da integração ClearPago: componentes, fluxos e responsabilidades de cada parte.","href":"/core-concepts/architecture"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Visão lógica da integração ClearPago: componentes, fluxos e responsabilidades de cada parte.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,ol:`ol`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Heading,Mermaid,Table,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Mermaid)_missingMdxReference(`Mermaid`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`2`,id:`visão-geral`,children:`Visão geral`}),`\n`,_jsxs(_components.p,{children:[`A integração ClearPago envolve três camadas principais: o `,_jsx(_components.strong,{children:`seu sistema`}),`, a `,_jsx(_components.strong,{children:`plataforma ClearPago`}),` e o `,_jsx(_components.strong,{children:`parceiro BaaS`}),`. Cada camada tem responsabilidades bem definidas.`]}),`\n`,_jsx(Mermaid,{chart:`flowchart TB\n subgraph cliente[Seu sistema]\n CLI[Cliente HTTP REST]\n WH_RCV[Endpoint de webhook\\\\nPOST /webhooks/pix]\n DB_CLI[(Banco de dados\\\\ndo integrador)]\n end\n\n subgraph clearpago[Plataforma ClearPago]\n REST[API REST\\\\n/api/pix/*]\n WH_IN[Webhooks de entrada\\\\nPOST /api/webhooks/pix/*]\n Q[Fila de eventos\\\\nSQS]\n W[Workers de processamento\\\\ne reconciliação]\n DB_OTP[(PostgreSQL\\\\nledger + transações)]\n OUT[Outbox de notificações]\n RECON[Worker de reconciliação]\n end\n\n subgraph baas[Parceiro BaaS]\n PIX[Pix / Liquidação]\n end\n\n CLI -->|POST /api/pix/cash-in\\\\nPOST /api/pix/cash-out\\\\netc.| REST\n REST -->|Criação / consulta| DB_OTP\n REST -->|Despacho Pix| PIX\n PIX -->|CashIn, CashOut\\\\nCashInReversal, CashOutReversal| WH_IN\n WH_IN --> Q\n Q --> W\n W --> DB_OTP\n W --> OUT\n OUT -->|Digital-Signature ECDSA| WH_RCV\n RECON -->|Consulta periódica| PIX\n RECON --> DB_OTP\n CLI -->|GET /api/pix/cash-in/{id}| REST\n DB_OTP -.-> WH_RCV`}),`\n`,_jsx(Heading,{level:`2`,id:`responsabilidades-por-camada`,children:`Responsabilidades por camada`}),`\n`,_jsx(Heading,{level:`3`,id:`seu-sistema`,children:`Seu sistema`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Componente`}),_jsx(_components.th,{children:`Responsabilidade`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Cliente HTTP`})}),_jsxs(_components.td,{children:[`Chama `,_jsx(_components.code,{children:`POST`}),` e `,_jsx(_components.code,{children:`GET`}),` na API REST. Inclui `,_jsx(_components.code,{children:`Authorization`}),`, `,_jsx(_components.code,{children:`Content-Type`}),` e `,_jsx(_components.code,{children:`X-Correlation-ID`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Endpoint de webhook`})}),_jsxs(_components.td,{children:[`Recebe `,_jsx(_components.code,{children:`POST`}),` com `,_jsx(_components.code,{children:`Digital-Signature`}),`, valida a assinatura e responde `,_jsx(_components.code,{children:`2xx`}),` rapidamente.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Banco de dados`})}),_jsxs(_components.td,{children:[`Persiste `,_jsx(_components.code,{children:`id`}),`, `,_jsx(_components.code,{children:`externalId`}),`, `,_jsx(_components.code,{children:`transactionId`}),`, `,_jsx(_components.code,{children:`endToEndId`}),` e status de cada recurso.`]})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`plataforma-clearpago`,children:`Plataforma ClearPago`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Componente`}),_jsx(_components.th,{children:`Responsabilidade`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`API REST`})}),_jsx(_components.td,{children:`Valida, cria e persiste recursos Pix. Faz despacho inicial ao BaaS em operações de cash-out.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Webhooks de entrada`})}),_jsxs(_components.td,{children:[`Recebe eventos `,_jsx(_components.code,{children:`CashIn`}),`, `,_jsx(_components.code,{children:`CashOut`}),`, `,_jsx(_components.code,{children:`CashInReversal`}),`, `,_jsx(_components.code,{children:`CashOutReversal`}),` do parceiro. `,_jsx(_components.strong,{children:`Não são implementados pelo integrador.`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Fila de eventos`})}),_jsx(_components.td,{children:`Desacopla recebimento de eventos do processamento. Garante durabilidade.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Workers`})}),_jsx(_components.td,{children:`Aplicam transições de status, gravam ledger e enfileiram notificações ao comerciante.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Outbox`})}),_jsx(_components.td,{children:`Garante entrega durável de notificações ao comerciante com retry e backoff.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Reconciliação`})}),_jsxs(_components.td,{children:[`Consulta o BaaS periodicamente em estados intermediários ou ambíguos (`,_jsx(_components.code,{children:`PROVIDER_RESULT_UNKNOWN`}),`, `,_jsx(_components.code,{children:`RECONCILIATION_REQUIRED`}),`).`]})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`parceiro-baas`,children:`Parceiro BaaS`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Componente`}),_jsx(_components.th,{children:`Responsabilidade`})]})}),_jsx(_components.tbody,{children:_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Pix / Liquidação`})}),_jsx(_components.td,{children:`Processa pagamentos Pix, confirma ou rejeita, emite eventos de resultado.`})]})})]}),`\n`,_jsx(Heading,{level:`2`,id:`fluxo-de-um-cash-in`,children:`Fluxo de um cash-in`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Seu sistema chama `,_jsx(_components.code,{children:`POST /api/pix/cash-in`}),` → plataforma retorna `,_jsx(_components.code,{children:`201`}),` com `,_jsx(_components.code,{children:`id`}),`, `,_jsx(_components.code,{children:`status: PENDING`}),` e `,_jsx(_components.code,{children:`pixCode`}),`.`]}),`\n`,_jsx(_components.li,{children:`O pagador escaneia o QR e liquida no BaaS.`}),`\n`,_jsxs(_components.li,{children:[`O BaaS notifica a plataforma via `,_jsx(_components.code,{children:`POST /api/webhooks/pix/cash-in`}),` (interno).`]}),`\n`,_jsxs(_components.li,{children:[`Worker transiciona o status para `,_jsx(_components.code,{children:`PAID`}),`, grava lançamento no ledger, enfileira notificação ao comerciante.`]}),`\n`,_jsxs(_components.li,{children:[`Outbox entrega `,_jsx(_components.code,{children:`POST`}),` com `,_jsx(_components.code,{children:`event_type: pix_cash_in`}),` e `,_jsx(_components.code,{children:`Digital-Signature`}),` ao seu endpoint.`]}),`\n`,_jsx(_components.li,{children:`Você valida a assinatura e executa a lógica de negócio (ex.: liberar pedido).`}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`fluxo-de-um-cash-out`,children:`Fluxo de um cash-out`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`POST /api/pix/cash-out`}),` → reserva criada, estado inicial.`]}),`\n`,_jsxs(_components.li,{children:[`Plataforma despacha para o BaaS; resultado pode ser `,_jsx(_components.strong,{children:`imediato`}),` ou `,_jsx(_components.strong,{children:`assíncrono`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Resposta ambígua (timeout, 5xx) → estado `,_jsx(_components.code,{children:`PROVIDER_RESULT_UNKNOWN`}),` → reconciliação resolve.`]}),`\n`,_jsxs(_components.li,{children:[`BaaS confirma → `,_jsx(_components.code,{children:`CONFIRMED`}),`; BaaS falha → `,_jsx(_components.code,{children:`FAILED`}),` e reserva liberada.`]}),`\n`,_jsxs(_components.li,{children:[`Comerciante recebe `,_jsx(_components.code,{children:`pix_cash_out`}),` com resultado final.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`modelo-de-entrega-de-notificações`,children:`Modelo de entrega de notificações`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Tipo de operação`}),_jsx(_components.th,{children:`Canal de notificação`}),_jsx(_components.th,{children:`Latência esperada`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Cash-in, refund-in`}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Outbox`}),` (durável, commit-first)`]}),_jsx(_components.td,{children:`Baixa a moderada`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Cash-out, reversão`}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Pool de goroutines`}),` + `,_jsx(_components.strong,{children:`fallback SQS`})]}),_jsx(_components.td,{children:`Geralmente baixa; SQS em alta carga`})]})]})]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`Não conte com `,_jsx(_components.strong,{children:`ordem garantida`}),` entre eventos de canais diferentes. Deduplicação e ordenação por identificadores de negócio são sua responsabilidade.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`implicações-para-o-integrador`,children:`Implicações para o integrador`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsxs(_components.strong,{children:[`Não trate o `,_jsx(_components.code,{children:`POST`}),` de criação como terminal.`]}),` O status retornado é o estado no momento do commit; o estado final chega via webhook ou consulta.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Implemente idempotência.`}),` Webhooks podem reentrar; seu handler deve ser seguro para execução múltipla.`]}),`\n`,_jsxs(_components.li,{children:[_jsxs(_components.strong,{children:[`Persista `,_jsx(_components.code,{children:`id`}),` cedo.`]}),` Antes de qualquer lógica de negócio, grave o UUID retornado.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Monitore estados ambíguos.`}),` `,_jsx(_components.code,{children:`PROVIDER_RESULT_UNKNOWN`}),` e `,_jsx(_components.code,{children:`RECONCILIATION_REQUIRED`}),` não são terminais — monitore a idade e consulte via `,_jsx(_components.code,{children:`GET`}),` antes de escalar.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`referências`,children:`Referências`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/core-concepts/transaction-lifecycle`,children:`Ciclo de vida das operações`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/core-concepts/status-model`,children:`Modelo de status`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/core-concepts/ledger-and-balance`,children:`Ledger e saldo`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/webhooks/clearpago-to-merchant`,children:`Webhooks: ClearPago → comerciante`})}),`\n`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Arquitetura","description":"Visão lógica da integração ClearPago: componentes, fluxos e responsabilidades de cada parte.","href":"/core-concepts/architecture"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Visão geral","slug":"visão-geral","depth":2,"children":[]},{"title":"Responsabilidades por camada","slug":"responsabilidades-por-camada","depth":2,"children":[{"title":"Seu sistema","slug":"seu-sistema","depth":3,"children":[]},{"title":"Plataforma ClearPago","slug":"plataforma-clearpago","depth":3,"children":[]},{"title":"Parceiro BaaS","slug":"parceiro-baas","depth":3,"children":[]}]},{"title":"Fluxo de um cash-in","slug":"fluxo-de-um-cash-in","depth":2,"children":[]},{"title":"Fluxo de um cash-out","slug":"fluxo-de-um-cash-out","depth":2,"children":[]},{"title":"Modelo de entrega de notificações","slug":"modelo-de-entrega-de-notificações","depth":2,"children":[]},{"title":"Implicações para o integrador","slug":"implicações-para-o-integrador","depth":2,"children":[]},{"title":"Referências","slug":"referências","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"clearpago","siteName":"ClearPago","title":"Arquitetura - ClearPago","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-04-23T18:50:48.746Z","originalFileLocation":"core-concepts/architecture.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Visão lógica da integração ClearPago: componentes, fluxos e responsabilidades de cada parte.\">\u003cmeta data-mint-head name=\"application-name\" content=\"ClearPago\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/clearpago/_generated/favicon/apple-touch-icon.png?v=3\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/clearpago/_generated/favicon/favicon-32x32.png?v=3\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/clearpago/_generated/favicon/favicon-16x16.png?v=3\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/clearpago/_generated/favicon/favicon.ico?v=3\">\u003cmeta data-mint-head property=\"og:title\" content=\"Arquitetura - ClearPago\">\u003cmeta data-mint-head property=\"og:description\" content=\"Visão lógica da integração ClearPago: componentes, fluxos e responsabilidades de cada parte.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"ClearPago\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.clearpago.com/core-concepts/architecture\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://clearpago.mintlify.app/_mintlify/api/og/v2?division=Conceitos\u0026amp;title=Arquitetura\u0026amp;description=Vis%C3%A3o+l%C3%B3gica+da+integra%C3%A7%C3%A3o+ClearPago%3A+componentes%2C+fluxos+e+responsabilidades+de+cada+parte.\u0026amp;theme=d304cf9661ece7b5262fc744\u0026amp;signature=93bf8cbc627b388ea4d7c79eddef63fde60c8a62ccfaa01f7e094520d676e598\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Arquitetura - ClearPago\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Visão lógica da integração ClearPago: componentes, fluxos e responsabilidades de cada parte.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://clearpago.mintlify.app/_mintlify/api/og/v2?division=Conceitos\u0026amp;title=Arquitetura\u0026amp;description=Vis%C3%A3o+l%C3%B3gica+da+integra%C3%A7%C3%A3o+ClearPago%3A+componentes%2C+fluxos+e+responsabilidades+de+cada+parte.\u0026amp;theme=d304cf9661ece7b5262fc744\u0026amp;signature=93bf8cbc627b388ea4d7c79eddef63fde60c8a62ccfaa01f7e094520d676e598\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"https://mintlify.s3.us-west-1.amazonaws.com/clearpago/_generated/favicon/browserconfig.xml?v=3\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"ClearPago\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0f766e\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.clearpago.com/core-concepts/architecture\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/core-concepts/architecture.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.clearpago.com/#organization\",\"name\":\"ClearPago\",\"url\":\"https://docs.clearpago.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/clearpago/mSJ86kniaUbCKbT4/logo_lightmode.png?fit=max\u0026auto=format\u0026n=mSJ86kniaUbCKbT4\u0026q=85\u0026s=874e04286f63996eee39a525d0e88605\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.clearpago.com#website\",\"name\":\"ClearPago\",\"url\":\"https://docs.clearpago.com\",\"publisher\":{\"@id\":\"https://docs.clearpago.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.clearpago.com/core-concepts/architecture#webpage\",\"url\":\"https://docs.clearpago.com/core-concepts/architecture\",\"name\":\"Arquitetura\",\"description\":\"Visão lógica da integração ClearPago: componentes, fluxos e responsabilidades de cada parte.\",\"dateModified\":\"2026-04-23T18:50:48.746Z\",\"isPartOf\":{\"@id\":\"https://docs.clearpago.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.clearpago.com/core-concepts/architecture#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.clearpago.com/core-concepts/architecture#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"ClearPago\",\"item\":\"https://docs.clearpago.com\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Arquitetura\",\"item\":\"https://docs.clearpago.com/core-concepts/architecture\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.clearpago.com/core-concepts/architecture#article\",\"headline\":\"Arquitetura\",\"name\":\"Arquitetura\",\"description\":\"Visão lógica da integração ClearPago: componentes, fluxos e responsabilidades de cada parte.\",\"url\":\"https://docs.clearpago.com/core-concepts/architecture\",\"mainEntityOfPage\":{\"@id\":\"https://docs.clearpago.com/core-concepts/architecture#webpage\"},\"dateModified\":\"2026-04-23T18:50:48.746Z\",\"publisher\":{\"@id\":\"https://docs.clearpago.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.clearpago.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"ClearPago\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"ClearPago","nav":{"global":null,"groups":[{"group":"Início","pages":[{"title":"ClearPago — API Pix","href":"/index"}]},{"group":"Introdução","pages":[{"title":"Visão geral","href":"/getting-started/overview"},{"title":"Autenticação","href":"/getting-started/authentication"},{"title":"Quickstart","href":"/getting-started/quickstart"},{"title":"Ambientes, headers e convenções","href":"/getting-started/environments-and-headers"},{"title":"Checklist de primeira integração","description":"Lista de verificação para ter a primeira integração ClearPago funcionando corretamente em ambiente de teste.","href":"/getting-started/first-integration-checklist"}]},{"group":"Conceitos","pages":[{"title":"Arquitetura","href":"/core-concepts/architecture"},{"title":"Modelo de identidade","description":"id, externalId, transactionId e endToEndId — quem define, persistência e uso em refund e suporte.","href":"/core-concepts/identity-model"},{"title":"Ciclo de vida das operações","href":"/core-concepts/transaction-lifecycle"},{"title":"Modelo de status","href":"/core-concepts/status-model"},{"title":"Idempotência e correlação","href":"/core-concepts/idempotency-and-correlation"},{"title":"Ledger e saldo","href":"/core-concepts/ledger-and-balance"}]},{"group":"Guias","pages":[{"title":"Receber Pix (Cash-in)","href":"/guides/receive-pix-cash-in"},{"title":"Enviar Pix por chave (Cash-out)","href":"/guides/send-pix-cash-out-key"},{"title":"Enviar Pix por QR Code (Cash-out QR)","href":"/guides/send-pix-cash-out-qrcode"},{"title":"Devolver um cash-in (Refund-in)","href":"/guides/refund-a-cash-in"},{"title":"Lidar com reversão de cash-out","href":"/guides/handle-cash-out-reversal"},{"title":"Registrar webhooks do comerciante","href":"/guides/register-merchant-webhooks"},{"title":"Verificar assinaturas de webhook","href":"/guides/verify-webhook-signatures"},{"title":"Reconciliar transações","href":"/guides/reconcile-transactions"}]},{"group":"Referência de API","pages":[{"group":"Cash-in","pages":[{"title":"POST /api/pix/cash-in","href":"/api-reference/create-cash-in"},{"title":"GET /api/pix/cash-in","href":"/api-reference/list-cash-ins"},{"title":"GET /api/pix/cash-in/{id}","href":"/api-reference/get-cash-in"}]},{"group":"Cash-out","pages":[{"title":"POST /api/pix/cash-out","href":"/api-reference/create-cash-out"},{"title":"GET /api/pix/cash-out","href":"/api-reference/list-cash-outs"},{"title":"GET /api/pix/cash-out/{id}","href":"/api-reference/get-cash-out"},{"title":"POST /api/pix/cash-out-qrcode","href":"/api-reference/create-cash-out-qrcode"}]},{"group":"Refund","pages":[{"title":"POST /api/pix/refund-in/{id}","href":"/api-reference/create-refund-in"},{"title":"GET /api/pix/refund","href":"/api-reference/list-refunds"},{"title":"GET /api/pix/refund/{id}","href":"/api-reference/get-refund"}]},{"group":"Ledger","pages":[{"title":"GET /api/pix/ledger","href":"/api-reference/list-ledger-entries"},{"title":"GET /api/pix/ledger/{id}","href":"/api-reference/get-ledger-entry"}]},{"group":"Organização","pages":[{"title":"GET /organization/balance","href":"/api-reference/get-balance"}]},{"group":"Transações","pages":[{"title":"List transactions cash in","href":"/api-reference/list-transactions-cash-in"},{"title":"List transactions cash out","href":"/api-reference/list-transactions-cash-out"}]},{"group":"Webhooks","pages":[{"title":"POST /webhook (registro de notificações)","href":"/api-reference/register-webhook"},{"title":"GET /webhook","href":"/api-reference/list-webhooks"},{"title":"DELETE /webhook/{webhook_id}","href":"/api-reference/delete-webhook"},{"title":"GET /public-key","href":"/api-reference/get-public-key"}]}]},{"group":"Webhooks","pages":[{"title":"Webhooks: parceiro → ClearPago","href":"/webhooks/partner-to-clearpago"},{"title":"Webhooks: ClearPago → comerciante","href":"/webhooks/clearpago-to-merchant"},{"title":"Referência de payloads (webhooks)","href":"/webhooks/webhook-event-reference"}]},{"group":"Ledger e Reconciliação","pages":[{"title":"Ledger — Visão geral","href":"/ledger-and-reconciliation/ledger-overview"},{"title":"Reconciliação","href":"/ledger-and-reconciliation/reconciliation"},{"title":"Monitoramento operacional","href":"/ledger-and-reconciliation/operational-monitoring"}]},{"group":"Erros","pages":[{"title":"Tratamento de erros","href":"/errors/error-handling"},{"title":"Códigos, sintomas e ações","href":"/errors/error-codes"},{"title":"Troubleshooting","href":"/errors/troubleshooting"}]},{"group":"Go-live","pages":[{"title":"Checklist de produção","href":"/go-live/production-checklist"},{"title":"Checklist de segurança","href":"/go-live/security-checklist"},{"title":"Checklist de observabilidade","href":"/go-live/observability-checklist"}]},{"group":"FAQ","pages":[{"title":"Perguntas frequentes","href":"/faq/index"}]}]},"title":"Arquitetura - ClearPago","buildId":"dpl_DFJrtvUi8HS5F9nkooKuDJsuD5BM","deploymentId":"dpl_DFJrtvUi8HS5F9nkooKuDJsuD5BM","dynamics":[],"chunks":[]}