Īsa atbilde: jūsu lietotne vai tīmekļa vietne atver payment:// URL, Payment for Stripe pieņem maksājumu un pēc tam atver jūsu atzvanīšanas URL ar rezultātu. Nav nepieciešams SDK. Nav nepieciešams serveris. Tas darbojas vienādi gan iPhone, gan Android ierīcēs, ar dažām atšķirībām, kas norādītas tālāk.
Pilna atsauce ir pieejama vietnē paymentforstripe.com/api.
Kā tas darbojas
- Jūsu lietotne atver
payment://URL ar parametriem. - Atveras Payment for Stripe un tiek iestatīta pirkuma veikšana. Tirgotājs pieņem maksājumu ar lasītāju, Tap to Pay vai drukātu karti.
- Kad tas ir pabeigts, lietotne atver jūsu
callbackURL ar rezultātu, kas pievienots kā vaicājuma parametri.
Tirgotājam ir jāpiesakās. Ja saite tiek saņemta, kamēr tiek apstrādāts cits maksājums, lietotne to noraida, un jūsu atzvanīšanas ziņojums saņem error=charge_in_progress.
Izveidojiet maksājumu: payment://new
Vienreizējs maksājums par jūsu noteikto summu.
| Vārds | Tips | Obligāti | Apraksts |
|---|---|---|---|
amount
|
vesels skaitlis | Jā | Summa valūtas mazākajā vienībā, kas ir lielāka par 0. 1000 = 10,00 ASV dolāri. |
currency
|
aukla | Nē | Trīs burtu ISO kods, piemēram usd vai eur. Izlaidiet to, un lietotne izmantos valūtu, kas tai jau ir iestatīta. |
description
|
aukla | Nē | Maksājuma apraksts. URL kodējums. |
customer
|
aukla | Nē | Esošais Stripe klienta ID ( cus_…). customer_id arī darbojas. Ja tas ir iestatīts, email un name tiek ignorēti. |
email
|
aukla | Nē | Klienta e-pasts. Izveido jaunu klientu. |
name
|
aukla | Nē | Klienta vārds. URL kodējums. Izveido jaunu klientu. |
metadata
|
aukla | Nē | URL kodēts JSON objekts, kas sastāv no atslēgu-vērtību pāriem, pievienots maksājumam. Ir spēkā Stripe metadatu ierobežojumi. |
callback
|
aukla | Nē | URL, kas jāatver pēc izpārdošanas beigām. |
autoprocess
|
Būla vērtība | Nē | true izlaiž tastatūru un nekavējoties sāk uzlādi. Noklusējuma vērtība ir false. |
auto_return
|
Būla vērtība | Nē | true atver atzvanīšanas funkciju, tiklīdz rezultāts ir zināms. Noklusējuma vērtība false: atzvanīšanas funkcija gaida, līdz tirgotājs aizver rezultātu ekrānu. |
payment://new?amount=2500¤cy=eur&description=Coffee%20and%20pastry payment://new?amount=3500&autoprocess=true&auto_return=true&callback=myapp://payment-complete Saite ar trūkstošu, nulles vai neskaitlisku amount tiek ignorēta.
Izveidojiet rēķinu no sava kataloga: payment://cart
Aizpilda grozu ar cenām no jūsu Stripe produktu kataloga. Pēc tam tirgotājs iekasē maksu kā parasti, un pārdošana tiek saglabāta Stripe kā apmaksāts rēķins ar šīm rindas precēm. Rēķins klientam netiek nosūtīts pa e-pastu.
| Vārds | Tips | Obligāti | Apraksts |
|---|---|---|---|
prices
|
aukla | Jā | Komatiem atdalīti price_id:quantity pāri, piemēram, price_abc:2,price_xyz:1. Der arī line_items. |
coupon
|
aukla | Nē | Stripe grozam lietojamais kupona ID. |
customer
|
aukla | Nē | Esošais Stripe klienta ID. customer_id arī darbojas. |
email
|
aukla | Nē | Klienta e-pasts. Izveido jaunu klientu. |
name
|
aukla | Nē | Klienta vārds. URL kodējums. |
metadata
|
aukla | Nē | URL kodēts JSON objekts, kas sastāv no atslēgu-vērtību pāriem. |
callback
|
aukla | Nē | URL, kas jāatver pēc izpārdošanas beigām. |
autoprocess
|
Būla vērtība | Nē | true sāk iekasēt maksu, tiklīdz ir ielādēta katra cena (un kupons). |
auto_return
|
Būla vērtība | Nē | Tāpat kā iepriekš. Noklusējuma vērtība ir false. |
payment://cart?prices=price_coffee:2,price_muffin:1&email=customer@example.com Nesūtiet amount kopā ar prices. Kopsumma tiek ņemta no cenām, un saite ar abām tiek ignorēta. Cenas, kas paslēptas ar payment_hidden, šeit joprojām darbojas.
Apmaksāt esošu rēķinu: payment://invoice
Iekasē klātienes maksājumu par neapmaksātu Stripe rēķinu. Summa, valūta, klients un nodoklis ir norādīti rēķina informācijā. Veiksmīgas apmaksas gadījumā lietotne atzīmē rēķinu kā apmaksātu. Darbojas iPhone un Android ierīcēs.
| Vārds | Tips | Obligāti | Apraksts |
|---|---|---|---|
id
|
aukla | Jā | Stripe rēķina ID. Jāsākas ar in_. Nosūtīt atvērtu rēķinu. iPhone ierīcēs vispirms tiek pabeigts melnraksts. Android ierīcēs melnraksts tiek noraidīts ar error=invoice_state_changed. |
metadata
|
aukla | Nē | URL kodēts JSON objekts, kas pievienots PaymentIntent. |
callback
|
aukla | Nē | URL, kas jāatver pēc pārdošanas pabeigšanas. Veiksmīgas pabeigšanas gadījumā tiek iegūti invoice_id un payment_intent_id. |
autoprocess
|
Būla vērtība | Nē | true sāk iekasēšanu pēc rēķinu pārbaudes, tikai tad, ja ir pievienots karšu lasītājs. |
auto_return
|
Būla vērtība | Nē | Tāpat kā iepriekš. Noklusējuma vērtība ir false. |
payment://invoice?id=in_1ABC123xyz&autoprocess=true&callback=myapp://invoice-paid Rēķins iestata pārdošanu, tāpēc jebkura saite no “ amount ”, currency, customer, customer_id, email ”, “ name ”, “ description ”, coupon, prices ” vai line_items tiek noraidīta ar error=invoice_invalid_param ”. Rēķini, kas ir apmaksāti, anulēti, neiekasējami, 0 USD, saistīti ar abonementu vai iestatīti iekasēšanai, izmantojot noklusējuma maksājuma metodi, arī tiek noraidīti, katram radot savu kļūdu invoice_….
Atzvans
Lietotne pievieno jūsu atzvanīšanas URL šos datus:
| Vārds | Tips | Nosūtīts | Apraksts |
|---|---|---|---|
status
|
aukla | Vienmēr | success, error vai cancelled. |
charge_id
|
aukla | Par panākumiem | Maksājuma ID. iPhone ierīcēs tas ir Stripe maksājums ( ch_…). Android ierīcēs tas ir PaymentIntent ( pi_…). |
stripe_charge_id
|
aukla | Tikai Android | Stripe lādiņš ( ch_…). |
payment_intent_id
|
aukla | Par panākumiem | Maksājuma nolūks. iPhone to nosūta tikai payment://invoice. Android to nosūta katram maksājumam ar karti. |
invoice_id
|
aukla | Rēķinu saites | Apmaksāts rēķins, payment://invoice. |
amount
|
vesels skaitlis | Par panākumiem | Iekasētā summa, izteikta mazākajā vienībā. |
currency
|
aukla | Par panākumiem | Mazais ISO kods. |
error
|
aukla | Kļūdas gadījumā | Īss kods, piemēram charge_in_progress vai invoice_already_paid, vai salasāms ziņojums par noraidītu karti. |
myapp://payment-complete?status=success&charge_id=ch_3Qx…&success=true&amount=3500¤cy=usd&chargeId=ch_3Qx… Vai abās platformās ir nepieciešams viens un tas pats ID? Vispirms izlasiet stripe_charge_id un pēc tam atgriezieties pie charge_id.
Vecākām integrācijām lietotne nosūta arī success=true, chargeId, cancelled=true un error[message]. Jaunajam kodam vajadzētu nolasīt status.
Atcelšana nekavējoties atver atzvanu. Maksājuma veiksme vai kļūda gaida, līdz tirgotājs aizver rezultātu ekrānu, ja vien netiek nodota auto_return=true vērtība. iPhone tālrunī skaidras naudas pirkums nekad neatver atzvanu, jo nekas netika iekasēts.
URL kodējums
- Kodējiet katru vērtību, kurā ir atstarpes vai simboli. Atstarpes kļūst par
%20,{un}kļūst par%7B, un%7D,"kļūst par%22,:kļūst par%3A. - Ja jūsu atzvanīšanas URL ir sava vaicājuma virkne, kodējiet visu atzvanīšanas saiti tā,
&tā nesadalītu jūsupayment://saiti. - Komati un koli
pricesvar palikt nemainīti.
Metadati {"order_id":"1234","location":"Store A"} kļūst par:
payment://new?amount=10000&description=Invoice%20%231234&metadata=%7B%22order_id%22%3A%221234%22%2C%22location%22%3A%22Store%20A%22%7D Vecākā metadata[order_id]=1234 veidlapa arī darbojas.