Fizetési mód
API végpont: /plugin/payment
Létrehozhat egyéni fizetési módot az áruházban. A megrendelés befejezése után lehetőség van egyéni html kód írására (például átirányítás a fizetési átjáróra).
Új fizetési mód létrehozása
POST /plugin/payment
{
"name": "My Payment Method",
"description": "Optional Description",
"image": "https://plugin.tld/images/icon.png",
"action": "https://plugin.tld/test-payment",
"errorMessage": "Platbu se nepodařilo zaevidovat.",
"successMessage": "Platba byla úspěšná.",
"states": [
{
"description": "Paid",
"image": "https://plugin.tld/images/icon.png"
},
{
"description": "Unpaid",
"image": "https://plugin.tld/images/icon.png"
},
{
"description": "Unknown",
"image": "https://plugin.tld/images/icon.png"
}
]
}
A fenti kérés létrehoz egy egyéni fizetési módot a webáruházban, beleértve annak lehetséges állapotait is. A fizetési mód létrehozása után az eshop tulajdonosának a fizetési módot a kívánt szállítási módokhoz kell kapcsolnia. Ugyanitt egyéni árat is beállíthat a fizetési módhoz, vagy megváltoztathatja annak nevét.
Példa:
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.webareal.cz/plugin/payment',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => json_encode([
"name" => "My Payment Method",
"description" => "Optional Description",
"image" => "https://plugin.tld/images/icon.png",
"action" => "https://plugin.tld/test-payment",
"errorMessage" => "Platbu se nepodařilo zaevidovat.",
"successMessage" => "Platba byla úspěšná.",
"states" => [
[
"description" => "Paid",
"image" => "https://plugin.tld/images/icon.png"
],
[
"description" => "Unpaid",
"image" => "https://plugin.tld/images/icon.png"
],
[
"description" => "Unknown",
"image" => "https://plugin.tld/images/icon.png"
]
]
])
CURLOPT_HTTPHEADER => array(
'X-Wa-api-token: ' . $api_token, // apiToken získáte při instalaci doplňku, viz. nápověda
'Authorization: Bearer ' . $bearer, // access token získáte zde, údaje zde (záložka API přístup)
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Megrendelés létrehozása
A megrendelés létrehozása után egy kérést küldünk a action URL-címre.
POST
{
"id": 1, //ID objednávky
"orderNumber": "100001" //číslo objednávky,
"price": 121.00,
"currency": "CZK",
"customer": "email@email.com",
"returnUrl": "https://eshop/plugin_payment_after", //URL pro návrat
"items": [
{
"code": "product_1" //kód zboží,
"name": "Product 1"
"quantity": 1,
"unit": "ks",
"price": 100.00, //za jednotku
"priceVat": 121.00,
"vat": 21
}
]
}
Válaszként HTML-kódot várunk (üzenetet a megrendelés sikeres befejezéséről, a fizetési átjáró widget megnyitásáról vagy az átirányításról).
Visszatérés a fizetési átjáróból a webáruházba
A fizetési átjáróból (vagy a fizetés állapotát feldolgozó bővítményből) való visszatéréskor átirányíthat a https://domena-eshopu.tld/plugin_payment_after címre. Ennek a címnek át kell adni a GET paramétert payment, aminek tartalmaznia kell a fizetési mód azonosítóját és a success státuszt, ami 1 (igaz) vagy 0 (hamis). Ennek megfelelően a vásárló vagy azt fogja látni, hogy successMessage vagy azt, hogy errorMessage.
Fizetési egyenleg
A megrendelés létrehozása és a fizetés után lehetőség van a fizetési státusz (kifizetett, kifizetetlen stb.) hozzáadására a megrendeléshez. A rendelkezésre álló fizetési státuszok listája a következő címen hívható le GET /plugin/states
Fizetési státusz hozzáadása egy megrendeléshez
POST /plugin/state/payment
{
"idOrder": 12345,
"idState": 21
}
A kérés beilleszt a megrendeléshez egy fizetési státusz azonosítót, ami a korábban beillesztett ikonnal jelenik meg a megrendelés mellett (a kép maximális mérete 30x30 px).
Példa:
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.webareal.cz/plugin/state/payment',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => json_encode([
"idOrder" => "12345",
"idState" => "21",
])
CURLOPT_HTTPHEADER => array(
'X-Wa-api-token: ' . $api_token, // apiToken získáte při instalaci doplňku, viz. nápověda
'Authorization: Bearer ' . $bearer, // access token získáte zde, údaje zde (záložka API přístup)
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
Egyéb kérések listája
POST /plugin/payment - új fizetési mód létrehozása
PUT /plugin/payment/{id} - fizetési mód frissítése
DELETE /plugin/payment/{id} - fizetési mód törlése
POST /plugin/state/payment - új fizetési státusz adás a megrendeléshez
PUT /plugin/state/payment - megrendelés fizetési státuszának módosítása
DELETE /plugin/state/payment/{idOrder} - megrendelés fizetési státuszának törlése
GET /plugin/state/payment/{idOrder} - visszaadja a megrendelés fizetési státuszát/p>
GET /plugin/states - visszaadja az elérhető státuszokat