Cost+Docs

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

  1. Jūsų serveris sukuria užsakymą iškviesdamas POST /v1/orders/.
  2. API grąžina URL, nukreipiantį į mokėjimo puslapį.
  3. Nukreipiate klientą į mokėjimo puslapį.
  4. Klientas atlieka mokėjimą Cost+ mokėjimo puslapyje.
  5. Klientas nukreipiamas atgal į jūsų return_url (arba failure_url nepavykusių mokėjimų atveju).
  6. Cost+ siunčia webhook pranešimą į jūsų webhook_url su 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:

Request
{
  "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"
}
Response
{
  "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:

Request
{
  "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" }
  ]
}
Response
{
  "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

LaukasPrivalomasAprašymas
currencyTaipISO 4217 valiutos kodas (pvz., EUR, GBP, SEK)
amountTaipSuma centais. Pavyzdžiui, 12,95 EUR nurodoma kaip 1295
merchant_order_idNeJūsų nuosavasis užsakymo nuorodos ID
return_urlNeURL, į kurį nukreipti klientą po mokėjimo (numatytasis visoms būsenoms)
failure_urlNeURL, į kurį nukreipti klientą esant cancelled, expired arba error būsenai (žr. Grąžinimo URL žemiau)
localeNeMokėjimo puslapio kalba. Palaikoma: en-GB, de-DE, nl-NL, nl-BE, fr-BE, sv-SE, no-NO, da-DK
descriptionNeUžsakymo aprašymas, rodomas klientui
payment_methodsNeFilter 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_urlNeURL būsenos pakeitimo pranešimams gauti
expiration_periodNeISO 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, ir failure_url:

    • cancelled, expired arba error → klientas nukreipiamas į failure_url
    • Visos kitos būsenos → klientas nukreipiamas į return_url
  • Kai nustatytas tik return_url:

    • Visos būsenos → klientas nukreipiamas į return_url

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

On this page