Passa al contenuto
Crea account
o
Accedi
Il logo della documentazione Stripe
/
Chiedi all'IA
Crea un account
Accedi
Inizia
Pagamenti
Automazione finanziaria
Per piattaforme e marketplace
Gestione del denaro
Strumenti di sviluppo
Inizia
Pagamenti
Automazione finanziaria
Inizia
Pagamenti
Automazione finanziaria
Per piattaforme e marketplace
Gestione del denaro
PanoramicaExplore all products
Start building
Avviare lo sviluppo
Progetti di esempio
Informazioni sulle API
    Presentazione dell'API
    API Payment Intents
    API Setup Intents
    Modalità di pagamento
    Prodotti e prezzi
    API precedenti
      Addebiti
        Migrare alle nuove API
        Accettare un pagamento con carta
        Salvare una carta
        Bloccare un importo su una carta
        Charges e Connect
      Origini
    Fasi di rilascio
Build with LLMs
Utilizza Stripe senza dover scrivere codice
Configura Stripe
Crea un account
Dashboard per il web
Dashboard per dispositivi mobili
Passare a Stripe
Gestire il rischio di frode
Informazioni sulle frodi
Protezione contro le frodi di Radar
Gestisci le contestazioni
Verificare l'identità
Pagina inizialeIniziaAbout the APIsOlder APIsCharges

Accettare un pagamento utilizzando Stripe Elements e l'API ChargesAPI Charges

Accetta pagamenti online da clienti statunitensi e canadesi.

Copia pagina

API precedente

The content of this section refers to a Legacy feature. Use the Payment Intents API instead.

L’API Charges non supporta le seguenti funzionalità, molte delle quali sono necessarie per la conformità delle carte di credito:

  • Esercenti in India
  • Bank requests for card authentication
  • Strong Customer Authentication

Usa i componenti di interfaccia utente preconfigurati per creare un modulo di pagamento che ti consenta di raccogliere in modo sicuro i dati della carta di un cliente senza manipolare dati sensibili. I dati della carta vengono quindi convertiti in un token rappresentativo che puoi inviare in tutta sicurezza ai tuoi server. Il tuo server può utilizzare questo token per creare un addebito.

Nota

La procedura descritta in questa guida è implementata completamente su GitHub. Per eseguire l’app demo, clona il repository e segui le istruzioni.

Configurare Stripe
Lato client
Lato server

Lato server

Per questa integrazione sono necessari endpoint sul server che comunicano con l’API Stripe. Utilizza le nostre librerie ufficiali per accedere all’API Stripe dal tuo server:

Command Line
Ruby
# Available as a gem sudo gem install stripe
Gemfile
Ruby
# If you use bundler, you can add this line to your Gemfile gem 'stripe'

Lato client

L’SDK per Android di Stripe è open source e completamente documentato.

Per installare l’SDK, aggiungi stripe-android al blocco dependencies del tuo file app/build.gradle:

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

Nota

Per ulteriori informazioni sulla versione più recente e su quelle precedenti dell’SDK, consulta la pagina Releases su GitHub. Per ricevere una notifica quando viene pubblicata una nuova versione, imposta il controllo delle versioni per il repository.

Configura l’SDK con la tua chiave pubblicabile di Stripe in modo che possa inviare le richieste all’API Stripe, ad esempio nella sottoclasse Application:

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

Nota

Use your test keys while you test and develop, and your live mode keys when you publish your app.

Creare il modulo di pagamento
Lato client

Acquisisci i dati della carta di credito in modo sicuro sul client con CardInputWidget, un componente integrabile dell’interfaccia utente fornito dall’SDK che acquisisce il numero di carta, la data di scadenza, il CVC e il codice postale

CardInputWidget esegue la convalida e la formattazione in tempo reale.

Crea un’istanza del componente carta e un pulsante Paga aggiungendo quanto segue al layout della pagina di completamento del pagamento:

content_checkout.xml
Visualizza l'esempio completo
<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior" tools:showIn="@layout/activity_checkout" tools:context=".CheckoutActivity"> <!-- ... --> <com.stripe.android.view.CardInputWidget android:id="@+id/cardInputWidget" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:layout_marginRight="20dp"/> <Button android:text="Pay" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/payButton" android:layout_marginTop="20dp" app:layout_constraintTop_toBottomOf="@+id/cardInputWidget" app:layout_constraintStart_toStartOf="@+id/cardInputWidget" app:layout_constraintEnd_toEndOf="@+id/cardInputWidget"/> <!-- ... --> </androidx.constraintlayout.widget.ConstraintLayout>

Esegui la tua app e verifica che nella pagina di completamento del pagamento siano presenti il componente carta e il pulsante di pagamento.

Creare un token
Lato client

Quando l’utente tocca il pulsante di pagamento, converti i dati della carta raccolti da CardInputWidget in un token Stripe. La tokenizzazione garantisce che nessun dato sensibile della carta arrivi al tuo server, mantenendo così la tua integrazione conforme alle norme PCI.

Il seguente codice mostra come utilizzare Stripe#createToken(). Il metodo utilizza un’istanza Card come primo parametro. Il secondo parametro è l’istanza ApiResultCallback<Token> che il client richiama in caso di esito positivo o negativo. Una volta completata la tokenizzazione, invia al tuo server l’ID token restituito.

CheckoutActivityKotlin.kt
Kotlin
Visualizza l'esempio completo
// Hook up the pay button to the card widget and Stripe instance val payButton: Button = findViewById(R.id.payButton) val weakActivity = WeakReference<Activity>(this@CheckoutActivityKotlin) payButton.setOnClickListener { // Get the card details from the card widget val cardInputWidget = findViewById<CardInputWidget>(R.id.cardInputWidget) cardInputWidget.card?.let { card -> // Create a Stripe token from the card details stripe = Stripe(applicationContext, PaymentConfiguration.getInstance(applicationContext).publishableKey) stripe.createToken(card, object: ApiResultCallback<Token> { override fun onSuccess(result: Token) { val tokenID = result.id // Send the Token identifier to the server... } override fun onError(e: java.lang.Exception) { // Handle error } }) } }

Invia l’ID token al tuo server dal client.

Creare un addebito con il token
Lato server

Command Line
curl
curl https://api.stripe.com/v1/charges \ -u
sk_test_BQokikJOvBiI2HlWgH4olfQ2
:
\ -d "amount"=999 \ -d "currency"="usd" \ -d "description"="Example charge" \ -d "source"="tok_visa"

La risposta alla creazione di un addebito sarà un addebito o un errore con un codice di errore. Se la risposta ha esito positivo, puoi evadere l’ordine del cliente e mostrare una schermata indicante che l’addebito è riuscito. In caso contrario, mostra un errore.

Verificare l’integrazione

Se riesci a inserire correttamente il numero di una carta di test in Card Element, invialo al server e verifica che abbia creato l’addebito. La tua integrazione è così terminata.

Hai creato un’integrazione con l’API Charges per iniziare subito ad accettare i pagamenti con carta. Questa API non supporta l’espansione delle aziende o clienti al di fuori di Stati Uniti e Canada. Per pagamenti più sicuri e globali, scopri come accettare un pagamento con l’API Payment Intents.

Vedi anche

  • Accettare Google Pay
  • Salvare le carte con l’API Charges
Questa pagina è stata utile?
SìNo
Hai bisogno di aiuto? Contatta l'assistenza clienti.
Partecipa al nostro programma di accesso anticipato.
Dai un'occhiata al nostro registro delle modifiche.
Domande? Contattaci.
LLM? Leggi llms.txt.
Realizzato da Markdoc