Ugrás a fő tartalomhoz

Indítsa el Payment for Stripe az alkalmazásából (URL-sémák)

Rövid válasz: Az alkalmazásod vagy webhelyed megnyit egy payment:// URL-t, Payment for Stripe fogadja a fizetést, majd megnyitja a visszahívási URL-t az eredménnyel. Nincs SDK. Nincs szervermunka. iPhone-on és Androidon ugyanúgy működik, néhány különbséggel, amelyeket alább ismertetünk.

A teljes referencia a paymentforstripe.com/api oldalon található.

Hogyan működik

  1. Az alkalmazásod egy payment:// URL-t nyit meg paraméterekkel.
  2. Megnyílik Payment for Stripe, és beállítja az eladást. A kereskedő elfogadja a fizetést egy kártyaolvasóval, Tap to Pay vagy begépelt kártyával.
  3. Amikor elkészült, az alkalmazás megnyitja callback URL-címet, és a benne lévő eredményt lekérdezési paraméterként adja hozzá.

A kereskedőnek be kell jelentkeznie. Ha egy link érkezik, miközben egy másik terhelés folyamatban van, az alkalmazás elutasítja azt, és a visszahívás error=charge_in_progress kap.

Hozzon létre egy terhelést: payment://new

Egyszeri befizetés az Ön által meghatározott összegre.

Név Típus Kívánt Leírás
amount egész szám Igen Az összeg a pénznem legkisebb egységében, 0-nál nagyobb értékben. 1000 = 10,00 USD.
currency húr Nem Hárombetűs ISO-kód, például usd vagy eur. Hagyd ki, és az alkalmazás a már beállított pénznemet fogja használni.
description húr Nem Díj leírása. URL-kódolás.
customer húr Nem Meglévő Stripe ügyfél-azonosító ( cus_…). customer_id is működik. Ha be van állítva, email és name figyelmen kívül marad.
email húr Nem Ügyfél e-mail címe. Létrehoz egy új ügyfelet.
name húr Nem Ügyfél neve. URL-kódolás. Létrehoz egy új ügyfelet.
metadata húr Nem URL-kódolású JSON objektum kulcs-érték párokból, hozzáadva a fizetéshez. Stripe metaadat-korlátai érvényesek.
callback húr Nem Az akció befejezésekor megnyitandó URL.
autoprocess logikai érték Nem true kihagyja a billentyűzetet, és azonnal megkezdi a töltést. Alapértelmezés szerint false.
auto_return logikai érték Nem true a visszahívás azonnal megnyílik, amint az eredmény ismert. Alapértelmezett false érték esetén a visszahívás addig vár, amíg a kereskedő bezárja az eredményképernyőt.
 payment://new?amount=2500&currency=eur&description=Coffee%20and%20pastry
 payment://new?amount=3500&autoprocess=true&auto_return=true&callback=myapp://payment-complete

A hiányzó, nulla vagy nem numerikus amount hivatkozásokat a rendszer figyelmen kívül hagyja.

Hozz létre egy számlát a katalógusodból: payment://cart

A kosarat feltölti a Stripe termékkatalógusod áraival. A kereskedő ezután a szokásos módon számláz, és az eladás kifizetett számlaként kerül mentésre Stripe ban ezekkel a tételsorokkal. Nem küld számlát e-mailben az ügyfélnek.

Név Típus Kívánt Leírás
prices húr Igen A vesszővel elválasztott price_id:quantity párok, például price_abc:2,price_xyz:1. line_items is működik.
coupon húr Nem A kosárhoz alkalmazható Stripe kuponazonosító.
customer húr Nem A meglévő Stripe ügyfél-azonosító, customer_id is működik.
email húr Nem Ügyfél e-mail címe. Létrehoz egy új ügyfelet.
name húr Nem Ügyfél neve. URL-kódolás.
metadata húr Nem URL-kódolású JSON-objektum kulcs-érték párokból.
callback húr Nem Az akció befejezésekor megnyitandó URL.
autoprocess logikai érték Nem true hatására a terhelés akkor kezdődik, amikor minden ár (és a kupon) betöltődött.
auto_return logikai érték Nem Ugyanaz, mint fent. Alapértelmezés szerint false.
 payment://cart?prices=price_coffee:2,price_muffin:1&email=customer@example.com

Ne küldjön amount prices együtt. Az összeg az árakból származik, és a mindkettőt tartalmazó linket figyelmen kívül hagyja a rendszer. A payment_hidden attribútummal elrejtett árak itt is működnek.

Meglévő számla befizetése: payment://invoice

Személyes befizetést gyűjt egy kiegyenlítetlen Stripe számláról. Az összeg, a pénznem, az ügyfél és az adó mind a számláról származik. Siker esetén az alkalmazás kifizetettként jelöli meg a számlát. iPhone-on és Androidon működik.

Név Típus Kívánt Leírás
id húr Igen Stripe számlaazonosító. in_ karakterrel kell kezdődnie. Nyitott számla küldése. iPhone-on a vázlatot véglegesítik először. Androidon a vázlatot elutasítják a következő hibakóddal: error=invoice_state_changed.
metadata húr Nem URL-kódolású JSON objektum, hozzáadva a PaymentIntent-hez.
callback húr Nem Az eladás befejezésekor megnyitandó URL. Sikeres tranzakció esetén lekéri invoice_id és payment_intent_id.
autoprocess logikai érték Nem true a számlaellenőrzések sikeres befejezése után indítja el a terhelést, csak kártyaolvasó csatlakoztatása esetén.
auto_return logikai érték Nem Ugyanaz, mint fent. Alapértelmezés szerint false.
 payment://invoice?id=in_1ABC123xyz&autoprocess=true&callback=myapp://invoice-paid

A számla beállítja az eladást, így amount, currency, customer, customer_id, email, name, description, coupon, prices, vagy line_items bármelyike elutasításra kerül az error=invoice_invalid_param hibával. A kifizetett, érvénytelen, behajthatatlan, 0 dolláros, előfizetéshez kötött vagy alapértelmezett fizetési módra beállított számlák is elutasításra kerülnek, mindegyikhez saját invoice_… hibakód társul.

A visszahívás

Az alkalmazás ezeket hozzáadja a visszahívási URL-hez:

Név Típus Küldött Leírás
status húr Mindig success, error vagy cancelled.
charge_id húr A sikerről A fizetés azonosítója. iPhone-on ez a Stripe terhelés ( ch_…). Androidon a PaymentIntent ( pi_…).
stripe_charge_id húr Csak Androidon A Stripe töltés ( ch_…).
payment_intent_id húr A sikerről A PaymentIntent. Az iPhone csak payment://invoice küldi. Az Android minden kártyás fizetéshez elküldi.
invoice_id húr Számla linkek A kifizetett számla, payment://invoice.
amount egész szám A sikerről Felszámított összeg, a legkisebb egységben.
currency húr A sikerről Kisbetűs ISO-kód.
error húr Hiba esetén Egy rövid kód, például charge_in_progress vagy invoice_already_paid, vagy egy olvasható üzenet elutasított kártya esetén.
 myapp://payment-complete?status=success&charge_id=ch_3Qx…&success=true&amount=3500&currency=usd&chargeId=ch_3Qx…

Ugyanarra az azonosítóra van szüksége mindkét platformon? Először olvassa el stripe_charge_id, majd térjen vissza charge_id.

Régebbi integrációk esetén az alkalmazás success=true, chargeId, cancelled=true és error[message] értékeket is elküldi. Az új kódnak status kell beolvasnia.

A visszavonás azonnal megnyitja a visszahívást. A terhelés sikeressége vagy hibája esetén a kereskedő bezárja az eredményképernyőt, kivéve, ha átadja auto_return=true paramétert. iPhone-on a készpénzes vásárlás soha nem nyitja meg a visszahívást, mivel semmit sem terheltek meg.

URL-kódolás

  • Kódold az összes olyan értéket, amely szóközöket vagy szimbólumokat tartalmaz. A szóközök %20, { és } %7B, %7D " %22, : pedig %3A lesz.
  • Ha a visszahívási URL-címednek saját lekérdezési karakterlánca van, kódold a teljes visszahívást úgy, hogy az & ne bontsa szét payment:// linkedet.
  • prices a vesszők és kettőspontok változatlanok maradhatnak.

{"order_id":"1234","location":"Store A"} metaadat a következő lesz:

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

A régebbi metadata[order_id]=1234 űrlap is működik.

Hasznos volt ez a cikk?
0/0 szavazó hasznosnak találta ezt