2013-08-01 3 views
23

Ich verwende Stripe checkout.js, weil es so einfach zu installieren und zu verwenden ist. Gibt es eine Möglichkeit, Gutscheine hinzuzufügen?Streifen checkout.js mit Gutscheinen

<script src="https://checkout.stripe.com/v2/checkout.js" 
    class="stripe-button" 
    data-key="pk_test_czwzkTp2tactuLOEOqbMTRzG" 
    data-amount="2000" 
    data-name="Demo Site" 
    data-description="2 widgets ($20.00)" 
    data-image="/128x128.png"> 
</script> 
+0

möglich Duplikat [Anwenden Streifen Coupon] (http://stackoverflow.com/questions/18023369/apply-stripe-coupon) – Tarek

Antwort

12

Streifenauszahlung unterstützt derzeit keine Gutscheine. Es ist nicht in der documentation aufgeführt, entweder für die Schaltfläche oder die benutzerdefinierte Integration.

Man könnte sich fragen, ob es eine geheime Funktion gibt. Es ist jedoch eine schlechte Idee, nicht dokumentierte Funktionen zu verwenden, insbesondere wenn es um Ihren Zahlungsprozessor geht. Punkt.


Dies ist Stack Overflow - lasst uns weiter graben!

Feuer up jsfiddle. Fügen Sie Ihren Code in den HTML-Bereich ein. Öffnen Sie Entwickler-Tools, damit Sie Netzwerkanforderungen sehen können.

Es gibt eine en.json, die eine internationalisierte Zeichenkettendatei ist. Wenn es eine Eingabe für Gutscheine gibt, sollte ein Etikett mit der Aufschrift "Gutscheincode eingeben" oder etwas Ähnliches eingegeben werden. Da ist gar nichts. (Sicher, es gibt die Möglichkeit, dass Stripe sich entschieden hat, diese spezielle Zeichenfolge hart zu codieren, aber das scheint unwahrscheinlich).

https://checkout.stripe.com/v3/data/languages/en.json

können Sie auch sehen, dass inner.js verwendet wird, um das Popup zu versorgen. Kopieren Sie die Quelle in eine js Verschönerung und Sie finden, dass es keine Erwähnung gibt. In der Tat können Sie den Code sehen, der die Optionen analysiert und keiner von ihnen mit Coupons zu tun hat.

"lib/optionParser": function(exports, require, module) { 
    (function() { 
     var BOOLEAN_OPTIONS, DEFAULTS, STRING_OPTIONS, URL_OPTIONS, extractValue, helpers, toBoolean, _; 
     _ = require("vendor/lodash"); 
     helpers = require("lib/helpers"); 
     DEFAULTS = { 
      currency: "usd", 
      allowRememberMe: true 
     }; 
     BOOLEAN_OPTIONS = ["billingAddress", "shippingAddress", "notrack", "nostyle", "allowRememberMe", "allowPhoneVerification", "zipCode", "trace", "alipayReusable", "bitcoin"]; 
     STRING_OPTIONS = ["key", "amount", "name", "description", "panelLabel", "currency", "email", "locale", "alipay"]; 
     URL_OPTIONS = ["url", "referrer", "image"]; 

können Sie sehen, wie die einzelnen Optionen hier 12.59 mit den Optionen, die für custom integration verfügbar ausrichten, die Karte zu den Optionen für die Schaltfläche (Sie müssen nur Bindestriche anstelle von Camelcase verwenden)

An dieser Stelle können Sie weiter graben, wenn Sie sich selbst weiter überzeugen wollen, aber ich würde mich an den Stripe Support wenden und eine Funktion anfordern. Glückliches Graben!

7

Checkout erstellt nur das Token. Der Gutschein wird auf den Kunden angewendet, nachdem der Token an den Server zurückgesendet wurde und der Kunde belastet wird.

1

Wenn Sie einen Gutschein-Code an Ihr Back-End übergeben möchten, können Sie einfach ein Eingabefeld dafür im Formular hinzufügen. Es wird jedoch nicht die Beträge im Popup-Formular von Stripe ändern, außer Sie wollten raffiniert werden und zusätzliches Javascript aufrufen, um die Parameter des eingegebenen Gutscheincodes zu überprüfen und die Stripe-Script-Parameter zu ändern.

Sie können alle benötigten Eingaben in die Formular-Tags einfügen, sofern sie nicht von stripe verwendet werden.

<form action="/your-server-side-code" method="POST"> 
 
    Coupon Code: <input type="text" name="coupon_code"> 
 
    <br> 
 
    <script src="https://checkout.stripe.com/v2/checkout.js" class="stripe-button" data-key="pk_test_czwzkTp2tactuLOEOqbMTRzG" data-amount="2000" data-name="Demo Site" data-description="2 widgets ($20.00)" data-image="/128x128.png"> 
 
    </script> 
 
</form>