सदस्यताओं का प्रबंधन
योजनाओं और नवीनीकरणों को संभालें।
सदस्यताओं का प्रबंधन, CoddyKit पर वाइब कोडिंग का एक निःशुल्क पाठ है। यह 4 में से 3वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह वाइब कोडिंग सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। वाइब कोडिंग पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
सदस्यताएं स्थिति बनाए रखती हैं
सदस्यता कोई एकल शुल्क नहीं है — यह समय के साथ चलने वाला संबंध है। इसकी एक स्थिति, वर्तमान अवधि और बिलिंग समय-सारणी होती है, जिसे प्रदाता अपने-आप आगे बढ़ाता है।
आपका काम इस स्थिति की प्रतिलिपि अपने डेटाबेस में रखना है, ताकि आपका ऐप हमेशा जान सके कि कोई उपयोगकर्ता इस समय भुगतान वाली सुविधाओं का अधिकारी है या नहीं।
स्थिति मशीन
सदस्यता कई स्थितियों से गुजरती है: परीक्षण-अवधि, सक्रिय, भुगतान-बकाया, रद्द और भुगतान-रहित। हर बदलाव का पहुंच पर प्रभाव पड़ता है।
इसे स्पष्ट रूप से मॉडल करें। "सक्रिय" और "परीक्षण-अवधि" को अधिकारयुक्त, "भुगतान-बकाया" को रियायत-अवधि, और "रद्द" या "भुगतान-रहित" को अधिकार वापस लिया हुआ मानें। केवल एक बूलियन में सब कुछ हार्ड-कोड करने से वह जानकारी खो जाती है जिसकी आपको आगे आवश्यकता होगी।
List every subscription status Stripe can report (trialing, active, past_due, canceled, unpaid, incomplete) and tell me, for each, whether my app should grant or revoke access to paid features. Put it in a decision table.संकेतकों के बजाय अधिकार
हर जगह "if user.paid" लिखने से बचें। एक ही केंद्रीय फ़ंक्शन बनाएं, जो सदस्यता की स्थिति के आधार पर यह बताए कि "इस समय इस उपयोगकर्ता को किन सुविधाओं का अधिकार है?"
यही अधिकार-जांच आपके पहुंच-तर्क का एकमात्र स्थान बन जाती है। किसी नियम को एक बार बदलें और पूरा ऐप उसका पालन करेगा।
Write a single getEntitlements(userId) function that reads the stored subscription status and plan, and returns the feature set the user can access. Make every feature gate in the app call this one function instead of checking raw flags.परीक्षण अवधियां
परीक्षण-अवधि पहले शुल्क से पहले पहुंच देती है। सदस्यता परीक्षण-अवधि की स्थिति में रहती है; अवधि समाप्त होने पर प्रदाता भुगतान का प्रयास करता है और स्थिति को सक्रिय या भुगतान-बकाया में बदल देता है।
तय करें कि शुरुआत में कार्ड आवश्यक होगा या नहीं। शुरुआत में कार्ड लेना दुरुपयोग घटाता है, लेकिन साइन-अप कम करता है; बिना कार्ड के प्रक्रिया आसान होती है, पर केवल आज़माने वाले लोग अधिक आते हैं।
I want a 14-day free trial. Compare requiring a card up front versus no card at all: conversion, abuse, and the webhook events I need to handle when the trial ends and the first real charge succeeds or fails.अपग्रेड और डाउनग्रेड
ग्राहक चक्र के बीच में योजनाएं बदलते हैं। अपग्रेड आमतौर पर तुरंत लागू होते हैं और शेष अवधि के लिए अनुपातिक शुल्क लिया जाता है। रिफंड से बचने के लिए डाउनग्रेड अक्सर अगली नवीनीकरण तिथि पर लागू किए जाते हैं।
अनुपातिक गणना का अर्थ है उपयोग न किए गए समय का क्रेडिट देना और अंतर की राशि लेना। इसकी गणना प्रदाता को करने दें; समय-निर्धारण की नीति चुनना आपका काम है।
Explain proration when a user upgrades from the $10 plan to the $30 plan halfway through a billing month. Show how Stripe handles the credit and charge, and recommend whether downgrades should be immediate or deferred to period end.रद्दीकरण
रद्द करना प्रायः तुरंत पहुंच बंद करना नहीं होता। सामान्य तरीका है अवधि के अंत में रद्द करना: उपयोगकर्ता उस अवधि के समाप्त होने तक पहुंच बनाए रखता है जिसके लिए उसने भुगतान किया है, फिर वह समाप्त हो जाती है।
इससे रिफंड संबंधी विवाद टलते हैं और ग्राहक के भुगतान का सम्मान होता है। अपनी स्थिति में रद्द करने के अनुरोध और वास्तविक समाप्ति, दोनों को दर्शाएं।
Implement cancellation as cancel_at_period_end so the user keeps paid access until the end of the current period, then loses it. Show which webhook tells me the subscription actually ended versus merely being scheduled to cancel.विफल नवीनीकरण और बकाया-वसूली
कार्ड की अवधि समाप्त हो सकती है या भुगतान विफल हो सकता है। नवीनीकरण विफल होने पर सदस्यता भुगतान-बकाया स्थिति में चली जाती है और प्रदाता समय-सारणी के अनुसार फिर प्रयास करता है — इस पुनर्प्राप्ति प्रक्रिया को बकाया-वसूली कहते हैं।
बकाया-वसूली के दौरान आप पहुंच बनाए रख सकते हैं (रियायत) या उसे सीमित कर सकते हैं। ग्राहक को कार्ड अपडेट करने के लिए ईमेल भेजें। अपनी रियायत नीति स्पष्ट रूप से तय करें।
Set up dunning for failed subscription renewals: configure Stripe's retry schedule, decide a 3-day grace period where access continues, and send the customer a card-update email. List the webhook events that drive each step.अपने डेटाबेस को समकालिक रखना
प्रदाता सत्य का मुख्य स्रोत है, लेकिन हर अनुरोध पर उससे जानकारी लेना धीमा होता है। इसके बजाय सदस्यता की स्थिति अपने डेटाबेस में कैश करें और हर बार वेबहुक आने पर उसे अपडेट करें।
हर संबंधित घटना — बनाई गई, अपडेट की गई, हटाई गई, payment_failed — को आपके रिकॉर्ड में नई स्थिति लिखनी चाहिए। फिर आपका ऐप अपनी तेज़, स्थानीय प्रतिलिपि पढ़ता है।
Design a subscriptions table that mirrors Stripe state (status, plan, current_period_end, cancel_at_period_end). Write the webhook handler that updates this row on customer.subscription.created, updated, and deleted so my app reads its own copy.ग्राहक पोर्टल
स्वयं-सेवा बिलिंग UI बनाना बहुत मेहनत का काम है। अधिकांश प्रदाता होस्ट किया हुआ ग्राहक पोर्टल देते हैं, जहां उपयोगकर्ता कार्ड अपडेट, योजनाएं बदल, इनवॉइस देख और सदस्यता रद्द कर सकते हैं।
आप अपने सर्वर से पोर्टल लिंक बनाते हैं; प्रदाता बाकी काम संभालता है और उपयोगकर्ता द्वारा किए गए किसी भी बदलाव के लिए वेबहुक भेजता है। इससे UI बनाने के कई सप्ताह बचते हैं।
Add a "Manage Billing" button that calls my server to create a Stripe Billing Portal session for the logged-in customer and redirects them there. Confirm that plan changes they make in the portal come back to me as webhook events.रियायत, पुनःसक्रियण और विशेष मामले
वास्तविक जीवन अव्यवस्थित होता है: भुगतान-बकाया उपयोगकर्ता देर से भुगतान करता है और उसे फिर पहुंच मिलनी चाहिए; रद्द उपयोगकर्ता दोबारा सदस्यता लेता है; रिफंड किसी शुल्क को उलट देता है। हर स्थिति में अधिकार सही ढंग से अपडेट होने चाहिए।
हर बदलाव को उसी स्थिति-से-अधिकार तर्क से संचालित करें। यदि पुनःसक्रियण स्थिति को फिर सक्रिय कर देता है, तो बिना किसी विशेष कोड के पहुंच अपने-आप बहाल होनी चाहिए।
सदस्यता जीवनचक्र का परीक्षण
समय को तेजी से आगे बढ़ाने के लिए परीक्षण घड़ियों या अनुकरण की गई घटनाओं का उपयोग करें: परीक्षण-अवधि शुरू करें, उसे समाप्त करें, नवीनीकरण विफल करें, उसे पुनर्प्राप्त करें और फिर रद्द करें। हर चरण पर अधिकारों की पुष्टि करें।
सदस्यताएं भविष्य में विफल होती हैं, चेकआउट के समय नहीं। पूरे जीवनचक्र का परीक्षण ही नवीनीकरण की त्रुटि को ग्राहक से पहले पकड़ने का एकमात्र तरीका है।
Use Stripe test clocks to simulate a full subscription lifecycle: trial start, trial end with successful charge, a failed renewal that goes past_due, recovery, and finally cancellation. For each phase, tell me what my entitlement check should return.त्वरित जांच
पहुंच-तर्क प्रबंधित करने का सबसे साफ़ तरीका पक्का करें।
सारांश
सदस्यताएं स्थिति वाली संबंध हैं और इनमें स्थिति मशीन होती है: परीक्षण-अवधि, सक्रिय, भुगतान-बकाया, रद्द, भुगतान-रहित। पहुंच को एक अधिकार फ़ंक्शन में केंद्रीकृत करें, ताकि हर रोक एक ही नियम का पालन करे, और पूछताछ करने के बजाय वेबहुक के माध्यम से प्रदाता की स्थिति अपने डेटाबेस में कैश करें।
परीक्षण अवधियों, अनुपातिक अपग्रेड, अवधि-अंत रद्दीकरण और विफल नवीनीकरण की बकाया-वसूली को संभालें। UI का काम बचाने के लिए होस्ट किया हुआ ग्राहक पोर्टल दें और लॉन्च से पहले परीक्षण घड़ियों के साथ पूरे जीवनचक्र का परीक्षण करें।
एआई शिक्षक के साथ JavaScript सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 25
- पाठ
- 100
अक्सर पूछे जाने वाले प्रश्न
क्या “सदस्यताओं का प्रबंधन” पाठ निःशुल्क है?
हाँ — वाइब कोडिंग अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “सदस्यताओं का प्रबंधन” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। वाइब कोडिंग पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“सदस्यताओं का प्रबंधन” में मैं क्या सीखूँगा?
योजनाओं और नवीनीकरणों को संभालें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ वाइब कोडिंग का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या वाइब कोडिंग शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर वाइब कोडिंग शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 3वाँ पाठ है।
“सदस्यताओं का प्रबंधन” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस वाइब कोडिंग पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर वाइब कोडिंग पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- भुगतान की मूल अवधारणाएँ
- चेकआउट सेट अप करना
- सदस्यताओं का प्रबंधन
- भुगतानों का सुरक्षित सत्यापन