2013-08-01 7 views
23

मैं स्ट्रिप के checkout.js का उपयोग कर रहा हूं क्योंकि यह सेटअप और उपयोग करना इतना आसान है। कूपन जोड़ने का कोई तरीका है?कूपन के साथ स्ट्रिप चेकआउट.जेएस

<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

के संभावित डुप्लिकेट [लागू धारी कूपन] (http://stackoverflow.com/questions/18023369/apply-stripe-coupon) – Tarek

उत्तर

12

स्ट्रिप चेकआउट वर्तमान में कूपन का समर्थन नहीं करता है। यह बटन या कस्टम एकीकरण के लिए documentation में सूचीबद्ध नहीं है।

कोई आश्चर्यचकित हो सकता है कि कुछ गुप्त सुविधा है या नहीं। हालांकि, अनियंत्रित विशेषताओं का उपयोग करना, खासकर जब आपके भुगतान प्रोसेसर की बात आती है तो यह एक बुरा विचार है। पूर्ण विराम।


यह स्टैक ओवरफ़्लो है - चलो खुदाई रखें!

आग लगाना jsfiddle। अपना कोड एचटीएमएल अनुभाग में पेस्ट करें। डेवलपर टूल खोलें ताकि आप नेटवर्क अनुरोध देख सकें।

एक en.json है, जो एक अंतरराष्ट्रीयकृत तार फ़ाइल है। यदि कूपन के लिए कोई इनपुट है, तो "कूपन कोड दर्ज करें" या ऐसा कुछ कहने वाला लेबल होना चाहिए। वहां कोई नहीं है। (निश्चित रूप से, संभावना है कि स्ट्रिप ने इस विशेष स्ट्रिंग को कड़ी कोड करने का फैसला किया, लेकिन यह असंभव लगता है)।

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

तुम भी है कि inner.js पॉपअप शक्ति प्रयोग किया जाता है देख सकते हैं। स्रोत को जेएस ब्यूटीफायर में कॉपी करें और आप पाते हैं कि इसमें कोई उल्लेख नहीं है। वास्तव में, आप उस कोड को देख सकते हैं जो विकल्प को पार करता है और उनमें से कोई भी कूपन के साथ नहीं करना है।

"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"]; 

आप देख सकते हैं कि विकल्पों में से प्रत्येक यहाँ जो बटन के लिए विकल्प के लिए नक्शे

(आप बस CamelCase के बजाय हाइफ़न उपयोग करने की आवश्यकता) विकल्प, custom integration के लिए उपलब्ध के साथ एक करने के लिए से एक संरेखित

इस बिंदु पर, यदि आप स्वयं को और अधिक समझाना चाहते हैं तो आप खुदाई कर सकते हैं, लेकिन मैं स्ट्रिप समर्थन तक पहुंचने और सुविधा अनुरोध करने के लिए पहुंच रहा हूं। खुदाई खुदाई!

7

चेकआउट केवल टोकन बनाता है। सर्वर पर टोकन वापस लौटने के बाद ग्राहक को कूपन लागू किया जाता है और ग्राहक से शुल्क लिया जाता है।

stripe.Customer.create(
    source=token, 
    plan="basic_monthly", 
    email="[email protected]", 
    coupon="coupon_ID" 
) 
1

यदि आप अपने बैक एंड पर कूपन कोड पास करना चाहते हैं, तो आप फ़ॉर्म के भीतर इसके लिए एक इनपुट फ़ील्ड जोड़ सकते हैं। यह पट्टी से पॉप-अप फॉर्म में रकम को तब तक नहीं बदलेगा जब तक कि आप परिष्कृत नहीं होना चाहते हैं और दर्ज किए गए कूपन कोड के पैरामीटर को जांचने और पट्टी स्क्रिप्ट पैरामीटर को बदलने के लिए अतिरिक्त जावास्क्रिप्ट को कॉल करना चाहते हैं।

आप फॉर्म टैग के भीतर जितनी भी आवश्यक इनपुट शामिल कर सकते हैं, जब तक उन्हें पट्टी द्वारा उपयोग नहीं किया जाता है।

<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>

संबंधित मुद्दे