Příjem plateb pomocí PayPal tlačítka

Platebn proces Cel platebn proces se d rozložit na nsledujc kroky: klient klikne na vygenerovan platebn tlačtko zobraz se okno, ve kterm provede klient hradu paypal platbu zpracuje a v přpadě spěchu vytvoř webhook Platc klient může zaplatit buď přmo z PayPal čtu nebo z libovoln kreditn karty. Za provedenou transakci si PayPal ponech provizi. Finančn prostředky na PayPal čtu můžete průběžně použvat k platbm nebo si je lze nechat vyplcet automaticky na učet. Implementačn workflow Z pohledu implementace je potřeba vložit někam JavaScript s platebnm tlačtkem a připravit si API endpoint, kter bude přijmat webhooky z PayPalu. K tomu všemu je nutn založit si čel na PayPal a v něm aplikaci. 1. Založen čtu Založit čet na PayPal a registrovat se do PayPal Developer (dle PPD) lze zdarma. J mm čet u PayPal od nepaměti, takže nevm do detailu co vše se mus aktulně zadvat, ale předpokldm, že kromě e-mailu jen vybran osobn daje. PayPal Developer by se měl zpřstupnit automaticky k danmu čtu. 2. Vytvořen aplikace Dle je potřeba vytvořit v PayPal Developer novou aplikaci (REST API app). Ihned po zadn nzvu se aplikace vytvoř a obsahuje credentials. Pro naše čely budeme zatm potřebovat jen veřejn Client ID. Pro danou aplikaci lze nastavit i omezen oprvněn. Později se na strnku aplikace ještě vrtme přidat webhook. Doporučuji si tuto strnku dt do zložek. 3. Platebn tlačtko Teď už nm nebrn vložit na msto platby platebn tlačtko. Je to jen kus JS kdu, kter nastavuje vzhled tlačtka a cenu. JS kd vypad nsledovně: <div id="paypal-button-container"></div> <script src="https://www.paypal.com/sdk/js?client-id=XXXXX&currency=CZK" data-sdk-integration-source="button-factory"></script> <script> function initPayPalButton() { paypal.Buttons({ style: { shape: rect, color: blue, layout: vertical, label: paypal, }, createOrder: function(data, actions) { return actions.order.create({ purchase_units: [ {"description":"Nzev produktu", "custom_id":"id_pro_parovani", "amount":{"currency_code":"CZK","value":999}}] }); }, onApprove: function(data, actions) { return actions.order.capture().then(function(orderData) { actions.redirect(/platba-provedena); }); }, onError: function(err) { console.log(err); } }).render(#paypal-button-container); } initPayPalButton(); </script> Domnvm se, že pro implementaci může bt užitečn tato čst dokumentace, kde jsou uvedeny parametry skriptu. Důležit je nicmně jen nastavit měnu a prvě zde použt Client ID aplikace vytvořen v předchozm kroku. Po spěšn hradě se provede redirect na uvedenou strnku. Udlost actions.order.create obsahuje pole zakoupench položek. Kompletn podoba objektu je popsna v tto čsti dokumentace (request body schema u udlosti Create order). 4. Přprava API pro přjem webhooků Teď už mohou uživatel klikat na tlačtko a platit. Ještě se potřebujeme o platbě dozvědět. Proto je potřeba vytvořit si někde na webu HTTP endpoint, kter bude přijmat notifikace z PayPalu. Nejjednodušš řešen je použt službu Make. V rmci n pak vytvořit nov scnř a jako inicializačn krok si vybrat modul PayPal a udlost Nov notifikace. Vhodou Make je, že nemuste nic programovat a vše si lze naklikat v UI. Vypad to zhruba takto: Make m tisce integrac, takže s notifikac lze dle pracovat dle libosti. Jin zcela tradičn řešen je naprogramovat si API endpoint ručně. Je ale nutn znt JSON strukturu, kterou PayPal posl. Vše je sepsan naštěst v dokumentaci včetně ukzkovho payloadu. Když to ořežu na nejdůležitějš fragmenty, vypad to přibližně takto: { "id": "WH-XXXXXXXXXXXX-XXXXXXXXXXXXXXX", "create_time": "2023-08-31T12:00:45.614Z", "resource_type": "checkout-order", "event_type": "CHECKOUT.ORDER.APPROVED", "resource": { "purchase_units": [{ "reference_id": "default", "amount": { "currency_code": "CZK", "value": "390.00" }, "payee": { "email_address": "[email protected]" }, "payments": { "captures": [{ "id": "XXXXXXXXXXXX", "status": "COMPLETED", "amount": { "currency_code": "CZK", "value": "390.00" } }] } }], "id": "XXXXXXXXXXX", "payment_source": { "paypal": { "email_address": "[email protected]", "name": { "given_name": "Jmeno", "surname": "Kupujiciho" }, "address": { "country_code": "CZ" } } } } } Tak či onak je potřeba mt nakonec URL, kter je schopn skrze metodu POST přijmat prvě podobn kus JSON struktury. 5. Nastaven Webhooku Teď už stač přejt zpět do detailu aplikace na PayPalu a scrollovat plně dolu. Zde je možn vytvořit nov webhook přes tlačtko Add Webhook. Hned prvn polčko je URL, na kterou bude PayPal poslat notifikace. Měla by to bt URL z předchozho kroku. U webhooku si lze tak vybrat udlosti, kter bude obsluhovat. Zsadn je sekce Checkout, kde se nachz mj. i ideln stav Checkout order approved / completed. V přchozm JSONu je vlastnost event_type, kde je uveden nzev udlosti. Při přjmu webhooku už si stač sprovat uživatele dle e-mailu a čstky. V dokumentaci jsem viděl i možnost přidat item_id, ale už to nedokžu zpětně dohledat. Zvěr, zkušenosti a doporučen Vše popsan řešen už použvm na webu restapi.cz, miroslavholec.cz a textomet.cz. Vždy mi vše fungovalo spolehlivě. Notifikace z PayPalu se občas trochu zpozd, ale nakonec doraz. Pro čely laděn je možn si čet z Live přepnout do Sandboxu (ale je nutn změnit i URL skriptů). Zvěrem bych ještě upozornil, že Make neum u přchozho JSON parsovat všechny vlastnosti. Je ale možn msto PayPal/Nov notifikace použit jednoduše tradičn Webhook a nechat si cel JSON zparsovat.

projít na článek

Změna plateb zdravotního pojištění od 01.01.2016

Od 1. ledna 2016 se opět mění výše plateb zdravotního pojištění.

projít na článek

Satelitní komplet pro příjem českých programů

Využijte nabídky SAT kompletu Homekast 3000 pro příjem českých programů s kartou pro neomezený příjem CZ kanálů. Cena za komplet včetně karty Gital je 4320,- Kč.

projít na článek

Společné televizní antény (STA)

Společná televizní anténa usnadní příjem v bytových domech, kde není výhled směrem k pozemnímu vysílači či na oběžnou dráhu pro satelitní příjem. Upravíme anténní systém pro příjem co nejvíce televizních stanic v daném místě. Zesílíme signál, aby všichni

projít na článek

Jak získat pasivní příjem

Rozdíl mezi aktivním a pasivním příjmem je ten, že pro aktivní příjem je třeba vynakládat pravidelnou činnost, jako je práce či služba. Pasivním příjmem se rozumí pravidelný přísun finančních prostředků, pro který není potřeba z naší strany vynakládat vel

projít na článek

Úpravy STA - společných televizních antén - pro příjem všech dostupných kanálů v Praze

V poslední době se v Praze množí požadavky diváků, že nemohou naladit některý z nových programů na své televizi. V této souvislosti proto upozorňujeme, že je většinou nutno nastavit zařízení STA na tyto multiplexy.U rozvodů STA platí, že by se do nich mě

projít na článek