# Experiência de checkout Checkout clássico, WooCommerce Blocks e botões Express. O plugin suporta três formas de o cliente pagar. Em todas, o pagamento corre no **popup** da FaciPay e o estado é confirmado pelo [webhook](/pt/woocommerce/webhooks). ## Checkout clássico No checkout, o cliente escolhe **FaciPay** e clica em **Finalizar com FaciPay**. O WooCommerce cria a ordem com estado `pending` e método `facipay`. O id da ordem do WooCommerce é enviado como `externalTransactionId`. Abre o popup FaciPay (Multicaixa Express por defeito). O cliente paga. No fecho do popup, o cliente é levado para a página **order-received**. O estado final é definido pelo webhook. ## WooCommerce Blocks (Gutenberg) O plugin regista o método de pagamento `facipay` para o **bloco de checkout** moderno e funciona da mesma forma (popup + webhook), com validação de formulário integrada. ## Botões Express (produto e carrinho) Aparece um botão FaciPay **Express** na página de produto (a seguir ao "Adicionar ao carrinho") e no carrinho. Ao clicar: 1. É criada uma ordem temporária (meta `_facipay_order_type`). 2. O popup abre imediatamente (evita bloqueio de popups). 3. Após o pagamento, o carrinho é limpo de forma inteligente e há redireção para a página order-received. ## URLs de retorno Configuráveis em **Definições → Pagamentos → FaciPay**. Suportam `{order_id}` e `{order_key}`: | Definição | Default | Quando | |---|---|---| | **Success URL** | `{checkout_url}?order-received=` | Pagamento concluído | | **Pending URL** | `{checkout_url}?order-received=` | Referência EMIS pendente | | **Cancel URL** | `{cart_url}` | Pagamento cancelado | ## Idioma O popup segue a localização do WordPress: `en` se o site estiver em inglês, caso contrário `pt`. O plugin é traduzido em **PT** e **EN**. Como o plugin confirma os pagamentos.