# Visão geral Aceite pagamentos FaciPay numa app Android nativa (Kotlin) com a SDK oficial. A **FaciPay Android SDK** integra pagamentos FaciPay em apps Android nativas. Apresenta o checkout num WebView hospedado (modal/bottom-sheet) e devolve o resultado por callbacks. Versão atual: **1.0.0-beta01**. Linguagem: Kotlin (com interop Java). Distribuição: Maven Central. ## Como funciona O modelo é igual ao da [Web SDK](/pt/sdk/overview): inicializa com a `publishableKey`, abre o checkout com uma lista de referências e um callback `createOrder` que cria a ordem no **seu backend**, e trata o resultado. ```mermaid sequenceDiagram participant App as App (SDK) participant B as Backend (parceiro) participant P as FaciPay App->>App: FaciPay.init(context, pk) App->>B: createOrder() B->>P: POST /facipaypartner/createPaymentOrder P-->>B: referenceNumber B-->>App: merchantTransactionId App->>P: Abre o checkout (WebView) P-->>App: onApprove / onPending / onCancel / onError P->>B: Webhook (fonte da verdade) ``` ## Métodos de pagamento | Método | Código | Notas | |---|---|---| | **Multicaixa Express** | `FPMCXEXPRSS` | Confirmação imediata na app Multicaixa Express → `onApprove`. | | **Referência EMIS** | `FPSOLPGEXT` | Entidade + referência pagas no Multicaixa/homebanking → `onPending`. | | **FaciPay** (solicitação de pagamento) | `FPSOLPG` | Carteira FaciPay — envia uma solicitação de pagamento à carteira do cliente → `onApprove`. | No **FaciPay**, depois de o cliente informar o telemóvel associado à conta FaciPay, é efetuada uma **solicitação de pagamento** na carteira, permitindo-lhe concluir o pagamento. Na SDK Android, os enums correspondentes são `PaymentMethod.FACIPAY`, `PaymentMethod.MCX_EXPRESS` e `PaymentMethod.REFERENCE`. ## Requisitos - **minSdk 24** (Android 7.0); compile/target SDK 36. - Permissão `INTERNET` (declarada pela SDK). Adicionar a SDK ao seu projeto Gradle.