Pular para o conteúdo
Criar conta ou Entrar
O logotipo da documentação da Stripe
/
Pergunte à IA
Criar contaLogin
Comece já
Pagamentos
Receita
Plataformas e marketplaces
Gestão de valores
Recursos para desenvolvedores
APIs e SDKsAjuda
Visão geral
Sobre os pagamentos da Stripe
Atualize sua integração
Análise de pagamentos
Pagamentos online
Visão geralEncontre seu caso de usoUsar o Managed Payments
Usar Payment Links
Usar uma página de checkout predefinida
Criar uma integração personalizada com o Elements
Crie uma integração no aplicativo
    Visão geral
    Descrição da compra
    Element Pagamento
    Address Element
      Solicitar endereços
    Link para compras no aplicativo
    Gerenciar formas de pagamento nas configurações
    Migrar para tokens de confirmação
    Cartões dos EUA e Canadá
Pagamentos presenciais
Terminal
Formas de pagamento
Adicionar formas de pagamento
Gerenciar formas de pagamento
Checkout mais rápido com o Link
Cenários de pagamento
Gerenciar várias moedas
Fluxos de pagamento personalizados
Aquisição flexível
Orquestração
Muito mais que pagamentos
Abra sua empresa
Cripto
Comércio agêntico
Financial Connections
Climate
Entenda as fraudes
Proteção contra fraudes do Radar
Gerenciar contestações
Verificar identidades
Estados Unidos
Português (Brasil)
Página inicialPagamentosBuild an in-app integrationAddress Element

Coletar endereços físicos e números de telefone

Saiba como recolher endereços de clientes e números de telefone em seu aplicativo de dispositivos móveis com o Address Element.

Para recolher endereços completos para cobrança ou envio, use o Address Element.

Você também pode usar o Address Element para:

  • Coletar números de telefone dos clientes
  • Ativar preenchimento automático
  • Preencher previamente os dados de cobrança no Payment Element passando um endereço de entrega

A Stripe combina os dados de endereço coletados e a forma de pagamento para criar um PaymentIntent.

Exemplos de um processo de checkout em que um usuário seleciona a opção Adicionar endereço de entrega. Em seguida, ele é levado a uma nova tela para adicionar o endereço de entrega em um formulário (ele vê sugestões de preenchimento automático enquanto digita o endereço).

Configurar a Stripe
Lado do servidor
Lado do cliente

Primeiro, você precisa de uma conta Stripe. Cadastre-se agora.

O SDK da Stripe para Android é de código aberto e totalmente documentado.

Para instalar o SDK, adicione stripe-android ao bloco dependencies do arquivo app/build.gradle:

build.gradle.kts
Kotlin
Excelente
No results
plugins { id("com.android.application") } android { ... } dependencies { // ... // Stripe Android SDK implementation("com.stripe:stripe-android:22.0.0") // Include the financial connections SDK to support US bank account as a payment method implementation("com.stripe:financial-connections:22.0.0") }

Observação

Veja mais informações sobre o último lançamento de SDK e as versões anteriores na página Lançamentos no GitHub. Para receber notificações quando um novo lançamento for publicado, assista aos lançamentos do repositório.

Configure o SDK com sua chave publicável da Stripe, de modo que seja possível fazer solicitações à API Stripe, como em sua subcategoria Application:

Kotlin
Java
No results
import com.stripe.android.PaymentConfiguration class MyApp : Application() { override fun onCreate() { super.onCreate() PaymentConfiguration.init( applicationContext,
"pk_test_TYooMQauvdEDq54NiTphI7jx"
) } }

Observação

Use suas chaves de teste enquanto testa e desenvolve, e suas chaves de modo de produção quando publicar seu aplicativo.

Configurar sugestões de preenchimento automático de endereços

O elemento de endereço usa o SDK do Google Places para obter sugestões de preenchimento automático de endereços. Para habilitar sugestões de preenchimento automático, você precisa incluir a dependência do SDK do Google Places no build.gradle do seu aplicativo.

build.gradle
Excelente
Kotlin
No results
dependencies { implementation 'com.google.android.libraries.places:places:2.6.0' }

As sugestões de preenchimento automático de endereços exigem uma chave de API do Google Places. Siga o guia de configuração do SDK do Google Places para gerar sua chave de API.

Configurar o Address Element

Você pode configurar o Address Element com detalhes como exibir valores padrão, definir países permitidos, personalizar a aparência e assim por diante. Consulte AddressLauncher.Configuration para obter a lista completa de opções de configuração.

val addressConfiguration = AddressLauncher.Configuration( additionalFields: AddressLauncher.AdditionalFieldsConfiguration( phone: AdditionalFieldsConfiguration.FieldConfiguration.Required ), allowedCountries: setOf("US", "CA", "GB"), title: "Shipping Address", googlePlacesApiKey = "(optional) YOUR KEY HERE" )

Recuperar detalhes do endereço

Recupere os detalhes do endereço criando uma instância de AddressLauncher no método de ciclo de vida onCreate da sua Activity ou Fragment e criando um método de retorno de chamada que implemente a interface AddressLauncherResultCallback.

private lateinit var addressLauncher: AddressLauncher private var shippingDetails: AddressDetails? = null override fun onCreate(savedInstanceState: Bundle?) { addressLauncher = AddressLauncher(this, ::onAddressLauncherResult) } private fun onAddressLauncherResult(result: AddressLauncherResult) { // TODO: Handle result and update your UI when (result) { is AddressLauncherResult.Succeeded -> { shippingDetails = result.address } is AddressLauncherResult.Canceled -> { // TODO: Handle cancel } } }

O AddressLauncherResult pode ser Succeeded ou Canceled. Consulte mais detalhes de implementação.

Observação

A Stripe requer que você instancie o AddressLauncher durante o evento de ciclo de vida onCreate e não depois. Caso contrário, o retorno de chamada não poderá ser registrado corretamente e seu aplicativo falhará.

Apresentar o Address Element

Apresente o Address Element usando o iniciador de endereços e a configuração das etapas anteriores.

addressLauncher.present( publishableKey = publishableKey, configuration = addressConfiguration )

OpcionalPreencha previamente os endereços de entrega no Payment Element

Se você usar o Payment Element para celular, defina PaymentSheet.Configuration.shippingDetails para o endereço coletado pelo elemento de endereço. Quando shippingDetails é preenchido, os usuários recebem o endereço de cobrança pré-preenchido e veem uma caixa de seleção O endereço de cobrança é o mesmo que o endereço de entrega. PaymentIntents confirmados com shippingDetails preenchido também têm a propriedade de intenção shipping preenchida quando o PaymentIntent é confirmado.

val configuration = PaymentSheet.Configuration.Builder("Example, Inc.") // ... .shippingDetails(shippingDetails) .build()

OpcionalPersonalize a aparência

Agora que você adicionou o Address Element ao seu aplicativo, pode personalizar a aparência para se ajustar ao design do restante do seu aplicativo. Você pode configurar a aparência com a API Appearance usando AddressLauncher.Configuration.appearance.

OpcionalDefinir dados de cobrança padrão

Para definir valores padrão para dados de faturamento coletados na descrição da compra, configure a propriedade defaultBillingDetails. A PaymentSheet preenche previamente seus campos com os valores que você informou.

Kotlin
Java
No results
val address = PaymentSheet.Address(country = "US") val billingDetails = PaymentSheet.BillingDetails( address = address, email = "foo@bar.com" ) val configuration = PaymentSheet.Configuration.Builder(merchantDisplayName = "Merchant, Inc.") .defaultBillingDetails(billingDetails) .build()

OpcionalPersonalize a coleta de dados de faturamento

Configurar coleta de dados de cobrança

Usar BillingDetailsCollectionConfiguration para especificar como você deseja coletar dados de cobrança no PaymentSheet.

Você pode coletar o nome, e-mail, número de telefone e endereço do cliente.

Se quiser anexar detalhes de cobrança padrão ao objeto PaymentMethod mesmo quando esses campos não forem coletados na IU, defina billingDetailsCollectionConfiguration.attachDefaultsToPaymentMethod como true.

Kotlin
Java
No results
val billingDetails = PaymentSheet.BillingDetails( email = "foo@bar.com" ) val billingDetailsCollectionConfiguration = BillingDetailsCollectionConfiguration( attachDefaultsToPaymentMethod = true, name = BillingDetailsCollectionConfiguration.CollectionMode.Always, email = BillingDetailsCollectionConfiguration.CollectionMode.Never, address = BillingDetailsCollectionConfiguration.AddressCollectionMode.Full, ) val configuration = PaymentSheet.Configuration.Builder(merchantDisplayName = "Merchant, Inc.") .defaultBillingDetails(billingDetails) .billingDetailsCollectionConfiguration(billingDetailsCollectionConfiguration) .build()

Observação

Consulte seu jurídico sobre as leis que se aplicam à coleta de dados. Só colete números de telefone se precisar deles para a transação.

Esta página foi útil?
SimNão
  • Precisa de ajuda? Fale com o suporte.
  • Confira nosso changelog.
  • Dúvidas? Fale com a equipe de vendas.
  • LLM? Read llms.txt.
  • Powered by Markdoc