Pular para o conteúdo
Criar conta
ou
Entrar
O logotipo da documentação da Stripe
/
Pergunte à IA
Criar conta
Login
Comece já
Pagamentos
Receita
Plataformas e marketplaces
Gestão de valores
Recursos para desenvolvedores

Adicionar formas de pagamento externas

Adicione formas de pagamento externas ao Mobile Payment Element para dispositivos móveis.

Observação

Criamos um recurso de formas de pagamento personalizadas que permite ampliar a integração com formas de pagamento processadas fora do Stripe. Recomendamos usá-lo para sua integração em vez de formas de pagamento externas.

O Mobile Payment Element pode exibir formas de pagamento externas aceitas por você, além das formas de pagamento processadas pela Stripe. A integração de formas de pagamento externas exige trabalho adicional de integração, pois as transações de formas de pagamento externas são processadas e finalizadas fora da Stripe.

Responsabilidade por formas de pagamento externas

Quando os clientes escolhem uma forma de pagamento externa, seu aplicativo processa o pagamento em vez da Stripe. Para saber mais sobre suas responsabilidades e a disponibilidade contínua de formas de pagamento externas, consulte o aviso legal sobre formas de pagamento externas.

Este guia adiciona uma forma de pagamento externa, Fawry, usando o guia de pagamentos no aplicativo Payment Sheet. Veja a lista de todas as formas de pagamento externas disponíveis.

Antes de começar

  1. Crie uma conta Stripe ou faça login.
  2. Siga o exemplo Payment Sheet para concluir uma integração de pagamentosใ
  3. Para cada forma de pagamento externa que você deseja adicionar, conclua a integração e confirme se está funcionando na região em que deseja habilitá-la.

Adicionar tipos de forma de pagamento externa

Quando você criar seu objeto PaymentSheet.Configuration e inicializar PaymentSheet, especifique as formas de pagamento externas que você deseja adicionar ao Payment Element e um gerenciador para concluir o pagamento. Este exemplo adiciona Fawry:

import StripePaymentSheet class MyCheckoutVC: UIViewController { func setUpPaymentSheet() { // ... var configuration = PaymentSheet.Configuration() configuration.externalPaymentMethodConfiguration = .init( externalPaymentMethods: ["external_fawry"] ) { externalPaymentMethodType, billingDetails, completion in self.handleExternalPaymentMethod(type: externalPaymentMethodType, billingDetails: billingDetails, completion: completion) } // ... } func handleExternalPaymentMethod(type: String, billingDetails: STPPaymentMethodBillingDetails, completion: @escaping (PaymentSheetResult) -> Void) { // ...explained in the next step } }

Finalizar o pagamento

Quando o cliente toca no botão Comprar no PaymentSheet usando uma forma de pagamento externa, ele chama o gerenciador com o tipo (por exemplo, “external_fawry”), todos os dados de cobrança que foram coletados e um gerenciador de conclusão.

Sua implementação conclui o pagamento (por exemplo, usando o SDK do provedor de forma de pagamento externo) e chama o gerenciador de conclusão com o resultado do pagamento: completed, canceled ou failure(error:).

Se você passar .failure(error:), PaymentSheet exibe o erro usando errorDescription para erros Swift e localizedDescription para NSErrors.

import StripePaymentSheet class MyCheckoutVC: UIViewController { func setUpPaymentSheet() { // ... var configuration = PaymentSheet.Configuration() configuration.externalPaymentMethods = .init( externalPaymentMethods: ["external_fawry"] ) { [weak self] externalPaymentMethodType, billingDetails, completion in self?.handleExternalPaymentMethod(type: externalPaymentMethodType, billingDetails: billingDetails, completion: completion) } // ... } func handleExternalPaymentMethod(type: String, billingDetails: STPPaymentMethodBillingDetails, completion: @escaping (PaymentSheetResult) -> Void) { // Your implementation should complete the payment with the payment method provider // When the payment completes, cancels, or fails, call the `completion` handler // Note you can present on top of PaymentSheet by using the `self.presentedViewController`. // This example code just immediately fails: let exampleError = NSError(domain: "MyErrorDomain", code: 0, userInfo: [NSLocalizedDescriptionKey: "Failed to complete payment!"]) completion(.failed(error: exampleError)) } }

OpcionalPosicionar formas de pagamento externas

Teste a integração

  1. Percorra o fluxo de checkout e verifique se o Payment Element exibe Fawry. Este exemplo configura Fawry na segunda posição depois das cartas.
    O Payment Element quando Fawry é adicionado
  2. Escolha a forma de pagamento Fawry.
    O Payment Element quando Fawry é selecionado
  3. Clique em Pagar agora para testar sua integração Fawry existente. Verifique se sua integração conclui a transação e se todas as ações pós-pagamento (por exemplo, exibe uma página de confirmação, mensagem de êxito ou mensagem de falha) ainda funcionam com sua integração Fawry.

Considerações sobre o Dashboard

PaymentIntents para transações processadas com um provedor de forma de pagamento externo têm um status incomplete no Stripe Dashboard. A Stripe não está envolvida em transações de forma de pagamento externa e não pode determinar o status dessas transações.

Se você coletar dados de pagamento antes de criar um Intent, não verá nenhuma transação incomplete no Stripe Dashboard para transações que foram processadas com um provedor de forma de pagamento externo.

Declaração de isenção de responsabilidade sobre formas de pagamento externas

Você pode usar o Payment Element para dispositivos móveis da Stripe para mostrar algumas formas de pagamento externas que não são aceitas pela Stripe, mas que você integra diretamente. Quando os clientes escolhem uma forma de pagamento externa, seu aplicativo conclui a transação em vez do Payment Element para dispositivos móveis da Stripe. Você reconhece que:

  1. As formas de pagamento externas não são oferecidas nem aceitas por Stripe. A operação e o suporte de formas de pagamento externas são fornecidos pelo provedor da forma de pagamento externa.
  2. Você é responsável por manter uma integração direta com o provedor da forma de pagamento externo.
  3. Você precisa manter um contrato com o provedor da forma de pagamento externa e é responsável pelo cumprimento dos contratos com cada provedor de forma de pagamento externa.
  4. Você é responsável por obter todos os direitos necessários para usar as marcas e logotipos do provedor da forma de pagamento externa no seu checkout, conforme descrito nesta documentação.
  5. A Stripe não é responsável pelo processamento de nenhuma transação com qualquer provedor de formas de pagamento externas, incluindo, por exemplo, cobranças, reembolsos, disputas, liquidações ou fluxos de fundos.
  6. Você ou o provedor da forma de pagamento externa é responsável pela conclusão do fluxo de compra após o cliente selecionar uma forma de pagamento externa, incluindo, por exemplo, a confirmação do pedido e a reconciliação de pedidos.
  7. Você é responsável por configurar corretamente o URL de redirecionamento para a forma de pagamento externa.
  8. Você precisa remover imediatamente qualquer forma de pagamento externa caso seus contratos com qualquer provedor de formas de pagamento externas sejam rescindidos ou a Stripe remova a disponibilidade de uma forma de pagamento externa.
  9. Você só tem permissão para integrar e apresentar no Payment Element as formas de pagamento externas listadas neste guia.
  10. Você é o único responsável por garantir que os compradores sejam redirecionados corretamente para a forma de pagamento externa escolhida.

Disponibilidade contínua de formas de pagamento externas

A Stripe pode, a qualquer momento, decidir remover a disponibilidade de qualquer forma de pagamento como forma de pagamento externa. A Stripe notificará sobre a remoção de uma forma de pagamento externa que você estiver usando, e você deverá remover imediatamente a forma de pagamento externa do seu código. Se isso não for feito, a forma de pagamento externa não será exibida aos clientes.

Formas de pagamento externas disponíveis

Você pode exibir as seguintes formas de pagamento externas. Você precisa usar o tipo de forma de pagamento externo correspondente no seu código.

RegiãoForma de pagamentoTipo de forma de pagamento externa
AMERInteracexternal_interac
APACau PAYexternal_au_pay
APACatoneexternal_atone
APACTouch’n Goexternal_tng_ewallet
APACソフトバンクまとめて支払い (Softbank carrier payments)external_softbank_carrier_payment
APACToss Payexternal_toss_pay
APACLaybuyexternal_laybuy
APACBank Payexternal_bank_pay
APACauかんたん決済 (au easy payments)external_au_easy_payment
APACBitCashexternal_bitcash
APACAzupayexternal_azupay
APACd払い (d-barai)external_dbarai
APACFamiPayexternal_famipay
APACGCashexternal_gcash
APACGrabPay Laterexternal_grabpay_later
APACMoMoexternal_momo
APACNET CASHexternal_net_cash
APACOctopusexternal_octopus
APACPaidyexternal_paidy
APACPayPayexternal_paypay
APACPlanPayexternal_planpay
APACペイジー (Pay-easy)external_pay_easy
APAC楽天ペイ (Rakuten Pay)external_rakuten_pay
APACメルペイ (Merpay)external_merpay
APACWebMoneyexternal_webmoney
Ásia-Pacífico, EuropaShopback Payexternal_shopback_pay
EuropaAplazameexternal_aplazame
EuropaBizumexternal_bizum
EuropaDividoexternal_divido
EuropaFonixexternal_fonix
EuropaIwocapayexternal_iwocapay
EuropaKBCexternal_kbc
EuropaNexi Payexternal_nexi_pay
EuropaOneyexternal_oney
EuropaPayconiqexternal_payconiq
EuropaPayPoexternal_paypo
EuropaSofincoexternal_sofinco
EuropaPostepayexternal_postepay
EuropaPostFinanceexternal_postfinance
EuropaScalapayexternal_scalapay
EuropaTrueLayerexternal_truelayer
EuropaWalleyexternal_walley
EuropaYounitedPayexternal_younited_pay
GlobalLINE Payexternal_line_pay
Globalpaysafecardexternal_paysafecard
GlobalSamsung Payexternal_samsung_pay
GlobalSezzleexternal_sezzle
LATAMDappexternal_dapp
LATAMPicPayexternal_picpay
MEATabbyexternal_tabby
MEABenefitexternal_benefit
MEAFawryexternal_fawry
Esta página foi útil?
SimNão
Precisa de ajuda? Fale com o suporte.
Participe do nosso programa de acesso antecipado.
Confira nosso changelog.
Dúvidas? Fale com a equipe de vendas.
LLM? Read llms.txt.
Powered by Markdoc