Codex · III

Συνδρομές

Συνδρομές

Το Coin Moebius μπορεί να πουλήσει επαναλαμβανόμενες συνδρομές σε κάθε πάροχο fiat του μενού σας. Ο έμπορος διαμορφώνει την τιμή και το διάστημα μία φορά σε ένα προϊόν· το κουμπί αγοράς στον ιστότοπο παραμένει ακριβώς το ίδιο. Ο πάροχος πληρωμής τρέχει την επαναλαμβανόμενη χρέωση, κρατά την κάρτα, επανεπιχειρεί τις αποτυχημένες ανανεώσεις και φιλοξενεί τη σελίδα ακύρωσης. Το Coin Moebius αναμεταδίδει τα συμβάντα κύκλου ζωής στον κώδικά σας.

Ρύθμιση ενός επαναλαμβανόμενου προϊόντος

Στην καρτέλα Προϊόντα του πίνακα ελέγχου, ορίστε το πεδίο Χρέωση σε Μηνιαία ή Ετήσια αντί για Εφάπαξ. Ένα προαιρετικό πεδίο Δωρεάν δοκιμή εμφανίζεται για όσες ημέρες δοκιμής θέλετε να παραχωρήσετε πριν την πρώτη χρέωση. Αποθηκεύστε το προϊόν.

Το HTML του κουμπιού αγοράς δεν αλλάζει. Το ίδιο χαρακτηριστικό product-id="pro-plan" λειτουργεί για εφάπαξ ή επαναλαμβανόμενη χρέωση· ο worker ελέγχει τη ρύθμιση χρέωσης του προϊόντος τη στιγμή του checkout και δρομολογεί μέσω του API συνδρομών του παρόχου όταν ισχύει.

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

Τι δεν χρειάζεται να χτίσετε

Ο πάροχος τρέχει το πρόγραμμα. Δεν αποθηκεύουμε κάρτες. Δεν τρέχουμε cron jobs. Δεν επανεπιχειρούμε αποτυχημένες χρεώσεις. Δεν στέλνουμε email είσπραξης. Δεν φιλοξενούμε σελίδα ακύρωσης. Όλη αυτή η πλευρά του συστήματος ζει μέσα στο Stripe (ή όποιον πάροχο fiat έχετε συνδέσει). Αναθέτετε τα δύσκολα μέρη της επαναλαμβανόμενης χρέωσης στην εταιρεία που τα τρέχει ήδη για εκατομμύρια εμπόρους.

Συμβάντα συνδρομής

Οι ανανεώσεις και οι ακυρώσεις εμφανίζονται ως συμβάντα webhook στα οποία μπορεί να αντιδράσει ο διακομιστής σας. Πέντε κανονικοποιημένοι τύποι καλύπτουν τον κύκλο ζωής:

ΣυμβάνΠότε ενεργοποιείται
subscription.createdΝέα εγγραφή. Φέρει το ποσό του πρώτου κύκλου.
subscription.renewedΈνας μη αρχικός κύκλος πέτυχε. Επεκτείνετε την πρόσβαση έως το νέο τέλος της περιόδου.
subscription.payment_failedΗ κάρτα ενός κύκλου απορρίφθηκε. Η είσπραξη του παρόχου επανεπιχειρεί στο δικό της πρόγραμμα· συνήθως απλώς το καταγράφετε για ορατότητα.
subscription.canceledΤελική ακύρωση. Ο αγοραστής ακύρωσε, η είσπραξη εξαντλήθηκε, ή ο έμπορος ακύρωσε.
subscription.updatedΑλλαγή κατάστασης, ενημέρωση κάρτας, αλλαγή πλάνου. Επιθεωρήστε τη νέα κατάσταση.

Ταυτοποίηση αγοραστών χωρίς αποθήκευσή τους

Το Coin Moebius είναι ένας δρομολογητής πληρωμών, όχι μια βάση δεδομένων πελατών. Ποτέ δεν αποθηκεύουμε email, ονόματα, διευθύνσεις αγοραστών ή τα εσωτερικά id πελατών του παρόχου. Αν η εφαρμογή σας έχει λογαριασμούς χρηστών (οι περισσότερες εφαρμογές συνδρομών έχουν), περάστε το δικό σας αδιαφανές id χρήστη ως customer-ref στο κουμπί αγοράς. Το κουμπί το προωθεί στον worker ως metadata.customerRef, το περνάμε στον πάροχο, το επιστρέφουμε σε κάθε συμβάν, και αποθηκεύουμε μόνο αυτή την αδιαφανή συμβολοσειρά. Για εμάς δεν έχει νόημα· για εσάς είναι το ξένο κλειδί στο δικό σας σύστημα χρηστών.

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

Όταν χρειάζεστε βαθύτερες λεπτομέρειες αγοραστή (email, τελευταία τέσσερα ψηφία κάρτας, σημειώσεις διαφορών), ο πίνακας ελέγχου συνδέει κάθε συναλλαγή κάρτας με τον πάροχο που τη χειρίστηκε (Stripe, PayPal, Square ή Authorize.Net), όπου ζει πραγματικά η εγγραφή του αγοραστή. Κάνετε κλικ· εμείς ποτέ δεν την αντιγράφουμε.

Ακύρωση: συνδέστε, μην χτίσετε

Οι αγοραστές ακυρώνουν στο φιλοξενούμενο portal του παρόχου: το Stripe Customer Portal, τη σελίδα λογαριασμού PayPal του αγοραστή, και ούτω καθεξής. Το portal χειρίζεται την ακύρωση, τις ενημερώσεις κάρτας, τη λήψη αποδείξεων και τις αλλαγές πλάνου, όλο το UI που δεν χρειάζεται να χτίσετε. Μπορείτε να οδηγήσετε τον αγοραστή στο portal με μία κλήση 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 έχει το δικό του φιλοξενούμενο checkout συνδρομών που μπορείτε να χρησιμοποιήσετε), και μετά στρέφετε το webhook του παρόχου προς εμάς. Από εκεί το υπόλοιπο σύστημα (δρομολόγηση webhook, πίνακας ελέγχου, status endpoint, σύνδεση πελάτη) λειτουργεί ακριβώς με τον ίδιο τρόπο όπως για τις συνδρομές Stripe και PayPal. Δείτε την επόμενη ενότητα.

Οι πάροχοι κρυπτονομισμάτων (NOWPayments) δεν υποστηρίζουν επαναλαμβανόμενη χρέωση σε αυτό το προϊόν. Η επαναλαμβανόμενη χρέωση με κρυπτονομίσματα έχει πολλές τριβές σε κάθε gateway που έχουμε αξιολογήσει· προτιμούμε να μην προσφέρουμε τίποτα παρά να προσφέρουμε μια μισοχαλασμένη ιστορία γι’ αυτό.

Έτοιμοι να το συνδέσετε;

Η δωρεάν βαθμίδα καλύπτει τους περισσότερους ιστότοπους και ποτέ δεν ζητά κάρτα.