Codex · III

সাবস্ক্রিপশন

সাবস্ক্রিপশন

Coin Moebius আপনার মেনুর প্রতিটি ফিয়াট প্রোভাইডারে পুনরাবৃত্ত সাবস্ক্রিপশন বিক্রি করতে পারে। মার্চেন্ট একটি পণ্যে একবার দাম ও ব্যবধান কনফিগার করেন; সাইটের বাই বাটন ঠিক একই থাকে। পেমেন্ট প্রোভাইডার পুনরাবৃত্ত বিলিং চালায়, কার্ড রাখে, ব্যর্থ নবায়ন রিট্রাই করে, আর বাতিল পৃষ্ঠা হোস্ট করে। Coin Moebius লাইফসাইকেল ইভেন্টগুলো আপনার কোডে রিলে করে।

একটি পুনরাবৃত্ত পণ্য সেট আপ করা

ড্যাশবোর্ডের Products ট্যাবে, Billing ফিল্ডটি One-time-এর বদলে Monthly বা Annual-এ নির্ধারণ করুন। প্রথম চার্জের আগে আপনি যেসব ট্রায়াল দিন দিতে চান তার জন্য একটি ঐচ্ছিক Free trial ফিল্ড দেখায়। পণ্যটি সেভ করুন।

বাই বাটন HTML বদলায় না। একই product-id="pro-plan" অ্যাট্রিবিউট একবার বা পুনরাবৃত্ত উভয়ের জন্য কাজ করে; worker চেকআউটের সময় পণ্যের বিলিং সেটিং দেখে আর প্রযোজ্য হলে প্রোভাইডারের সাবস্ক্রিপশন API দিয়ে রুট করে।

<coin-moebius-buy
  project-id="proj_YOUR_ID"
  product-id="pro-plan"
  label="Subscribe to Pro">
</coin-moebius-buy>

যা আপনাকে বানাতে হয় না

প্রোভাইডার সময়সূচি চালায়। আমরা কার্ড সংরক্ষণ করি না। আমরা cron জব চালাই না। আমরা ব্যর্থ চার্জ রিট্রাই করি না। আমরা ডানিং ইমেইল পাঠাই না। আমরা একটি বাতিল পৃষ্ঠা হোস্ট করি না। সিস্টেমের সেই পুরো দিকটি Stripe-এর (বা আপনি যে ফিয়াট প্রোভাইডার যুক্ত করেছেন তার) ভেতরে থাকে। আপনি পুনরাবৃত্ত বিলিংয়ের কঠিন অংশগুলো এমন একটি কোম্পানিকে আউটসোর্স করছেন যারা ইতিমধ্যে লক্ষ লক্ষ মার্চেন্টের জন্য সেগুলো চালাচ্ছে।

সাবস্ক্রিপশন ইভেন্ট

নবায়ন ও বাতিল ওয়েবহুক ইভেন্ট হিসেবে দেখা দেয় যাতে আপনার সার্ভার সাড়া দিতে পারে। পাঁচটি নর্মালাইজড টাইপ লাইফসাইকেল কভার করে:

ইভেন্টকখন এটি ঘটে
subscription.createdনতুন সাইনআপ। প্রথম চক্রের পরিমাণ বহন করে।
subscription.renewedএকটি প্রথম-নয় এমন চক্র সফল হয়েছে। নতুন সময়কাল শেষ পর্যন্ত প্রবেশ বাড়ান।
subscription.payment_failedএকটি চক্রের কার্ড প্রত্যাখ্যাত হয়েছে। প্রোভাইডারের ডানিং এর সময়সূচিতে রিট্রাই করে; আপনি সাধারণত দৃশ্যমানতার জন্য শুধু এটি লগ করেন।
subscription.canceledচূড়ান্ত বাতিল। ক্রেতা বাতিল করেছেন, ডানিং শেষ হয়েছে, কিংবা মার্চেন্ট বাতিল করেছেন।
subscription.updatedস্ট্যাটাস পরিবর্তন, কার্ড আপডেট, প্ল্যান পরিবর্তন। নতুন স্ট্যাটাস পরিদর্শন করুন।

ক্রেতাদের সংরক্ষণ না করে শনাক্ত করা

Coin Moebius একটি পেমেন্ট রাউটার, কোনো গ্রাহক ডেটাবেস নয়। আমরা কখনো ক্রেতার ইমেইল, নাম, ঠিকানা, বা প্রোভাইডারের অভ্যন্তরীণ গ্রাহক আইডি সংরক্ষণ করি না। আপনার অ্যাপ্লিকেশনে যদি ব্যবহারকারী অ্যাকাউন্ট থাকে (বেশিরভাগ সাবস্ক্রিপশন অ্যাপে থাকে), বাই বাটনে আপনার নিজের অস্বচ্ছ ব্যবহারকারী আইডি customer-ref হিসেবে পাঠান। বাটনটি এটি metadata.customerRef হিসেবে worker-এ পাঠায়, আমরা এটি প্রোভাইডারে পার করি, প্রতিটি ইভেন্টে ফেরত দেখাই, আর কেবল সেই অস্বচ্ছ স্ট্রিংটিই সংরক্ষণ করি। আমাদের কাছে এটি অর্থহীন; আপনার কাছে এটি আপনার নিজের ব্যবহারকারী সিস্টেমে বিদেশী কি।

<coin-moebius-buy
  project-id="proj_YOUR_ID"
  product-id="pro-plan"
  customer-ref="user_bob_42">
</coin-moebius-buy>

যখন আপনার গভীর ক্রেতার বিবরণ দরকার (ইমেইল, কার্ডের শেষ চারটি অঙ্ক, বিরোধ নোট), ড্যাশবোর্ড প্রতিটি কার্ড লেনদেন যে প্রোভাইডার তা সামলেছে (Stripe, PayPal, Square, বা Authorize.Net) তার দিকে লিংক করে, যেখানে ক্রেতার রেকর্ড আসলে থাকে। আপনি ক্লিক করে যান; আমরা কখনো তা নকল করি না।

বাতিল: বাইরে লিংক করুন, বানাবেন না

ক্রেতারা প্রোভাইডারের হোস্টেড পোর্টালে বাতিল করেন: Stripe Customer Portal, ক্রেতার PayPal অ্যাকাউন্ট পৃষ্ঠা, ইত্যাদি। পোর্টাল বাতিল, কার্ড আপডেট, রসিদ ডাউনলোড, ও প্ল্যান পরিবর্তন সামলায়, সব UI যা আপনাকে বানাতে হয় না। আপনি একটি API কলে ক্রেতাকে পোর্টালে ফেলে দিতে পারেন:

const res = await fetch(
  `https://api.coinmoebius.com/api/subscriptions/${projectId}/${subId}/portal-url`,
  { method: 'POST', body: JSON.stringify({ returnUrl: 'https://you.example/account' }) },
);
const { url } = await res.json();
window.location.assign(url);

আজ কোন প্রোভাইডার সাবস্ক্রিপশন সমর্থন করে

Stripe ও PayPal হোস্টেড বাই বাটনের মাধ্যমে আগাগোড়া কাজ করে। আপনার ড্যাশবোর্ডে একটি পণ্যকে মাসিক বা বার্ষিক করে দিন, আপনার পৃষ্ঠায় বাটনটি পেস্ট করুন, আর ক্লিকটি একটি আসল সাবস্ক্রিপশন শুরু করে। প্রোভাইডার নবায়ন চালায়।

Square ও Authorize.Net সাবস্ক্রিপশন হোস্টেড বাই বাটনের মাধ্যমে চলে না। আপনি প্রোভাইডারের সাথে আপনার নিজের ইন্টিগ্রেশনের মাধ্যমে সাবস্ক্রিপশন তৈরি করেন (Authorize.Net-এর জন্য, এর মানে Accept.js দিয়ে আপনার নিজের পৃষ্ঠায় কার্ড সংগ্রহ করা; Square-এর নিজস্ব হোস্টেড সাবস্ক্রিপশন চেকআউট আছে যা আপনি ব্যবহার করতে পারেন), তারপর প্রোভাইডারের ওয়েবহুক আমাদের দিকে নির্দেশ করেন। সেখান থেকে বাকি সিস্টেম (ওয়েবহুক রাউটিং, ড্যাশবোর্ড, স্ট্যাটাস এন্ডপয়েন্ট, গ্রাহক লিংকিং) Stripe ও PayPal সাবস্ক্রিপশনের মতোই কাজ করে। পরবর্তী বিভাগ দেখুন।

ক্রিপ্টো প্রোভাইডার (NOWPayments) এই পণ্যে পুনরাবৃত্ত বিলিং সমর্থন করে না। আমরা যাচাই করেছি এমন প্রতিটি গেটওয়েতে পুনরাবৃত্ত ক্রিপ্টো ঝামেলায় ভরা; আমরা এর জন্য একটি অর্ধ-ভাঙা গল্প পাঠানোর চেয়ে কিছুই না পাঠানো শ্রেয় মনে করি।

যুক্ত করতে প্রস্তুত?

ফ্রি টিয়ার বেশিরভাগ সাইট কভার করে আর কখনো কার্ড চায় না।