Kort svar: Din app eller dit websted åbner en payment:// URL. Payment for Stripe tager imod betalingen og åbner derefter din callback URL med resultatet. Intet SDK. Intet serverarbejde. Det fungerer på samme måde på iPhone og Android, med et par forskelle, der er nævnt nedenfor.
Den fulde reference findes på paymentforstripe.com/api.
Sådan fungerer det
- Din app åbner en
payment://URL med parametre. - Payment for Stripe åbner og sætter salget op. Forhandleren tager imod betalingen med en kortlæser, Tap to Pay eller et indtastet kort.
- Når det er færdigt, åbner appen din
callbackURL med resultatet tilføjet som forespørgselsparametre.
Forhandleren skal være logget ind. Hvis der modtages et link, mens en anden faktura kører, afviser appen det, og dit tilbagekald får meddelelsen error=charge_in_progress.
Opret en regning: betaling://ny
En engangsbetaling på et beløb, du fastsætter.
| Navn | Type | Påkrævet | Beskrivelse |
|---|---|---|---|
amount
|
heltal | Ja | Beløb i valutaens mindste enhed, større end 0. 1000 = $10,00. |
currency
|
snor | Ingen | ISO-kode på tre bogstaver, f.eks. usd eller eur. Hvis du udelader den, bruger appen den valuta, den allerede er indstillet til. |
description
|
snor | Ingen | Fakturabeskrivelse. URL-kode det. |
customer
|
snor | Ingen | Eksisterende Stripe kunde-ID ( cus_…). customer_id fungerer også. Når det er angivet, ignoreres email og name. |
email
|
snor | Ingen | Kunde-e-mail. Opretter en ny kunde. |
name
|
snor | Ingen | Kundenavn. URL-koder det. Opretter en ny kunde. |
metadata
|
snor | Ingen | URL-kodet JSON-objekt af nøgle-værdi-par, tilføjet til betalingen. Stripe metadatabegrænsninger gælder. |
callback
|
snor | Ingen | URL, der skal åbnes, når salget er afsluttet. |
autoprocess
|
boolsk | Ingen | true springer tastaturet over og starter regningen med det samme. Standard false. |
auto_return
|
boolsk | Ingen | true åbner tilbagekaldet, så snart resultatet er kendt. Standard false: tilbagekaldet venter, indtil forhandleren lukker resultatskærmen. |
payment://new?amount=2500¤cy=eur&description=Coffee%20and%20pastry payment://new?amount=3500&autoprocess=true&auto_return=true&callback=myapp://payment-complete Et link med et manglende, nul eller ikke-numerisk amount ignoreres.
Opret en faktura fra dit katalog: payment://cart
Fylder indkøbskurven med priser fra dit Stripe produktkatalog. Forhandleren betaler derefter som sædvanligt, og salget gemmes i Stripe som en betalt faktura med disse linjeposter. Den sender ikke en faktura via e-mail til din kunde.
| Navn | Type | Påkrævet | Beskrivelse |
|---|---|---|---|
prices
|
snor | Ja | Kommaseparrede price_id:quantity, f.eks. price_abc:2,price_xyz:1. line_items fungerer også. |
coupon
|
snor | Ingen | Stripe kupon-ID, der skal anvendes på kurven. |
customer
|
snor | Ingen | Eksisterende Stripe kunde-ID, customer_id fungerer også. |
email
|
snor | Ingen | Kunde-e-mail. Opretter en ny kunde. |
name
|
snor | Ingen | Kundenavn. URL-kode det. |
metadata
|
snor | Ingen | URL-kodet JSON-objekt af nøgle-værdi-par. |
callback
|
snor | Ingen | URL, der skal åbnes, når salget er afsluttet. |
autoprocess
|
boolsk | Ingen | true starter regningen, når alle priser (og kuponen) er indlæst. |
auto_return
|
boolsk | Ingen | Samme som ovenfor. Standardværdien false. |
payment://cart?prices=price_coffee:2,price_muffin:1&email=customer@example.com Send ikke amount med prices. Totalen kommer fra priserne, og et link med begge ignoreres. Priser skjult med payment_hidden virker stadig her.
Betal en eksisterende faktura: betaling://faktura
Indsamler en personlig betaling for en åben Stripe faktura. Beløb, valuta, kunde og moms stammer alle fra fakturaen. Når betalingen er gennemført, markerer appen fakturaen som betalt. Virker på iPhone og Android.
| Navn | Type | Påkrævet | Beskrivelse |
|---|---|---|---|
id
|
snor | Ja | Stripe-faktura-ID. Skal starte med in_. Send en åben faktura. På iPhone færdiggøres en kladde først. På Android afvises en kladde med error=invoice_state_changed. |
metadata
|
snor | Ingen | URL-kodet JSON-objekt, tilføjet til PaymentIntent. |
callback
|
snor | Ingen | URL, der skal åbnes, når salget er afsluttet. Henter invoice_id og payment_intent_id hvis salget er gennemført. |
autoprocess
|
boolsk | Ingen | true starter regningen efter fakturakontrollen er bestået, kun når en kortlæser er tilsluttet. |
auto_return
|
boolsk | Ingen | Samme som ovenfor. Standard false. |
payment://invoice?id=in_1ABC123xyz&autoprocess=true&callback=myapp://invoice-paid Fakturaen angiver salget, så alle af følgende: amount, currency, customer, customer_id, email, name, description, coupon, prices eller line_items får linket afvist med error=invoice_invalid_param. Fakturaer, der er betalte, ugyldige, ikke-inddrivelige, $0, knyttet til et abonnement eller indstillet til at fakturere en standardbetalingsmetode, afvises også, hver med sin egen invoice_… -fejl.
Tilbagekaldet
Appen tilføjer disse til din callback-URL:
| Navn | Type | Sendt | Beskrivelse |
|---|---|---|---|
status
|
snor | Altid | success, error eller cancelled. |
charge_id
|
snor | Ved succes | Betalingens ID. På iPhone er det Stripe-fakturaen ( ch_…). På Android er det PaymentIntent ( pi_…). |
stripe_charge_id
|
snor | Kun Android | Stripe-regningen ( ch_…). |
payment_intent_id
|
snor | Ved succes | PaymentIntent. iPhone sender den kun til payment://invoice. Android sender den for hver kortbetaling. |
invoice_id
|
snor | Fakturalinks | Den betalte faktura, for payment://invoice. |
amount
|
heltal | Ved succes | Faktureret beløb, i den mindste enhed. |
currency
|
snor | Ved succes | ISO-kode med små bogstaver. |
error
|
snor | Ved fejl | En kort kode som f.eks. charge_in_progress eller invoice_already_paid, eller en læsbar besked for et afvist kort. |
myapp://payment-complete?status=success&charge_id=ch_3Qx…&success=true&amount=3500¤cy=usd&chargeId=ch_3Qx… Brug for det samme ID på begge platforme? Læs stripe_charge_id først, og brug derefter charge_id.
For ældre integrationer sender appen også success=true, chargeId, cancelled=true og error[message]. Ny kode bør læse status.
En annullering åbner tilbagekaldet med det samme. En fakturas succes eller fejl venter på, at forhandleren lukker resultatskærmen, medmindre du sender auto_return=true. På iPhone åbner et kontantsalg aldrig tilbagekaldet, da der ikke er blevet faktureret noget.
URL-kodning
- Indkod alle værdier, der indeholder mellemrum eller symboler. Mellemrum bliver
%20,{og}bliver%7Bog%7D,"bliver%22,:bliver%3A. - Hvis din callback-URL har sin egen forespørgselsstreng, skal du indkode hele callback-adressen, så den
&ikke opdeler ditpayment://link. - Kommaerne og kolonene i
priceskan forblive, som de er.
Metadata {"order_id":"1234","location":"Store A"} bliver:
payment://new?amount=10000&description=Invoice%20%231234&metadata=%7B%22order_id%22%3A%221234%22%2C%22location%22%3A%22Store%20A%22%7D Den ældre metadata[order_id]=1234 formular fungerer også.