# Formas de interação de pagamento Como o cliente paga no FaciPay hoje (popup) e o fluxo passo a passo do overlay web. A forma como o cliente interage com o pagamento — onde acontece, se sai do site, quanto controla o visual — define a experiência da sua loja. ## Disponível hoje na FaciPay Uma janela **sobreposta** à sua página. O cliente fica no contexto do seu site e o pagamento corre numa janela isolada. É o que a [FaciPay JS SDK](/pt/sdk/overview) faz hoje. Nas SDKs [Android](/pt/android/overview) e [iOS](/pt/ios/overview), o checkout é apresentado num **WebView** nativo (modal/bottom-sheet). Por agora, **só o popup/overlay** (web) e o **WebView hospedado** (mobile) estão disponíveis. ### O fluxo do popup, passo a passo É assim que o cliente paga hoje no overlay web, do botão à confirmação no telemóvel. `generateButton()` renderiza o botão de pagamento com o selo **Powered by FaciConnect**. Os ícones à direita mostram as formas de pagamento disponíveis (FaciPay, MCX Express, Referência). Botão Pagar Agora com selo Powered by FaciConnect Ao clicar, abre-se o overlay com a **origem do pedido**, os **detalhes do pagamento**, a escolha da **forma de pagamento** e o campo de **telefone**. Popup FaciConnect com detalhes do pagamento e formas de pagamento Com a **FaciPay**, é enviado um pedido de pagamento para a conta do cliente. Ele confirma diretamente no telemóvel, na app FaciPay. Pedido de pagamento enviado para confirmar na app FaciPay Com o **MCX Express**, o cliente recebe uma notificação Multicaixa Express e tem um tempo limitado para autorizar a operação. O popup aguarda a confirmação. Ecrã a aguardar confirmação MCX Express com contador ## Como mapeia ao fluxo FaciPay O fluxo de backend da FaciPay (criar ordem → `referenceNumber` → confirmar por webhook) é **independente** da forma de UX. O popup atual usa `generateButton()` + `.render()` para abrir a janela de checkout, reutilizando o mesmo `createPaymentOrder` e o mesmo webhook.