Skip to content

API pentru dezvoltatori

Integrați și personalizați

Lansați Payment for Stripe din propria aplicație sau site web cu scheme URL și controlați ce produse apar în aplicație direct din tabloul de bord Stripe.

Integrare cu scheme URL

Cum funcționează

1

Aplicația dvs. deschide un payment:// URL cu parametri

2

Payment for Stripe se lansează și procesează tranzacția

3

La finalizare, aplicația redirecționează către adresa URL de apel invers cu rezultatul

Puncte finale

Creați o încasare

payment://new?

Procesați o plată unică cu sumă, monedă și descriere.

Parametri

NumeTipObligatoriuDescriere
amountintegerDaSumă în cenți (de exemplu, 1000 = 10,00 USD)
currencystringNuCod valutar ISO din trei litere (implicit: moneda curentă a aplicației)
descriptionstringNuDescrierea încasării, codificată URL
customerAlias: customer_idstringNuID client Stripe existent
emailstringNuAdresa de e-mail a clientului pentru chitanță
namestringNuNumele clientului codificat prin URL
metadatastringNuPerechi cheie-valoare personalizate (JSON codificat în URL)
callbackstringNuURL la care se poate reveni după finalizare
autoprocessAlias: autobooleanNuSăriți peste ecranul principal și începeți imediat încasarea
auto_returnbooleanNuDeclanșează apelul invers imediat ce se încarcă rezultatul, fără să aștepte ca comerciantul să închidă dialogul cu rezultatul. Valoare implicită: false.

Vindeți articole din catalogul dvs.

payment://cart?

Completați coșul cu prețuri din catalogul dvs. Stripe pentru o plată personală. Vânzarea este salvată ca o factură Stripe plătită. Nimic nu este trimis clientului.

Parametri

NumeTipObligatoriuDescriere
pricesAlias: line_itemsstringDaID-uri de preț separate prin virgulă cu cantități (de exemplu, price_abc:2, price_xyz:1)
couponstringNuID-ul cuponului Stripe de aplicat în coș
customerAlias: customer_idstringNuID client Stripe existent
emailstringNuAdresa de e-mail a clientului pentru chitanță
namestringNuNumele clientului codificat prin URL
metadatastringNuPerechi cheie-valoare personalizate (JSON codificat în URL)
callbackstringNuURL la care se poate reveni după finalizare
autoprocessAlias: autobooleanNuSăriți peste ecranul principal și începeți imediat încasarea
auto_returnbooleanNuDeclanșează apelul invers imediat ce se încarcă rezultatul, fără să aștepte ca comerciantul să închidă dialogul cu rezultatul. Valoare implicită: false.

Plata unei facturi existente

payment://invoice?

Colectați o plată personală pentru o factură Stripe existentă. Suma, moneda, clientul și taxa provin din factură. Suprascrierea oricăreia dintre acestea este respinsă. Comerciantul introduce un card prin cititor / Tap to Pay / introducere manuală; în caz de succes, factura este marcată ca plătită în afara benzii și legată prin metadatele charge_id și payment_intent_id. Facturile cu abonamente, default_payment_method sau cu statusul plătit, anulat sau neîncasabil sunt respinse cu o eroare care poate duce la acțiune. Facturi preliminare: iOS le finalizează mai întâi, Android le respinge cu invoice_state_changed.

Parametri

NumeTipObligatoriuDescriere
idstringDaID-ul facturii Stripe (trebuie să înceapă cu in_)
callbackstringNuURL la care se poate reveni după finalizare. Primește invoice_id și payment_intent_id în caz de succes.
metadatastringNuPerechi cheie-valoare personalizate (JSON codificat URL) îmbinate în metadatele PaymentIntent
autoprocessAlias: autobooleanNuSăriți peste ecranul principal și începeți imediat încasarea
auto_returnbooleanNuDeclanșează apelul invers imediat ce se încarcă rezultatul, fără să aștepte ca comerciantul să închidă dialogul cu rezultatul. Valoare implicită: false.

Gestionarea apelurilor inverse

Când tranzacția este finalizată, Payment for Stripe redirecționează către adresa URL de apel invers, cu parametri de interogare care indică rezultatul. În mod implicit, redirecționarea se declanșează după ce comerciantul închide caseta de dialog cu rezultatul, astfel încât să poată lua măsuri ulterioare plății (trimiterea unei chitanțe prin e-mail, rambursare). Transmiteți auto_return=true pentru a se declanșa imediat ce rezultatul este cunoscut. Compatibil cu iOS și Android.

Parametrii de apel invers

ParametruValoriDescriere
statussuccess | error | cancelledRezultatul tranzacției
charge_idstringID-ul debitării Stripe (în caz de succes). iOS trimite ID-ul debitării (ch_). Android trimite ID-ul PaymentIntent (pi_) și introduce ID-ul debitării în stripe_charge_id.
stripe_charge_idstringID-ul de plată Stripe (ch_) în caz de succes. Numai pentru Android.
invoice_idstringID factură Stripe (în caz de succes, doar fluxul payment://invoice)
payment_intent_idstringID Stripe PaymentIntent (în caz de succes). iOS: doar fluxul payment://invoice. Android: fiecare vânzare cu cardul.
errorstringMesaj de eroare (în caz de eroare)

Plata a fost înregistrată, dar factura nu a putut fi marcată ca plătită: iOS returnează status=error cu charge_id, invoice_id și payment_intent_id. Android returnează status=success cu invoice_reconciliation_failed=true.

Câmpuri vechi, păstrate pentru integrările mai vechi: success, amount, currency, chargeId, cancelled, error[message]. Integrările noi ar trebui să citească câmpurile de mai sus.

Exemple

Încasare simplă

Încasați 10,00 USD doar cu o sumă

payment://new?amount=1000

Încasare cu descriere

Încasați 25,00 EUR cu o descriere

payment://new?amount=2500&currency=eur&description=Coffee%20and%20pastry

Încasare cu client nou

Încasați 50,00 USD și creați o înregistrare de client

payment://new?amount=5000&name=John%20Smith&[email protected]

Încasare de la un client existent

Încasați 75,00 USD de la un client Stripe existent

payment://new?amount=7500&customer=cus_ABC123xyz

Încasare cu metadate

Încasați 100,00 USD cu metadate personalizate pentru evidența dvs.

payment://new?amount=10000&description=Invoice%20%231234&metadata=%7B%22order_id%22%3A%221234%22%2C%22location%22%3A%22Store%20A%22%7D

Procesare automată cu apel invers

Săriți peste ecranul principal și reveniți la aplicația dvs. când ați terminat

payment://new?amount=3500&autoprocess=true&callback=myapp://payment-complete

Revenire automată la rezultat

Declanșați apelul invers imediat ce rezultatul este cunoscut, fără să așteptați ca comerciantul să închidă dialogul cu rezultatul

payment://new?amount=3500&autoprocess=true&auto_return=true&callback=myapp://payment-complete

Coș cu articole de linie

Facturați pentru produsele din catalogul dvs. Stripe

payment://cart?prices=price_coffee:2,price_muffin:1&[email protected]

Plata unei facturi existente

Încasați plata în persoană pentru o factură Stripe existentă. Returnează invoice_id și payment_intent_id în caz de succes.

payment://invoice?id=in_1ABC123xyz&autoprocess=true&callback=myapp://invoice-paid

Exemplu complet

Toți parametrii combinați pentru un flux complet integrat

payment://new?amount=15000&currency=usd&description=Service%20Fee&customer=cus_ABC123xyz&metadata=%7B%22invoice%22%3A%22INV-2024-001%22%7D&autoprocess=true&callback=myapp://payment-result

Codificare URL

Nu uitați să codificați caracterele speciale în valorile parametrilor pentru URL. Spațiile devin %20, acoladele devin %7B și %7D.

Ascundeți produsele cu metadate

Ascunderea produselor din aplicație

Aplicația listează produsele și prețurile din contul dvs. Stripe. Pentru a exclude unul dintre ele din aplicație (de exemplu, articole vândute doar prin magazinul dvs. online), adăugați această cheie de metadate la produs sau la preț în tabloul de bord Stripe:

payment_hidden = true

Pe un produs: ascunde produsul și toate prețurile sale.

Pe un preț: ascunde doar prețul respectiv.

Eliminați cheia sau setați-o la false pentru a-l afișa din nou. Modificările se aplică data viitoare când aplicația încarcă lista de produse.

Linkurile pentru coș continuă să funcționeze

Ascunderea afectează doar lista de produse din cadrul aplicației. Adresele URL payment://cart care fac referire la un preț ascuns funcționează în continuare, iar abonamentele existente nu sunt afectate.

Sunteți gata de integrare?

Descărcați aplicația și începeți să vă testați integrarea chiar azi.