مدفوعات العملات الرقمية للتجارة الإلكترونية
كيف يمكن لمتجر إلكتروني إضافة العملات الرقمية كطريقة دفع: موضعها عند الدفع، وحالات الطلب، والمدفوعات الجزئية، والمبالغ المستردة، والمحاسبة بالدولار، وما هو جاهز اليوم.

بالنسبة لمتجر إلكتروني، العملات الرقمية طريقة دفع إضافية إلى جانب البطاقات، وليست بديلًا عنها. فهي تصل إلى عملاء لا تعمل بطاقاتهم في متجرك، وتزيل مطالبات الاسترداد على البطاقات، وتتيح لك استلام عملات مستقرة بالدولار. يغطي هذا الدليل موضعها عند الدفع، وكيفية ربط حالات الدفع بحالات الطلب، وكيفية التعامل مع الحالات المعقدة، وما هو جاهز وما ليس جاهزًا في Qvard اليوم.
ما الذي تضيفه العملات الرقمية للمتجر وما لا تضيفه
كن دقيقًا في توقعاتك، فالعملات الرقمية ليست مفتاح نمو.
- عملاء لا تصل إليهم مسارات البطاقات لديك. مشترون ترفض بطاقاتهم المصرفية في المتاجر الأجنبية، أو يقيمون في بلدان لا يخدمها معالج الدفع لديك، ما زال بإمكانهم الدفع بعملة مستقرة بالدولار.
- لا مطالبات استرداد على البطاقات. لا يستطيع المرسل عكس تحويل العملات الرقمية، فلا تمثّل مدفوعات البطاقات المتنازع عليها خطرًا لهذه الطلبات. ويصبح الاسترداد تحويلًا تقرر إرساله.
- مبيعات عابرة للحدود دون احتكاك البطاقات. صفحة الدفع نفسها تعمل لعميل في أي مكان.
- حصة متواضعة من الطلبات. تعامل معها كخيار إضافي في صفحة الدفع. في معظم المتاجر لن تحل محل البطاقات، ولا ينبغي أن تُعقّد مسار البطاقة.
إن كنت تبيع سلعًا رقمية فاقرأ مدفوعات العملات الرقمية لمتاجر السلع الرقمية؛ فقواعد التسليم هناك تنطبق على أي منتج فوري.
موضعها عند الدفع
أضف «الدفع بالعملات الرقمية» كطريقة دفع إضافية بجانب الطرق الحالية، لا كمتجر منفصل. ترتيب واضح:
- يملأ العميل السلة والعنوان كالمعتاد ويختار «الدفع بالعملات الرقمية».
- ينشئ خادمك الطلب بحالة «معلّق» ثم دفعة خاصة به.
- توجّه العميل إلى صفحة الدفع المستضافة حيث يختار أصلًا وشبكة ويدفع من محفظته.
- عند اكتمال الدفع يتلقى خادمك webhook وينقل الطلب إلى الحالة التالية.
اعرض السعر بعملة متجرك وحصّل المبلغ بالدولار الأمريكي: تُنشأ الدفعة بالدولار ويدفع العميل ما يعادله بالأصل الذي يختاره، بسعر صرف ثابت لمدة ساعة. إن لم يكن متجرك مسعّرًا بالدولار فحوّل إجمالي الطلب قبل إنشاء الدفعة.
أنشئ الدفعة واستخدم رقم طلبك
أنشئ الدفعة من الخادم الخلفي بطلب POST واحد إلى https://api.qvard.com/api/v1/payment. يحمل الطلب مفتاحك في الترويسة Authorization: Bearer وجسم JSON فيه رقم الطلب كـ id والمبلغ كـ price بالدولار الأمريكي، واختياريًا paymentSystemId لفتح الصفحة بأصل وشبكة محددين مسبقًا. الاستجابة 201 مع redirectUrl.
استخدم رقم طلبك أنت كـ id: يعود في الـ webhook، فهو المفتاح الذي يربط الدفعة بالطلب. وإذا كُرّر الطلب بالـ id نفسه لطريقة الدفع نفسها فستحصل على الدفعة الموجودة، فلا تؤدي نقرة مزدوجة أو إعادة إرسال الطلب إلى إنشاء دفعتين. الشرح الكامل مع الشيفرة في كيف تقبل مدفوعات العملات الرقمية على موقع ويب.
اربط حالات الدفع بحالات الطلب
للدفعة أربع حالات، ويحتاج طلبك إلى قاعدة واضحة لكل منها:
wait: أُنشئت الدفعة ولم يدفع العميل. الطلب بانتظار الدفع.partial: وصل أقل من المبلغ كاملًا. علّق الطلب، وأخبر العميل بمقدار ما ينقص ودعه يرسل الباقي، أو ألغِ وأعد المال.completed: وصل المبلغ كاملًا. هذه هي الحالة التي تُفعّل الـ webhook، والوحيدة التي ينبغي أن تُفرج عن البضاعة.rejected: رُفضت الدفعة. اعرض طريقة دفع أخرى.
يعرض المثال هذا الربط كجدول صغير. قاعدتان تبقيانه آمنًا: لا تُرجع طلبًا مدفوعًا إلى حالة سابقة أبدًا، ولا تنفّذ الطلب عند أي حالة غير completed. ويجب أن يكون معالج الـ webhook idempotent (آمنًا عند تكرار التنفيذ) وأن يرد بـ HTTP 200 بالضبط؛ انظر كيف تؤمّن webhook مدفوعات العملات الرقمية.
// Qvard payment status -> your order state. Only "completed" releases goods.
const ORDER_STATE = {
wait: 'pending_payment', // created, the customer has not paid yet
partial: 'on_hold', // less than required arrived: ask for the rest or refund
completed: 'paid', // full amount arrived: start fulfilment
rejected: 'payment_failed' // rejected: offer another way to pay
};
function nextState(current, qvardStatus) {
const target = ORDER_STATE[qvardStatus];
if (!target) return current; // unknown status: change nothing
if (current === 'paid') return current; // never move a paid order backwards
return target;
}المدفوعات الجزئية والطلبات المنتهية والمبالغ المستردة
هذه هي الحالات التي تستهلك من وقت المتاجر أكثر من غيرها:
- عملاء يدفعون أقل. غالبًا ما تُخصم رسوم السحب من منصة التداول من المبلغ فتصل الدفعة ناقصة. قرر هل تطلب الفرق أم تعيد المال، واعرض ذلك في صفحة الطلب.
- عملاء يدفعون متأخرين. سعر الصرف ثابت لمدة ساعة. الدفعة التي تصل بعد وقت طويل من التخلي عن الطلب تعامل معها كحالة دعم بدلًا من أتمتتها.
- المخزون. إن كنت تحجز مخزونًا للطلبات غير المدفوعة فحرّره عند انتهاء الطلب.
- المبالغ المستردة. أنت أيضًا لا تستطيع استرجاع دفعة العملات الرقمية؛ والاسترداد تحويل ترسله إلى محفظة العميل. ضع القاعدة في شروطك واطلب عنوان الاسترداد من العميل بدل أخذه من الدفعة.
- العودة إلى الموقع. لا توجد بعد روابط عودة بعد الدفع، لذا يعود العميل إلى موقعك من تلقاء نفسه. أعطه صفحة طلب تعرض الحالة الفعلية بدل صفحة شكر تفترض النجاح.
الأسعار والرسوم والمحاسبة
أبقِ جانب المال بسيطًا.
- السعر بالدولار والتحصيل بالدولار. سجّل قيمة الطلب بالدولار وقت الطلب واحتفظ بـ
idالدفعة بجانبه للمطابقة. - التكلفة. لا توجد رسوم اشتراك. العمولة فردية لمشروعك، وبحسب صفحة الأسعار تبدأ من 1% ويمكن أن تنخفض إلى 0.1%.
- سحب الأموال. تبقى الأموال في رصيدك في Qvard وتسحبها إلى محفظتك الخاصة؛ السحب لا يكلّف إلا رسوم الشبكة. السحب إلى حساب مصرفي بعملة فيات غير متاح، لذا إن احتجت إلى نقد فخطّط لمخرج عبر خدمة تستخدمها أصلًا.
- الضرائب ومسك الدفاتر. تختلف المعالجة الضريبية والمحاسبية لمقبوضات العملات الرقمية بحسب بلدك؛ تأكد من ذلك مع محاسبك قبل الإطلاق.
ما هو جاهز اليوم
يعمل Qvard عبر واجهة API: متجرك ينشئ الدفعة ويستقبل الـ webhook. لا توجد بعد إضافة جاهزة لمنصات المتاجر، وروابط الدفع و sandbox منفصل قيد التطوير، ويعود العملاء إلى موقعك من تلقاء أنفسهم. إن كانت منصتك ووردبريس فراجع مدفوعات العملات الرقمية على ووردبريس لشيفرة عاملة. وللأصول والشبكات المقبولة انظر العملات المدعومة؛ ولصيغ الطلبات وثائق المطورين؛ ولترى ما سيراه عميلك افتح فاتورة تجريبية.
FAQ
هل ستحل العملات الرقمية محل البطاقات في متجري؟
لا. تعمل بأفضل صورة كخيار إضافي للعملاء الذين لا تعمل بطاقاتهم في متجرك أو يفضّلون العملات المستقرة. اترك مسار البطاقة كما هو.
متى أضع علامة «مدفوع» على الطلب؟
فقط عندما يرسل Qvard الـ webhook بحالة completed. عودة العميل إلى موقعك ليست دليل دفع، والحالة partial تعني أن ما وصل أقل من المطلوب.
كيف تعمل المبالغ المستردة مع العملات الرقمية؟
لا يستطيع المرسل عكس دفعة العملات الرقمية، لذا فالاسترداد تحويل ترسله إلى محفظة العميل. حدّد القاعدة في شروطك واطلب من العميل عنوان الاسترداد.
هل توجد إضافة لمنصة متجري؟
ليس بعد. اليوم يتم التكامل عبر API: طلب واحد لإنشاء دفعة وwebhook واحد لاستقبال النتيجة.

