Mokėjimo puslapis (HPP)
Priimkite mokėjimus naudodami Cost+ mokėjimo puslapį
Mokėjimo puslapis (HPP) yra Cost+ PCI DSS atitinkanti mokėjimo forma. Ji leidžia priimti mokėjimus netvarkant jautrių kortelės duomenų savo serveriuose. Sukuriate užsakymą per API, nukreipiate klientą į mokėjimo puslapį, ir jis grįžta į jūsų svetainę po mokėjimo.
Kaip tai veikia
- Jūsų serveris sukuria užsakymą iškviesdamas POST /v1/orders/.
- API grąžina URL, nukreipiantį į mokėjimo puslapį.
- Nukreipiate klientą į mokėjimo puslapį.
- Klientas atlieka mokėjimą Cost+ mokėjimo puslapyje.
- Klientas nukreipiamas atgal į jūsų
return_url(arbafailure_urlnepavykusių mokėjimų atveju). - Cost+ siunčia webhook pranešimą į jūsų
webhook_urlsu užsakymo būsena.
Mokėjimo puslapis yra visiškai PCI DSS atitinkantis. Jums niekada nereikia tvarkyti neapdorotų kortelių numerių ar jautrių mokėjimo duomenų savo serveriuose.
Užsakymo kūrimas
Yra du būdai naudoti HPP:
1 būdas: Rodyti visus mokėjimo būdus (paprasčiausias)
Sukurkite užsakymą nenurodydami transactions. Atsakyme pateikiamas order_url — klientas nukreipiamas ten ir mato visus jūsų paskyrai įjungtus mokėjimo būdus:
{
"currency": "EUR",
"amount": 1295,
"merchant_order_id": "my-order-id-1",
"description": "My amazing order",
"return_url": "https://www.example.com",
"webhook_url": "https://www.example.com/webhook"
}{
"id": "43114fde-da30-4115-8004-b7f808f9b25c",
"status": "new",
"currency": "EUR",
"amount": 1295,
"order_url": "https://pay.costplus.online/43114fde.../select-payment-method/",
"return_url": "https://www.example.com",
"webhook_url": "https://www.example.com/webhook"
}Nukreipkite klientą į order_url. Mokėjimo puslapyje rodomi visi įjungti mokėjimo būdai.
2 būdas: Iš anksto parinkti mokėjimo būdus
Sukurkite užsakymą su transactions masyvu, kad valdytumėte, kokie mokėjimo būdai rodomi ir kokia tvarka. Kiekviena operacija apima payment_method, o atsakyme grąžinamas payment_url operacijos objekte:
{
"currency": "EUR",
"amount": 1295,
"merchant_order_id": "my-order-id-1",
"description": "My amazing order",
"return_url": "https://www.example.com",
"webhook_url": "https://www.example.com/webhook",
"transactions": [
{ "payment_method": "credit-card" }
]
}{
"id": "4851e31c-4137-4e91-95ef-1df945ee76a2",
"status": "new",
"currency": "EUR",
"amount": 1295,
"transactions": [
{
"id": "d291f03f-a406-428a-967a-4895a46e03fd",
"payment_method": "credit-card",
"status": "new",
"payment_url": "https://pay.costplus.online/4851e31c.../credit-card/d291f03f.../"
}
]
}Nukreipkite klientą į payment_url iš operacijos.
Jei pateiksite tik vieną įrašą transactions masyve, klientas bus nukreiptas tiesiai į tą mokėjimo būdą be pasirinkimo ekrano. flags masyve bus "is-test", kai naudojamas testavimo API raktas.
Užklausos laukai
| Laukas | Privalomas | Aprašymas |
|---|---|---|
currency | Taip | ISO 4217 valiutos kodas (pvz., EUR, GBP, SEK) |
amount | Taip | Suma centais. Pavyzdžiui, 12,95 EUR nurodoma kaip 1295 |
merchant_order_id | Ne | Jūsų nuosavasis užsakymo nuorodos ID |
return_url | Ne | URL, į kurį nukreipti klientą po mokėjimo (numatytasis visoms būsenoms) |
failure_url | Ne | URL, į kurį nukreipti klientą esant cancelled, expired arba error būsenai (žr. Grąžinimo URL žemiau) |
locale | Ne | Mokėjimo puslapio kalba. Palaikoma: en-GB, de-DE, nl-NL, nl-BE, fr-BE, sv-SE, no-NO, da-DK |
description | Ne | Užsakymo aprašymas, rodomas klientui |
payment_methods | Ne | Filter to a single payment method (e.g. ["credit-card"]). Omit to show all enabled methods. For multiple specific methods, use the transactions array instead |
webhook_url | Ne | URL būsenos pakeitimo pranešimams gauti |
expiration_period | Ne | ISO 8601 trukmė užsakymo galiojimui. Numatytoji yra PT30M (30 minučių) |
Laukas amount visada nurodomas mažiausiu valiutos vienetu (centais). Pateikus 1295 reiškia 12,95 nurodyta valiuta. Pateikus 1295.00 arba 12.95 bus klaida arba neteisinga suma.
Keli mokėjimo būdai
Norėdami pasiūlyti kelis konkrečius mokėjimo būdus, pridėkite kelis įrašus į transactions masyvą. Tvarka mokėjimo puslapyje atitinka masyvo tvarką:
"transactions": [
{ "payment_method": "credit-card" },
{ "payment_method": "apple-pay" }
]The payment_methods field on orders accepts at most one value. To offer multiple specific methods, always use the transactions array. If you need a reusable link with multiple payment methods, consider Payment Links instead, which support a true payment_methods array.
Grąžinimo URL
Po mokėjimo klientas nukreipiamas pagal užsakymo būseną ir nurodytus URL:
-
Kai nustatyti ir
return_url, irfailure_url:cancelled,expiredarbaerror→ klientas nukreipiamas įfailure_url- Visos kitos būsenos → klientas nukreipiamas į
return_url
-
Kai nustatytas tik
return_url:- Visos būsenos → klientas nukreipiamas į
return_url
- Visos būsenos → klientas nukreipiamas į
Naudokite failure_url, kad rodytumėte pakartojimo arba palaikymo puslapį nepavykusiems mokėjimams, o return_url rodytų užsakymo patvirtinimą. Jei reikia tik vienos paskirties vietos, pakanka return_url.
Atšaukimo mygtuko elgesys
Mokėjimo puslapyje yra atšaukimo mygtukas. Kai klientas jį paspaudžia, jis nukreipiamas į failure_url (jei pateikta) arba return_url. Užsakymo būsena pasikeis į cancelled. Visada patikrinkite užsakymo būseną per API arba webhooks, o ne pasitikėkite vien peradresavimu.
Susiję galiniai taškai
- Sukurti užsakymą — sukurti mokėjimo užsakymą ir gauti
payment_url - Gauti užsakymą — patikrinti užsakymo būseną po mokėjimo