{"id":26386,"date":"2021-06-21T16:19:00","date_gmt":"2021-06-21T13:19:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=26386"},"modified":"2021-10-18T02:58:50","modified_gmt":"2021-10-17T23:58:50","slug":"accetta-pagamenti-con-carta-di-credito-utilizzando-paypal-payments-pro-in-php","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/it\/accetta-pagamenti-con-carta-di-credito-utilizzando-paypal-payments-pro-in-php\/","title":{"rendered":"Accetta pagamenti con carta di credito utilizzando PayPal Payments Pro in PHP"},"content":{"rendered":"<p>Stai cercando di integrare un gateway di pagamento che accetti pagamenti con carta di credito? Il pagamento con carta di credito \u00e8 una delle migliori opzioni per accettare pagamenti online. I clienti preferiscono pagare online tramite le proprie carte di credito. Pu\u00f2 succedere che tu stia perdendo clienti solo perch\u00e9 il tuo sito web non accetta pagamenti con carta di credito. In qualit\u00e0 di proprietario del negozio online, dovresti aggiungere un&#8217;opzione per la carta di credito per accettare il pagamento sul tuo sito web.<\/p>\n<p>Sono disponibili molti gateway di pagamento che supportano una carta di credito. Ad esempio, Authorize.Net e Stripe consentono di accettare pagamenti con carta online.<\/p>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/it\/accetta-pagamenti-con-carta-di-credito-utilizzando-il-gateway-di-pagamento-authorize-net-in-php\/\" title=\"Accetta pagamenti con carta di credito utilizzando il gateway di pagamento Authorize.Net in PHP\" >Accetta pagamenti con carta di credito utilizzando il gateway di pagamento Authorize.Net in PHP<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/it\/una-guida-per-l-integrazione-di-stripe-nel-sito-web-con-php\/\" title=\"Una guida per l'integrazione di Stripe nel sito Web con PHP\" >Una guida per l&#8217;integrazione di Stripe nel sito Web con PHP<\/a><\/li>\n<\/ul>\n<p>I lettori scelgono una delle opzioni di cui sopra, ma se vogliono optare per PayPal, continua a leggere. In questo articolo, ti mostro come accettare pagamenti con carta di credito utilizzando PayPal Payments Pro.<\/p>\n<p>PayPal Payments Pro accetta pagamenti con una soluzione completamente personalizzabile. Significa che puoi creare il tuo modulo di pagamento e addebitare il tuo cliente. Non ti reindirizza al sito web di PayPal per completare la transazione.<\/p>\n<p>Creeremo anche il nostro modulo in cui un cliente inserisce i dettagli della sua carta e pu\u00f2 pagare senza uscire dal sito web. L&#8217;utente pu\u00f2 progettare la propria pagina di pagamento e consente all&#8217;utente di inserire i dettagli della carta. Quindi, senza ulteriori indugi, tuffiamoci.<\/p>\n<h3>Iniziare<\/h3>\n<p>Prima di accettare pagamenti in tempo reale \u00e8 sempre consigliabile testarlo prima in modalit\u00e0 sandbox. Se tutto funziona come previsto sulla sandbox, dovremmo renderlo attivo per evitare problemi con i pagamenti dei clienti. Per testare i pagamenti, devi disporre di un account sandbox PayPal. Crea il tuo account su <a href=\"https:\/\/developer.paypal.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">PayPal Developer<\/a>. Dopo aver creato un account, vai su <strong>SANDBOX-&gt;Account<\/strong> dal menu a sinistra e crea un account aziendale.<\/p>\n<p>Al momento della stesura di questo articolo, PayPal Payments Pro \u00e8 disponibile negli Stati Uniti, nel Regno Unito e in Canada. Significa che durante la creazione di un account devi selezionare uno di questi paesi.<\/p>\n<p>Una volta che hai un account aziendale, devi aggiornare il tuo tipo di account a &quot;Business-Pro&quot;. Devi avere il tipo di account &quot;Business-Pro&quot; per accettare pagamenti con carta di credito. Per aggiornarlo, fai clic sul link &quot;Aggiorna a Pro&quot; e PayPal convertir\u00e0 il tuo tipo di conto in &quot;Business-Pro&quot;.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20129-6081c034cf341.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20129-6081c034cf341.png\" alt=\"Accetta pagamenti con carta di credito utilizzando PayPal Payments Pro in PHP\" ><\/a><\/p>\n<p>Quindi, fai clic sulla scheda &quot;Credenziali API&quot; e prendi le tue credenziali. Avremo bisogno di queste credenziali nella parte successiva di questo tutorial.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20129-6081c0355f78e.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20129-6081c0355f78e.png\" alt=\"Accetta pagamenti con carta di credito utilizzando PayPal Payments Pro in PHP\" ><\/a><\/p>\n<h3>Modulo di pagamento personalizzabile<\/h3>\n<p>Come ho detto, utilizzando PayPal Payments Pro puoi progettare il tuo modulo di pagamento. Creiamo un bel modulo di pagamento in cui il cliente inserisce i dettagli del pagamento. <a href=\"https:\/\/codepen.io\/hswd\/pen\/JYvgBW\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">User\u00f2<\/a> un modulo ben progettato su <a href=\"https:\/\/codepen.io\/hswd\/pen\/JYvgBW\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">codepen<\/a> per questo tutorial.<\/p>\n<p>La struttura della cartella finale dovrebbe essere la seguente:<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20129-6081c0355f78e.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20129-6081c0355f78e.png\" alt=\"Accetta pagamenti con carta di credito utilizzando PayPal Payments Pro in PHP\" ><\/a><\/p>\n<p>Non pensare a <code>vendor<\/code>, <code>charge.php<\/code>, <code>composer.json<\/code>, <code>composer.lock<\/code>per ora. Lo creeremo nella parte successiva.<\/p>\n<p>Crea un <code>css\/card.css<\/code>file e aggiungi il codice sottostante come fornito su <a href=\"https:\/\/codepen.io\/hswd\/pen\/JYvgBW\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">codepen<\/a>.<\/p>\n<pre><code>@import url(https:\/\/fonts.googleapis.com\/css?family=Roboto:400,900,700,500);\n\u00a0\nbody {\n\u00a0\u00a0padding: 60px 0;\n\u00a0\u00a0background-color: rgba(178,209,229,0.7);\n\u00a0\u00a0margin: 0 auto;\n\u00a0\u00a0width: 600px;\n}\n.body-text {\n\u00a0\u00a0padding: 0 20px 30px 20px;\n\u00a0\u00a0font-family: \"Roboto\";\n\u00a0\u00a0font-size: 1em;\n\u00a0\u00a0color: #333;\n\u00a0\u00a0text-align: center;\n\u00a0\u00a0line-height: 1.2em;\n}\n.form-container {\n\u00a0\u00a0flex-direction: column;\n\u00a0\u00a0justify-content: center;\n\u00a0\u00a0align-items: center;\n}\n.card-wrapper {\n\u00a0\u00a0background-color: #6FB7E9;\n\u00a0\u00a0width: 100%;\n\u00a0\u00a0display: flex;\n\u00a0\n}\n.personal-information {\n\u00a0\u00a0background-color: #3C8DC5;\n\u00a0\u00a0color: #fff;\n\u00a0\u00a0padding: 1px 0;\n\u00a0\u00a0text-align: center;\n}\nh1 {\n\u00a0\u00a0font-size: 1.3em;\n\u00a0\u00a0font-family: \"Roboto\"\n}\ninput {\n\u00a0\u00a0margin: 1px 0;\n\u00a0\u00a0padding-left: 3%;\n\u00a0\u00a0font-size: 14px;\n}\ninput[type=\"text\"]{\n\u00a0\u00a0display: block;\n\u00a0\u00a0height: 50px;\n\u00a0\u00a0width: 97%;\n\u00a0\u00a0border: none;\n}\ninput[type=\"email\"]{\n\u00a0\u00a0display: block;\n\u00a0\u00a0height: 50px;\n\u00a0\u00a0width: 97%;\n\u00a0\u00a0border: none;\n}\ninput[type=\"submit\"]{\n\u00a0\u00a0display: block;\n\u00a0\u00a0height: 60px;\n\u00a0\u00a0width: 100%;\n\u00a0\u00a0border: none;\n\u00a0\u00a0background-color: #3C8DC5;\n\u00a0\u00a0color: #fff;\n\u00a0\u00a0margin-top: 2px;\n\u00a0\u00a0curson: pointer;\n\u00a0\u00a0font-size: 0.9em;\n\u00a0\u00a0text-transform: uppercase;\n\u00a0\u00a0font-weight: bold;\n\u00a0\u00a0cursor: pointer;\n}\ninput[type=\"submit\"]:hover{\n\u00a0\u00a0background-color: #6FB7E9;\n\u00a0\u00a0transition: 0.3s ease;\n}\n#column-left {\n\u00a0\u00a0width: 46.5%;\n\u00a0\u00a0float: left;\n\u00a0\u00a0margin-bottom: 2px;\n}\n#column-right {\n\u00a0\u00a0width: 46.5%;\n\u00a0\u00a0float: right;\n}\n\u00a0\n@media only screen and (max-width: 480px){\n\u00a0\u00a0body {\n\u00a0\u00a0\u00a0\u00a0width: 100%;\n\u00a0\u00a0\u00a0\u00a0margin: 0 auto;\n\u00a0\u00a0}\n\u00a0\u00a0.form-container {\n\u00a0\u00a0\u00a0\u00a0margin: 0 2%;\n\u00a0\u00a0}\n\u00a0\u00a0input {\n\u00a0\u00a0\u00a0\u00a0font-size: 1em;\n\u00a0\u00a0}\n\u00a0\u00a0#input-button {\n\u00a0\u00a0\u00a0\u00a0width: 100%;\n\u00a0\u00a0}\n\u00a0\u00a0#input-field {\n\u00a0\u00a0\u00a0\u00a0width: 96.5%;\n\u00a0\u00a0}\n\u00a0\u00a0h1 {\n\u00a0\u00a0\u00a0\u00a0font-size: 1.2em;\n\u00a0\u00a0}\n\u00a0\u00a0input {\n\u00a0\u00a0\u00a0\u00a0margin: 2px 0;\n\u00a0\u00a0}\n\u00a0\u00a0input[type=\"submit\"]{\n\u00a0\u00a0\u00a0\u00a0height: 50px;\n\u00a0\u00a0}\n\u00a0\u00a0#column-left {\n\u00a0\u00a0\u00a0\u00a0width: 96.5%;\n\u00a0\u00a0\u00a0\u00a0display: block;\n\u00a0\u00a0\u00a0\u00a0float: none;\n\u00a0\u00a0}\n\u00a0\u00a0#column-right {\n\u00a0\u00a0\u00a0\u00a0width: 96.5%;\n\u00a0\u00a0\u00a0\u00a0display: block;\n\u00a0\u00a0\u00a0\u00a0float: none;\n\u00a0\u00a0}\n}<\/code><\/pre>\n<p>Allo stesso modo, il nostro <code>js\/card.js<\/code>file avr\u00e0 il seguente codice.<\/p>\n<pre><code>\/* Card.js plugin by Jesse Pollak. https:\/\/github.com\/jessepollak\/card *\/\n\u00a0\n$('form').card({\n\u00a0\u00a0\u00a0\u00a0container: '.card-wrapper',\n\u00a0\u00a0\u00a0\u00a0width: 280,\n\u00a0\n\u00a0\u00a0\u00a0\u00a0formSelectors: {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0nameInput: 'input[name=\"first-name\"], input[name=\"last-name\"]'\n\u00a0\u00a0\u00a0\u00a0}\n});<\/code><\/pre>\n<p>Ottieni una copia di <code>jquery.card.js<\/code>da questo <a href=\"https:\/\/github.com\/jessepollak\/card\/blob\/master\/dist\/jquery.card.js\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">repository GitHub<\/a>. Memorizza questo file nella directory &#8216;js&#8217;.<\/p>\n<p>Ora, crea un <code>index.html<\/code>file. In questo file aggiungeremo il markup HTML che mostra il nostro modulo di checkout.<\/p>\n<pre><code>&lt;!DOCTYPE html&gt;\n&lt;html lang=\"en\"&gt;\n&lt;head&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;meta charset=\"UTF-8\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;meta http-equiv=\"X-UA-Compatible\" content=\"ie=edge\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;title&gt;Online Payments&lt;\/title&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;link rel=\"stylesheet\" href=\"css\/card.css\"&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;form method=\"POST\" action=\"charge.php\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"form-container\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"personal-information\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;h1&gt;Payment Information&lt;\/h1&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt; &lt;!-- end of personal-information --&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input id=\"column-left\" type=\"text\" name=\"first-name\" placeholder=\"First Name\" required=\"required\" \/&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input id=\"column-right\" type=\"text\" name=\"last-name\" placeholder=\"Surname\" required=\"required\" \/&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input id=\"input-field\" type=\"text\" name=\"number\" placeholder=\"Card Number\" required=\"required\" \/&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input id=\"column-left\" type=\"text\" name=\"expiry\" placeholder=\"MM \/ YY\" required=\"required\" \/&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input id=\"column-right\" type=\"text\" name=\"cvc\" placeholder=\"CCV\" required=\"required\" \/&gt;\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"card-wrapper\"&gt;&lt;\/div&gt;\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input id=\"input-field\" type=\"text\" name=\"streetaddress\" required=\"required\" autocomplete=\"on\" maxlength=\"45\" placeholder=\"Streed Address\"\/&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input id=\"column-left\" type=\"text\" name=\"city\" required=\"required\" autocomplete=\"on\" maxlength=\"20\" placeholder=\"City\"\/&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input id=\"column-right\" type=\"text\" name=\"zipcode\" required=\"required\" autocomplete=\"on\" pattern=\"[0-9]*\" maxlength=\"5\" placeholder=\"ZIP code\"\/&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input id=\"input-field\" type=\"email\" name=\"email\" required=\"required\" autocomplete=\"on\" maxlength=\"40\" placeholder=\"Email\"\/&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input id=\"input-field\" type=\"text\" name=\"amount\" required=\"required\" autocomplete=\"on\" maxlength=\"40\" placeholder=\"Amount\"\/&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input id=\"input-button\" name=\"submit\" type=\"submit\" value=\"Submit\"\/&gt;\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;\/form&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/jquery\/3.6.0\/jquery.min.js\"&gt;&lt;\/script&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;script src=\"js\/jquery.card.js\"&gt;&lt;\/script&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;script src=\"js\/card.js\"&gt;&lt;\/script&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;<\/code><\/pre>\n<p>Vai al browser ed esegui il <code>index.html<\/code>file. Ora dovresti vedere un modulo di pagamento dall&#8217;aspetto gradevole.<\/p>\n<h3>Accetta pagamenti con carta di credito utilizzando PayPal Payments Pro<\/h3>\n<p>Ora sei pronto con le tue credenziali API PayPal e il modulo HTML. \u00c8 tempo di rendere le cose dinamiche. L&#8217;integrazione di un gateway di pagamento non \u00e8 un compito facile. \u00c8 necessario ricercarlo e leggere l&#8217;intera documentazione fornita dal venditore. A volte diventa cos\u00ec confuso e nonostante le lunghe ore, non sei riuscito a raggiungere il tuo obiettivo. L&#8217;avevo affrontato molte volte. E quando si tratta di PayPal, la situazione diventa pi\u00f9 complessa a causa della vasta documentazione di PayPal.<\/p>\n<p>Questo non \u00e8 pi\u00f9 il caso. <a href=\"https:\/\/omnipay.thephpleague.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Omnipay semplifica<\/a> la vita dei nostri sviluppatori in termini di integrazione del gateway di pagamento. Utilizzando questa libreria, non \u00e8 necessario leggere la documentazione del gateway di pagamento. Ottieni le tue credenziali API, segui le istruzioni Omnipay e il gioco \u00e8 fatto. Dai un&#8217;occhiata alla loro <a href=\"https:\/\/github.com\/thephpleague\/omnipay\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">pagina GitHub<\/a> per maggiori dettagli.<\/p>\n<p>Esegui il comando seguente per installare Omnipay e la libreria PayPal supportata.<\/p>\n<pre><code>composer require league\/omnipay:^3 omnipay\/paypal<\/code><\/pre>\n<p>Dopo aver installato le librerie sopra, il codice sottostante andr\u00e0 all&#8217;interno del tuo <code>charge.php<\/code>file.<\/p>\n<pre><code>&lt;?php\nrequire_once \"vendor\/autoload.php\";\n\u00a0\u00a0\nuse OmnipayOmnipay;\n\u00a0\u00a0\n$gateway = Omnipay::create('PayPal_Pro');\n$gateway-&gt;setUsername(PAYPAL_API_USERNAME);\n$gateway-&gt;setPassword(PAYPAL_API_PASSWORD);\n$gateway-&gt;setSignature(PAYPAL_API_SIGNATURE);\n$gateway-&gt;setTestMode(true); \/\/ here 'true' is for sandbox. Pass 'false' when go live\n\u00a0\u00a0\nif (isset($_POST['submit'])) {\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0$arr_expiry = explode(\"\/\", $_POST['expiry']);\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0$formData = array(\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'firstName' =&gt; $_POST['first-name'],\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'lastName' =&gt; $_POST['last-name'],\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'number' =&gt; $_POST['number'],\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'expiryMonth' =&gt; trim($arr_expiry[0]),\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'expiryYear' =&gt; trim($arr_expiry[1]),\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'cvv' =&gt; $_POST['cvc']\n\u00a0\u00a0\u00a0\u00a0);\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0try {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/ Send purchase request\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$response = $gateway-&gt;purchase([\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'amount' =&gt; $_POST['amount'],\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'currency' =&gt; 'USD',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'card' =&gt; $formData\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0])-&gt;send();\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/ Process response\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0if ($response-&gt;isSuccessful()) {\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/ Payment was successful\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0echo \"Payment is successful. Your Transaction ID is: \". $response-&gt;getTransactionReference();\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0} else {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/ Payment failed\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0echo \"Payment failed. \". $response-&gt;getMessage();\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0} catch(Exception $e) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0echo $e-&gt;getMessage();\n\u00a0\u00a0\u00a0\u00a0}\n}<\/code><\/pre>\n<p>Assicurati di sostituire PAYPAL_API_USERNAME, PAYPAL_API_PASSWORD, PAYPAL_API_SIGNATURE del segnaposto con i valori effettivi. Ora vai sul tuo browser e prova a effettuare un pagamento con i dati fittizi della carta di credito. Dovresti ricevere un messaggio di successo insieme all&#8217;ID della transazione. L&#8217;utente pu\u00f2 ottenere <a href=\"https:\/\/developer.paypal.com\/docs\/payflow\/payflow-pro\/payflow-pro-testing\/#credit-card-numbers-for-testing\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">carte di credito di prova<\/a> fornite da PayPal.<\/p>\n<h3>Accetta pagamenti in tempo reale con PayPal Pro Payment Gateway<\/h3>\n<p>Una volta completato il test della sandbox, passa le credenziali live per i segnaposto utilizzati in un codice. Devi anche passare il valore &#8216;false&#8217; al <code>setTestMode()<\/code>metodo.<\/p>\n<p>Si tratta di accettare pagamenti con carta di credito utilizzando PayPal Payments Pro in PHP. Spero che ti aiuter\u00e0 a integrare una soluzione di pagamento per il tuo sito web. Prova questo tutorial e fammi sapere i tuoi pensieri e suggerimenti nella sezione commenti qui sotto.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte di registrazione:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In questo articolo, ti mostro come accettare pagamenti con carta di credito sul tuo sito web con PHP. User\u00f2 la libreria Omnipay e integrer\u00f2 Paypal<\/p>\n","protected":false},"author":1,"featured_media":21609,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[276],"tags":[846],"class_list":["post-26386","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-7","tag-affiai-it"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/posts\/26386","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/comments?post=26386"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/posts\/26386\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/media\/21609"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/media?parent=26386"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/categories?post=26386"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/tags?post=26386"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}