Preskočiť na hlavný obsah

Spustite Payment for Stripe z vašej aplikácie (URL schémy)

Stručná odpoveď: Vaša aplikácia alebo webová stránka otvorí URL adresu payment://, Payment for Stripe prijme platbu a potom otvorí vašu URL adresu spätného volania s výsledkom. Žiadne SDK. Žiadna práca so serverom. Funguje to rovnako na iPhone aj Androide, s niekoľkými rozdielmi uvedenými nižšie.

Celý referenčný dokument je k dispozícii na stránke paymentforstripe.com/api.

Ako to funguje

  1. Vaša aplikácia otvorí URL adresu payment:// s parametrami.
  2. Payment for Stripe sa otvorí a nastaví predaj. Obchodník prijme platbu čítačkou, Tap to Pay alebo napísanou kartou.
  3. Keď je to hotové, aplikácia otvorí vašu URL adresu callback s výsledkom pridaným ako parametre dopytu.

Obchodník musí byť prihlásený. Ak odkaz príde počas prebiehajúceho iného poplatku, aplikácia ho zamietne a vaše spätné volanie dostane error=charge_in_progress.

Vytvoriť poplatok: platba://nová

Jednorazová platba vo vami stanovenej sume.

Meno Typ Povinné Popis
amount celé číslo Áno Suma v najmenšej jednotke meny, väčšia ako 0. 1000 = 10,00 USD.
currency reťazec Nie Trojpísmenový kód ISO, napríklad usd alebo eur. Ak ho vynecháte, aplikácia použije menu, na ktorú je už nastavená.
description reťazec Nie Popis poplatku. Zakódujte ho do URL adresy.
customer reťazec Nie Existujúce ID zákazníka Stripe ( cus_…). Funguje aj customer_id. Ak je nastavené, email a name sa ignorujú.
email reťazec Nie E-mail zákazníka. Vytvorí nového zákazníka.
name reťazec Nie Meno zákazníka. Zakódujte ho do URL adresy. Vytvorí nového zákazníka.
metadata reťazec Nie Objekt JSON s kódovaním URL z párov kľúč-hodnota, pridaný k platbe. Platia obmedzenia metadát služby Stripe.
callback reťazec Nie URL adresa, ktorá sa otvorí po skončení predaja.
autoprocess boolovská hodnota Nie true preskočí klávesnicu a ihneď spustí nabíjanie. Predvolená hodnota false.
auto_return boolovská hodnota Nie true otvorí spätné volanie hneď, ako je výsledok známy. Predvolená hodnota false: spätné volanie čaká, kým obchodník nezatvorí obrazovku s výsledkami.
 payment://new?amount=2500&currency=eur&description=Coffee%20and%20pastry
 payment://new?amount=3500&autoprocess=true&auto_return=true&callback=myapp://payment-complete

Prepojenie s chýbajúcou, nulovou alebo nečíselnou amount sa ignoruje.

Vytvorte faktúru z vášho katalógu: platba://košík

Naplní košík cenami z vášho katalógu produktov Stripe. Obchodník potom účtuje ako obvykle a predaj sa uloží do Stripe ako zaplatená faktúra s týmito položkami. Zákazníkovi sa faktúra e-mailom neodošle.

Meno Typ Povinné Popis
prices reťazec Áno Páry price_id:quantity oddelené čiarkami, ako napríklad price_abc:2,price_xyz:1. Funguje aj line_items.
coupon reťazec Nie ID kupónu Stripe, ktorý sa má použiť v košíku.
customer reťazec Nie Funguje aj existujúce ID zákazníka Stripe, customer_id.
email reťazec Nie E-mail zákazníka. Vytvorí nového zákazníka.
name reťazec Nie Meno zákazníka. Zakódujte ho do URL adresy.
metadata reťazec Nie Objekt JSON s pármi kľúč-hodnota kódovaný pomocou URL.
callback reťazec Nie URL adresa, ktorá sa otvorí po skončení predaja.
autoprocess boolovská hodnota Nie Hodnota true spustí účtovanie po načítaní každej ceny (a kupónu).
auto_return boolovská hodnota Nie Rovnaké ako vyššie. Predvolená hodnota false.
 payment://cart?prices=price_coffee:2,price_muffin:1&email=customer@example.com

Neposielajte amount s prices. Celková suma pochádza z cien a prepojenie s oboma sa ignoruje. Ceny skryté pomocou payment_hidden tu stále fungujú.

Zaplatiť existujúcu faktúru: platba://faktúra

Osobne vyberie platbu za otvorenú faktúru Stripe. Suma, mena, zákazník a daň pochádzajú z faktúry. V prípade úspechu aplikácia označí faktúru ako zaplatenú. Funguje na iPhone a Androide.

Meno Typ Povinné Popis
id reťazec Áno ID faktúry Stripe. Musí začínať znakom in_. Odoslať otvorenú faktúru. V iPhone sa najprv finalizuje koncept. V systéme Android sa koncept zamietne s error=invoice_state_changed.
metadata reťazec Nie Objekt JSON s kódovaním URL, pridaný do PaymentIntent.
callback reťazec Nie URL adresa, ktorá sa otvorí po ukončení predaja. V prípade úspechu získa invoice_id a payment_intent_id.
autoprocess boolovská hodnota Nie true spustí účtovanie po úspešnom overení faktúry, iba ak je pripojená čítačka kariet.
auto_return boolovská hodnota Nie Rovnaké ako vyššie. Predvolená hodnota false.
 payment://invoice?id=in_1ABC123xyz&autoprocess=true&callback=myapp://invoice-paid

Faktúra nastavuje predaj, takže pre ktorúkoľvek z položiek s amount, currency, customer, customer_id, email, name, description, coupon, prices alebo line_items bude odkaz zamietnutý s error=invoice_invalid_param. Faktúry, ktoré sú zaplatené, neplatné, nevymáhateľné, v hodnote 0 USD, viazané na predplatné alebo nastavené na účtovanie predvoleným spôsobom platby, sú tiež zamietnuté, každá s vlastnou chybou invoice_….

Spätné volanie

Aplikácia pridá do vašej URL adresy spätného volania tieto:

Meno Typ Odoslané Popis
status reťazec Vždy success, error alebo cancelled.
charge_id reťazec O úspechu ID platby. Na iPhone je to platba cez Stripe ( ch_…). Na Androide je to PaymentIntent ( pi_…).
stripe_charge_id reťazec Iba pre Android Poplatok Stripe ( ch_…).
payment_intent_id reťazec O úspechu PaymentIntent. iPhone ho odosiela iba pre payment://invoice. Android ho odosiela pre každú platbu kartou.
invoice_id reťazec Odkazy na faktúry Zaplatená faktúra, pre payment://invoice.
amount celé číslo O úspechu Účtovaná suma v najmenšej jednotke.
currency reťazec O úspechu Malé písmená kódu ISO.
error reťazec Pri chybe Krátky kód ako charge_in_progress alebo invoice_already_paid, alebo čitateľná správa o zamietnutej karte.
 myapp://payment-complete?status=success&charge_id=ch_3Qx…&success=true&amount=3500&currency=usd&chargeId=ch_3Qx…

Potrebujete rovnaké ID na oboch platformách? Najprv si prečítajte stripe_charge_id a potom sa vráťte k charge_id.

V prípade starších integrácií aplikácia odosiela aj success=true, chargeId, cancelled=true a error[message]. Nový kód by mal mať hodnotu status.

Zrušenie otvorí spätné volanie okamžite. Úspešné alebo chybné naúčtovanie čaká na zatvorenie obrazovky s výsledkami obchodníkom, pokiaľ nezadáte auto_return=true. Na iPhone sa pri platbe v hotovosti spätné volanie nikdy neotvorí, pretože nebolo nič naúčtované.

Kódovanie URL adresy

  • Zakódujte každú hodnotu, ktorá obsahuje medzery alebo symboly. Medzery sa stanú %20, { a } sa stanú %7B a %7D, " sa stane %22, : sa stane %3A.
  • Ak má vaša URL adresa spätného volania vlastný reťazec dopytu, zakódujte celé spätné volanie tak, aby jeho parameter & nerozdeľoval váš odkaz payment://.
  • Čiarky a dvojbodky v prices môžu zostať tak, ako sú.

Metadáta {"order_id":"1234","location":"Store A"} sa stanú:

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

Starší formulár metadata[order_id]=1234 tiež funguje.

Pomohol Vám tento článok?
0 z 0 to považovali za užitočné