{"id":25951,"date":"2021-06-17T14:21:00","date_gmt":"2021-06-17T11:21:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=25951"},"modified":"2021-10-18T02:28:49","modified_gmt":"2021-10-17T23:28:49","slug":"eine-anleitung-fuer-die-stripe-integration-in-eine-website-mit-php","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/de\/eine-anleitung-fuer-die-stripe-integration-in-eine-website-mit-php\/","title":{"rendered":"Eine Anleitung f\u00fcr die Stripe-Integration in eine Website mit PHP"},"content":{"rendered":"<p>Wenn Sie eine Website betreiben und eine Online-Zahlung einziehen, dann haben Sie wahrscheinlich vom <strong>Stripe Payment Gateway geh\u00f6rt<\/strong>. Mit Stripe kann man die Zahlung mit einer Kredit- oder Debitkarte akzeptieren. Dies ist eine bequemere M\u00f6glichkeit, f\u00fcr Ihre Kunden online zu bezahlen. In diesem Artikel untersuchen wir die Stripe-Integration in die Website mit PHP.<\/p>\n<h3>Warum sollte Stripe Payment Gateway verwendet werden?<\/h3>\n<p><a href=\"https:\/\/stripe.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Stripe<\/a> ist eines der beliebtesten und sichersten Zahlungsgateways im Internet. Die Kartendaten des Benutzers sind bei Stripe-Zahlungen immer sicher. Tats\u00e4chlich stellen sie beim Stripe-Checkout generierte Elemente bereit, in die ein Benutzer Kartendetails eingeben muss. Die Elemente zur Eingabe der Kartendetails werden von Stripe zur Laufzeit generiert, was dieses Gateway sicherer macht.<\/p>\n<p>Nach Eingabe der Kartendaten generiert Stripe einen Token, mit dem die Kartenzahlung belastet wird. Dadurch m\u00fcssen keine Kartendaten gespeichert werden.<\/p>\n<p>Sehen wir uns die Stripe-Integration in eine Website mit PHP an.<\/p>\n<h3>Erhalten Sie API-Schl\u00fcssel f\u00fcr die Stripe-Integration<\/h3>\n<p>F\u00fcr den Einstieg sollten Sie ein <a href=\"https:\/\/dashboard.stripe.com\/login\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Stripe-Konto haben<\/a>. Um das Stripe-Gateway in Ihre Anwendung zu integrieren, ben\u00f6tigen Sie Ihren geheimen Stripe-Schl\u00fcssel und den ver\u00f6ffentlichbaren Schl\u00fcssel.<\/p>\n<p>Melden Sie sich bei Ihrem Stripe-Dashboard an. Sie erhalten diese Schl\u00fcssel von <strong>Developers-&gt;API Keys<\/strong>. Ich empfehle Ihnen, den Zahlungsverkehr zun\u00e4chst mit dem Testmodus zu testen. Wenn alles gut funktioniert, gehen Sie in den Live-Modus. Schnappen Sie sich also die API-Schl\u00fcssel f\u00fcr den Testmodus.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20173-6081c7d230f6d.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-20173-6081c7d230f6d.png\" alt=\"Eine Anleitung f\u00fcr die Stripe-Integration in eine Website mit PHP\" ><\/a><\/p>\n<h3>Stripe-Checkout-Formular<\/h3>\n<p>Immer wenn wir ein Zahlungsgateway auf der Website integrieren, m\u00fcssen wir die Transaktionsdetails in der Datenbank speichern. Erstellen wir also eine <code>payments<\/code>Tabelle mit der folgenden SQL-Abfrage.<\/p>\n<pre><code>CREATE TABLE `payments` (\u00a0`id` int(11) NOT NULL AUTO_INCREMENT,\n\u00a0`payment_id` varchar(255) NOT NULL,\n\u00a0`amount` float(10,2) NOT NULL,\n\u00a0`currency` varchar(255) NOT NULL,\n\u00a0`payment_status` varchar(255) NOT NULL,\n\u00a0`captured_at` datetime NOT NULL DEFAULT current_timestamp(),\n\u00a0PRIMARY KEY (`id`)) ENGINE=InnoDB DEFAULT CHARSET=latin1;<\/code><\/pre>\n<p>Erstellen Sie als N\u00e4chstes ein Checkout-Formular. Wie bereits erw\u00e4hnt, generiert Stripe Kartenelemente f\u00fcr Sie. Wir werden diese Elemente im Checkout-Formular generieren, indem wir der <a href=\"https:\/\/stripe.com\/docs\/payments\/cards\/collecting\/web\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Stripe-Dokumentation<\/a> folgen .<\/p>\n<p>Erstellen Sie eine <code>index.html<\/code>Datei und f\u00fcgen Sie den folgenden Code darin ein.<\/p>\n<pre><code>&lt;link rel=\"stylesheet\" href=\"style.css\" \/&gt;\n&lt;script src=\"https:\/\/js.stripe.com\/v3\/\"&gt;&lt;\/script&gt;\n&lt;form action=\"charge.php\" method=\"post\" id=\"payment-form\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;div class=\"form-row\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input type=\"text\" name=\"amount\" placeholder=\"Enter Amount\" \/&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;label for=\"card-element\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0Credit or debit card\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/label&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div id=\"card-element\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;!-- A Stripe Element will be inserted here. --&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;!-- Used to display form errors. --&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div id=\"card-errors\" role=\"alert\"&gt;&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;button&gt;Submit Payment&lt;\/button&gt;\n&lt;\/form&gt;\n&lt;script src=\"card.js\"&gt;&lt;\/script&gt;<\/code><\/pre>\n<p>F\u00fcgen Sie dem Formular mithilfe des folgenden Codes in der <code>style.css<\/code>Datei ein Styling hinzu .<\/p>\n<pre><code>.StripeElement {\n\u00a0\u00a0\u00a0\u00a0box-sizing: border-box;\n\u00a0\u00a0\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0height: 40px;\n\u00a0\u00a0\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0padding: 10px 12px;\n\u00a0\u00a0\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0border: 1px solid transparent;\n\u00a0\u00a0\u00a0\u00a0border-radius: 4px;\n\u00a0\u00a0\u00a0\u00a0background-color: white;\n\u00a0\u00a0\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0box-shadow: 0 1px 3px 0 #e6ebf1;\n\u00a0\u00a0\u00a0\u00a0-webkit-transition: box-shadow 150ms ease;\n\u00a0\u00a0\u00a0\u00a0transition: box-shadow 150ms ease;\n}\n\u00a0\u00a0\n.StripeElement--focus {\n\u00a0\u00a0\u00a0\u00a0box-shadow: 0 1px 3px 0 #cfd7df;\n}\n\u00a0\u00a0\n.StripeElement--invalid {\n\u00a0\u00a0\u00a0\u00a0border-color: #fa755a;\n}\n\u00a0\u00a0\n.StripeElement--webkit-autofill {\n\u00a0\u00a0\u00a0\u00a0background-color: #fefde5 !important;\n}<\/code><\/pre>\n<p>Danach m\u00fcssen Sie zum Generieren von Kartenelement und StripeToken den folgenden JavaScript-Code in die <code>card.js<\/code>Datei einf\u00fcgen. Dieser JavaScript-Code validiert auch die Kartendetails.<\/p>\n<pre><code>\/\/ Create a Stripe client.\nvar stripe = Stripe('PUBLISHABLE_KEY');\n\u00a0\u00a0\n\/\/ Create an instance of Elements.\nvar elements = stripe.elements();\n\u00a0\u00a0\n\/\/ Custom styling can be passed to options when creating an Element.\n\/\/ (Note that this demo uses a wider set of styles than the guide below.)\nvar style = {\n\u00a0\u00a0\u00a0\u00a0base: {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0color: '#32325d',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0fontFamily: '\"Helvetica Neue\", Helvetica, sans-serif',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0fontSmoothing: 'antialiased',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0fontSize: '16px',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'::placeholder': {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0color: '#aab7c4'\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0},\n\u00a0\u00a0\u00a0\u00a0invalid: {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0color: '#fa755a',\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0iconColor: '#fa755a'\n\u00a0\u00a0\u00a0\u00a0}\n};\n\u00a0\u00a0\n\/\/ Create an instance of the card Element.\nvar card = elements.create('card', {style: style});\n\u00a0\u00a0\n\/\/ Add an instance of the card Element into the `card-element` &lt;div&gt;.\ncard.mount('#card-element');\n\u00a0\u00a0\n\/\/ Handle real-time validation errors from the card Element.\ncard.addEventListener('change', function(event) {\n\u00a0\u00a0\u00a0\u00a0var displayError = document.getElementById('card-errors');\n\u00a0\u00a0\u00a0\u00a0if (event.error) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0displayError.textContent = event.error.message;\n\u00a0\u00a0\u00a0\u00a0} else {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0displayError.textContent = '';\n\u00a0\u00a0\u00a0\u00a0}\n});\n\u00a0\u00a0\n\/\/ Handle form submission.\nvar form = document.getElementById('payment-form');\nform.addEventListener('submit', function(event) {\n\u00a0\u00a0\u00a0\u00a0event.preventDefault();\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0stripe.createToken(card).then(function(result) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0if (result.error) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/ Inform the user if there was an error.\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0var errorElement = document.getElementById('card-errors');\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0errorElement.textContent = result.error.message;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0} else {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/ Send the token to your server.\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0stripeTokenHandler(result.token);\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\u00a0\u00a0});\n});\n\u00a0\u00a0\n\/\/ Submit the form with the token ID.\nfunction stripeTokenHandler(token) {\n\u00a0\u00a0\u00a0\u00a0\/\/ Insert the token ID into the form so it gets submitted to the server\n\u00a0\u00a0\u00a0\u00a0var form = document.getElementById('payment-form');\n\u00a0\u00a0\u00a0\u00a0var hiddenInput = document.createElement('input');\n\u00a0\u00a0\u00a0\u00a0hiddenInput.setAttribute('type', 'hidden');\n\u00a0\u00a0\u00a0\u00a0hiddenInput.setAttribute('name', 'stripeToken');\n\u00a0\u00a0\u00a0\u00a0hiddenInput.setAttribute('value', token.id);\n\u00a0\u00a0\u00a0\u00a0form.appendChild(hiddenInput);\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\/\/ Submit the form\n\u00a0\u00a0\u00a0\u00a0form.submit();\n}<\/code><\/pre>\n<p>Sie m\u00fcssen den Platzhalter PUBLISHABLE_KEY durch Ihren tats\u00e4chlichen Schl\u00fcssel im obigen Code ersetzen.<\/p>\n<p>Ich habe dem Formular ein zuf\u00e4lliges Styling hinzugef\u00fcgt. Sie k\u00f6nnen das Formulardesign an Ihre Website anpassen. Dar\u00fcber hinaus bietet Stripe verschiedene Designs von Kartenelementen. Lesen Sie mehr dar\u00fcber in der <a href=\"https:\/\/stripe.com\/payments\/elements\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Dokumentation<\/a>.<\/p>\n<p>Wenn der Benutzer ein Formular mit Kartendetails abschickt, generiert Stripe im Hintergrund einen Token, der als verstecktes Feld &quot;Token&quot; festgelegt wird. Dieses Token wird verwendet, um eine Kartenzahlung mit dem Stripe SDK zu belasten.<\/p>\n<p>Wir senden die Formulardaten an die <code>charge.php<\/code>. In dieser PHP-Datei werden wir die Karte belasten und die Zahlung ausf\u00fchren.<\/p>\n<h3>Stripe-Integration mit Omnipay in PHP<\/h3>\n<p>Wir haben alle mit der Grundkonfiguration eingestellt. Installieren Sie nun die <a href=\"https:\/\/github.com\/thephpleague\/omnipay-stripe\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Omnipay Stripe-Bibliothek,<\/a> um die <a href=\"https:\/\/github.com\/thephpleague\/omnipay-stripe\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Kartenzahlung zu belasten<\/a>. \u00d6ffnen Sie das Terminal in Ihrem Projektstammverzeichnis und f\u00fchren Sie den folgenden Befehl aus:<\/p>\n<pre><code>composer require league\/omnipay omnipay\/stripe<\/code><\/pre>\n<p>Erstellen Sie nach der Installation der Bibliothek eine Datei config.php und initialisieren Sie das Zahlungsobjekt und die Datenbankverbindung.<\/p>\n<pre><code>&lt;?php\nrequire_once \"vendor\/autoload.php\";\n\u00a0\u00a0\nuse OmnipayOmnipay;\n\u00a0\u00a0\u00a0\n\/\/ Connect with the database \n$db = new mysqli('MYSQL_HOST', 'MYSQL_DB_USERNAME', 'MYSQL_DB_PASSWORD', 'MYSQL_DB_NAME');\n\u00a0\u00a0\u00a0\u00a0\nif ($db-&gt;connect_errno) {\n\u00a0\u00a0\u00a0\u00a0die(\"Connect failed: \". $db-&gt;connect_error);\n}\n\u00a0\u00a0\u00a0\n$gateway = Omnipay::create('Stripe');\n$gateway-&gt;setApiKey('SECRET_KEY_HERE');<\/code><\/pre>\n<p>Stellen Sie sicher, dass Sie alle Platzhalter durch die tats\u00e4chlichen Werte ersetzen. Als n\u00e4chstes <code>charge.php<\/code>schreiben Sie den Code wie folgt.<\/p>\n<pre><code>&lt;?php\nrequire_once \"config.php\";\n\u00a0\u00a0\u00a0\nif (isset($_POST['stripeToken']) &amp;&amp; !empty($_POST['stripeToken'])) {\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0try {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$token = $_POST['stripeToken'];\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\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'amount' =&gt; $_POST['amount'],\n\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'token' =&gt; $token,\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0])-&gt;send();\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0if ($response-&gt;isSuccessful()) {\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/ payment was successful: update database\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$arr_payment_data = $response-&gt;getData();\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$payment_id = $arr_payment_data['id'];\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$amount = $_POST['amount'];\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/\/ Insert transaction data into the database\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$isPaymentExist = $db-&gt;query(\"SELECT * FROM payments WHERE payment_id = '\".$payment_id.\"'\");\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0if($isPaymentExist-&gt;num_rows == 0) { \n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0$insert = $db-&gt;query(\"INSERT INTO payments(payment_id, amount, currency, payment_status) VALUES('$payment_id', '$amount', 'USD', 'Captured')\");\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\n\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0echo \"Payment is successful. Your payment id is: \". $payment_id;\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: display message to customer\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0echo $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>Wir sind mit dem Codierungsteil fertig. Testen Sie die Sandbox-Zahlungen. Stripe stellt <a href=\"https:\/\/stripe.com\/docs\/testing\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Dummy-Kartendaten<\/a> zum Testen der Zahlung bereit .<\/p>\n<p>Wann immer Sie sich entschieden haben, live zu gehen, m\u00fcssen Sie nur Ihren geheimen und ver\u00f6ffentlichbaren Schl\u00fcssel mit den Live-Anmeldeinformationen \u00e4ndern.<\/p>\n<p>Ich hoffe, dass Sie auf einer Website mit PHP etwas \u00fcber die Stripe-Integration erfahren. Ich w\u00fcrde gerne Ihre Gedanken und Vorschl\u00e4ge im Kommentarbereich unten h\u00f6ren.<\/p>\n<h4>Zum Thema passende Artikel<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/de\/paypal-payment-gateway-integration-in-php-uber-die-paypal-rest-api\/\" title=\"PayPal Payment Gateway-Integration in PHP \u00fcber die PayPal REST API\">PayPal Payment Gateway-Integration in PHP \u00fcber die PayPal REST API<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/de\/akzeptieren-sie-kreditkartenzahlungen-mit-authorize-net-payment-gateway-in-php\/\" title=\"Akzeptieren Sie Kreditkartenzahlungen mit Authorize.net Payment Gateway in PHP\">Akzeptieren Sie Kreditkartenzahlungen mit Authorize.net Payment Gateway in PHP<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/de\/so-richten-sie-wiederkehrende-zahlungen-in-authorize-net-ein\/\" title=\"So richten Sie wiederkehrende Zahlungen in Authorize.net ein\">So richten Sie wiederkehrende Zahlungen in Authorize.net ein<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Aufnahmequelle:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Suchen Sie eine Stripe-Integration auf Ihrer Website? Mit Stripe kann man online Zahlungen per Kredit- oder Debitkarte akzeptieren. In diesem Artikel zeigen wir Ihnen, wie Sie Kartenzahlungen mit Stripe mit PHP auf Ihrer Website akzeptieren.<\/p>\n","protected":false},"author":1,"featured_media":21618,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[272],"tags":[845],"class_list":["post-25951","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-3","tag-affiai-de"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/posts\/25951","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/comments?post=25951"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/posts\/25951\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/media\/21618"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/media?parent=25951"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/categories?post=25951"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/de\/wp-json\/wp\/v2\/tags?post=25951"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}