تخطَّ إلى المحتوى

الأسعار + Stripe Checkout

الدرس 9 من 38

الهدف

بعد هالدرس تقدر تبني صفحة أسعار بخطط متعددة، توصّل Stripe Checkout، وتوجّه المستخدم بعد الدفع لصفحة النجاح أو الإلغاء.

ليش هذا الحين؟

الداشبورد جاهز والمستخدم يستخدم التطبيق — الحين الوقت المناسب تطلب منه يدفع. صفحة الأسعار مو مجرد UI، هي قرار عمل: كم تسعّر؟ شنو تعرض؟ وكيف تقنع؟ Stripe يسهل الربط التقني، بس القرار التجاري عليك أنت.

الفكرة

Stripe Checkout هو صفحة دفع جاهزة تستضيفها Stripe نفسها — أنت ما تلمس بيانات البطاقة أبد، Stripe يتكفل بكل شي: PCI compliance، 3D Secure، العملات، المحاولات الفاشلة.

الفكرة: تسوي checkout.sessions.create في الـ API route، تحدد الـ priceId والـ URLs، و Stripe يرجعك session.url — تحول المستخدم عليها.

الـ priceId تجيبه من Stripe Dashboard: Products → اختار منتج → Price → انسخ price_xxx. هذا مو secret، تقدر تحطه في frontend بس أحسن يكون في env.

Free vs Paid: الـ Free tier ما يحتاج Stripe — بس ضفه في الواجهة للمقارنة. الـ paid tiers يحتاجون Checkout.

success_url مو مصدر حقيقة: المستخدم يقدر يوصل للـ success URL بدون ما يدفع. مصدر الحقيقة هو الـ webhook — نبنيه في الدرس الجاي.

محتاج مساعدة؟ راسلنا على mj@shakesbeard.net