تكامل Stripe
يشرح هذا الدليل تكامل Stripe في MyCloudBook: كيف يدفع العملاء الفواتير وأوامر البيع بالبطاقة، وكيف تربط حساب Stripe، وكيف يسجل MyCloudBook المدفوعات والرسوم.
نظرة عامة
Stripe خدمة دفع إلكتروني. يتيح تكامل Stripe لعملاء الشركة دفع فواتيرهم وأوامر البيع الخاصة بهم بالبطاقة. تحتاج الشركة إلى حساب Stripe خاص بها.
يفتح العميل الرابط المشترك لفاتورة أو أمر بيع، مثلًا من رسالة البريد الإلكتروني الخاصة بالمستند. ثم ينقر العميل على Pay with Card. يستلم Stripe الدفعة في صفحة الدفع الخاصة به. في الفاتورة، المبلغ هو المبلغ الذي لا يزال مستحقًا. وفي أمر البيع، المبلغ هو الإجمالي، ما دام الأمر مفتوحًا وغير منتهي الصلاحية. بعد الدفع، يسجل MyCloudBook الدفعة تلقائيًا:
| الحدث | ما يسجله MyCloudBook |
|---|---|
| دفع فاتورة | سند قبض للعميل الذي يدفع الفاتورة. يذهب المبلغ إلى حساب الإيداع الخاص بعملة الدفعة. |
| دفع أمر بيع | إيصال مبيعات للأمر. ويُنفِّذ الإيصال الأمر. |
| اقتطاع Stripe لرسومه | مصروف لمورّد Stripe على حساب مصروف الرسوم، مدفوع من حساب الإيداع. ويُربط المصروف بمستند الدفعة بوصفه مستندًا مرتبطًا. |
| إنشاء المستندات | يتلقى العميل رسالة بريد إلكتروني فيها رابط المستند الجديد. يتطلب ذلك إعدادات SMTP للشركة وعنوان بريد إلكتروني للعميل. |
يتكون الإعداد من جزأين. يستخدم الربط المفتاح السري لحساب Stripe. وتحدد الإعدادات المحاسبية لـ MyCloudBook طريقة تسجيل المدفوعات والرسوم. ولا يظهر زر الدفع في المستندات المشتركة إلا ما دامت الإعدادات نشطة.
كيفية فتح النافذة
- في الشريط العلوي، انقر على Settings. يقع الزر بين اسم الشركة واسم المستخدم.
- في القائمة، انقر على Stripe Integration. تُفتح نافذة Stripe Integration Settings.
تظهر قائمة Settings للمستخدمين الذين لديهم الدور Admin. ولا يرى المستخدمون الآخرون هذه القائمة.
- 1Settings. يفتح قائمة إعدادات الشركة.
- 2Stripe Integration.
نافذة Stripe Integration Settings
تحتوي النافذة على ثلاث مجموعات: Stripe Connection وAccounting وRedirect URLs. يعرض المثال شركة لم تُربط بعد، مع قيم توضيحية في الحقول المحاسبية.
- 1Status. Not connected أو Connected. ترى الشركة المربوطة أيضًا المفتاح السري بأحرف مخفية، وخطاف الويب.
- 2Connect.... يفتح نافذة الربط. ترى الشركة المربوطة Reconnect.... يحتوي السهم على Remove Connection....
- 3Payment Method. طريقة الدفع للمدفوعات المسجلة.
- 4Deposit Accounts. الحسابات التي تستقبل المدفوعات، بواقع حساب واحد لكل عملة.
- 5Stripe Supplier. المورّد الذي يمثل Stripe. فارغ في المثال.
- 6Fee Expense Account. حساب المصروفات الخاص برسوم Stripe.
- 7Success URL. الصفحة التي يراها العميل بعد الدفع.
- 8Cancel URL. الصفحة التي يراها العميل عند إلغاء الدفع.
- 9زر المساعدة. يفتح مساعدة النافذة.
- 10Active. يُفعّل المدفوعات. يتطلب الربط والحقول المحاسبية الأربعة.
- 11Save.
- 12Cancel.
ربط حساب Stripe
- في لوحة تحكم Stripe، افتح Developers، ثم API keys، وأنشئ مفتاحًا سريًا. انسخه فورًا، لأن Stripe لا يعرض المفتاح السري للوضع الحقيقي إلا مرة واحدة.
- في نافذة Stripe Integration Settings في MyCloudBook، انقر على Connect....
- الصق المفتاح في Secret Key. يبدأ المفتاح السري بـ sk_live_ أو sk_test_. لا تستخدم مفتاحًا قابلًا للنشر (pk_) أو مفتاحًا مقيّدًا (rk_).
- اترك Create the webhook automatically (recommended) محددًا، وانقر على Connect.
يتحقق MyCloudBook من المفتاح لدى Stripe، وينشئ خطاف الويب (webhook) في حساب Stripe، ويحفظ الربط. خطاف الويب هو العنوان الذي يُبلغ Stripe عبره MyCloudBook بكل دفعة مكتملة. بعد ذلك تعرض النافذة الحالة Connected، والمفتاح السري مع إخفاء معظم أحرفه، ووضع خطاف الويب Automatic. لا يظهر المفتاح الكامل مرة أخرى أبدًا. المفتاح الذي يبدأ بـ sk_test_ يربط وضع الاختبار في Stripe، وفيه تستخدم المدفوعات بطاقات الاختبار من Stripe ولا تنتقل أي أموال.
- 1Secret Key. مطلوب.
- 2Create the webhook automatically (recommended).
- 3زر المساعدة. يفتح خطوات الربط.
- 4Connect. يتحقق من المفتاح ويحفظ الربط.
- 5Cancel.
خطاف ويب يدوي
ألغِ تحديد Create the webhook automatically (recommended) لتدير خطاف الويب بنفسك، مثلًا باستخدام أداة سطر الأوامر من Stripe أثناء التطوير. عندئذٍ تعرض النافذة مجموعة Manual Webhook.
- انسخ Webhook Listener URL بزر النسخ.
- في لوحة تحكم Stripe، أنشئ نقطة نهاية لخطاف الويب بهذا العنوان وبالأحداث checkout.session.completed وpayment_intent.succeeded وpayment_intent.payment_failed.
- الصق سر التوقيع الخاص بنقطة النهاية (يبدأ بـ whsec_) في Webhook Secret، وانقر على Connect.
اترك Webhook Secret فارغًا للربط دون خطاف ويب. عندئذٍ يُكمل MyCloudBook المدفوعات عبر العملية التي تعمل في الخلفية. تحتوي قائمة زر النسخ على Generate New Listener Token، الذي ينشئ عنوان مستمع جديدًا. استخدم العنوان الجديد لنقطة النهاية في Stripe، ثم اربط مرة أخرى بسر التوقيع الخاص بها.
- 1Create the webhook automatically (recommended)، غير محدد.
- 2Manual Webhook. خطوات نقطة النهاية وأحداثها.
- 3Webhook Listener URL. عنوان نقطة النهاية في Stripe. هذا الحقل للقراءة فقط.
- 4زر النسخ. تحتوي قائمته على Generate New Listener Token.
- 5Webhook Secret. سر التوقيع الخاص بنقطة النهاية، أو فارغ.
بعد خمس محاولات ربط فاشلة خلال عشر دقائق، يطلب MyCloudBook من المستخدم الانتظار. وبعد عشرين محاولة ربط فاشلة خلال يوم واحد، تُحظر المحاولات الجديدة لمدة 24 ساعة.
الإعدادات المحاسبية والتفعيل
تحدد الحقول المحاسبية لـ MyCloudBook طريقة تسجيل كل دفعة ورسومها. أنشئ أولًا مورّدًا لـ Stripe (راجع الموردون)، مثلًا باسم Stripe.
| الحقل | مطلوب | الغرض والقواعد |
|---|---|---|
| Payment Method | عند التفعيل | طريقة الدفع لسندات القبض والإيصالات التي يسجلها MyCloudBook. راجع طرق الدفع. |
| Deposit Accounts | عند التفعيل | حسابات أصول تستقبل المدفوعات، بواقع حساب واحد لكل عملة. تذهب الدفعة بعملة معيّنة إلى حساب تلك العملة. |
| Stripe Supplier | عند التفعيل | مورّد مصروفات الرسوم. لا يظهر في القائمة إلا المورّدون النشطون. |
| Fee Expense Account | عند التفعيل | حساب من نوع المصروفات لرسوم Stripe، مثل 506 - Bank and Credit Card Fees. |
| Success URL | اختياري | الصفحة التي تظهر بعد نجاح الدفع. إذا تُرك الحقل فارغًا، تظهر صفحة حالة الدفع في MyCloudBook. يجب ألا يحتوي العنوان على الحرفين ? و&. |
| Cancel URL | اختياري | الصفحة التي تظهر بعد إلغاء الدفع. إذا تُرك الحقل فارغًا، تظهر صفحة الإلغاء في MyCloudBook. |
| Active | اختياري | يُفعّل المدفوعات. تحتاج الإعدادات النشطة إلى الربط وإلى الحقول المحاسبية الأربعة. ويمكن حفظ الإعدادات غير النشطة مع ترك بعض الحقول فارغة، وحتى قبل الربط. |
انقر على Save لحفظ الإعدادات المحاسبية وحالة Active. أما الربط نفسه فتحفظه نافذة الربط.
- 1الربط وإزالته.
- 2الإعدادات المحاسبية والتفعيل.
إزالة الربط
يحتوي سهم Connect... على Remove Connection.... يكون هذا الأمر مفعّلًا للشركة المربوطة.
- انقر على سهم زر الربط، ثم على Remove Connection....
- اقرأ السؤال وانقر على Yes.
يزيل MyCloudBook المفتاح السري وخطاف الويب، ويحذف نقطة نهاية خطاف الويب من حساب Stripe إذا كان MyCloudBook هو الذي أنشأها. تصبح الإعدادات غير نشطة، فيختفي زر الدفع من المستندات المشتركة. وتبقى الإعدادات المحاسبية والمدفوعات المسجلة والمستندات كما هي.
- 1Remove Connection.... معطّل ما دامت الشركة غير مربوطة.
الرسائل ومعانيها
أسئلة وأجوبة
كيف يمكن لعملائي دفع فاتورة عبر الإنترنت؟
اربط الشركة بـ Stripe من Settings ثم Stripe Integration، واملأ الحقول المحاسبية، وحدّد Active، ثم احفظ. بعد ذلك يعرض الرابط المشترك لفاتورة عليها مبلغ مستحق زر Pay with Card.
هل يسجل MyCloudBook الدفعة تلقائيًا؟
نعم. تحصل الفاتورة المدفوعة على سند قبض، ويحصل أمر البيع المدفوع على إيصال مبيعات. وتُسجَّل رسوم Stripe بوصفها مصروفًا لمورّد Stripe.
لماذا أحتاج إلى حساب إيداع لكل عملة؟
تذهب الدفعة إلى حساب الإيداع الخاص بعملتها. كل عملة يدفع بها العملاء تحتاج إلى حساب إيداع خاص بها.
هل يمكنني اختبار التكامل دون أموال حقيقية؟
نعم. اربط باستخدام مفتاح اختبار من Stripe يبدأ بـ sk_test_. عندئذٍ تستخدم المدفوعات بطاقات الاختبار من Stripe.
هل يظهر مفتاحي السري في MyCloudBook؟
لا. بعد الربط، تعرض النافذة المفتاح مع إخفاء معظم أحرفه.