إنتقل إلى المحتوى الرئيسي

اربط الدفعة بالفاتورة

نظرة عامة

في الغالبية العظمى من الحالات يدفع المشترون إلى محفظتك المشفرة المبلغ المذكور في الفاتورة بالضبط. لكن المشتري يخطئ أحيانًا فيدفع مبلغًا غير المبلغ المحجوز. عندئذ لا تستطيع الخدمة ربط الدفعة بالفاتورة تلقائيًا ووضع علامة مدفوعة عليها. إذا حدث ذلك، تستطيع بوصفك التاجر ربط الدفعة بالفاتورة يدويًا، شرط أن تكون متأكدًا من الدفعة التي تنتظرها. تستطيع فعل ذلك في لوحة التحكم أو عبر API.

شروط الربط

لا يمر الربط إلا عندما تتحقق كل الشروط معًا:

  1. حالة الفاتورةunpaid أو expired. لا يمكن ربط الفواتير الملغاة والمدفوعة بالفعل. والإلغاء لا رجعة فيه.
  2. الدفعة غير مرتبطة بفاتورة أخرى بعد. لا تُربط الدفعة الواحدة إلا بفاتورة واحدة.
  3. وصلت الدفعة إلى محفظة مشارِكة في هذه الفاتورة.
  4. تقع الدفعة داخل نافذة الدفع المتاحة — 24 ساعة قبل إنشاء الفاتورة و24 ساعة بعده. الدفعة التي وصلت قبل إنشاء الفاتورة قابلة للربط؛ أما الواقعة خارج النافذة فلا.

إذا كانت الفاتورة تابعة لمشروع آخر والمفتاح مقيَّدًا بمشروع، تستجيب الطريقة بالرد Restricted project. وإذا اختل أي شرط آخر، يعود خطأ عام من دون ذكر السبب — تحقق من الشروط من جهتك.

ما يحدث بعد الربط

  • تنتقل الفاتورة إلى الحالة مدفوعة (Paid).
  • تخرج الإشعارات إلى البريد الإلكتروني وبوت Telegram وWebhook URL — تمامًا كما في الربط التلقائي.
  • مبلغ الفاتورة invoice.amountFiatUSD تستبدله الخدمة بالمبلغ المستلم فعليًا محوَّلًا إلى USD بسعر لحظة الربط. المبلغ الأصلي في invoice.amountFiat لا يتغير.
  • تعيد الخدمة حساب عمولة الخدمة بتعرفة المشروع على المبلغ الذي استلمته. في الدفع الزائد تكون أعلى مما حُسب عند إنشاء الفاتورة؛ وفي الدفع الناقص أقل.

الطلب

curl -X POST https://api.bitsby.app/invoices/bindPayment \
-H "Authorization: Token MSvL2ltaDZdWVjmZURURMVWhqSJLT2NURjhL2Fla1Z1T1IxQTltKs1T3Ay" \
-F "invoiceId=ade9550d-3dc7-4fd3-b94e-3b4c12aaaa0c" \
-F "paymentId=a4c9e2ee-9a03-43e5-a1a1-00caf679d16a"

معطيات الطلب

المعطىنوع البياناتالوصفمثالإلزامي؟
invoiceIdUUIDمعرّف الفاتورة بصيغة UUIDade9550d-3dc7-4fd3-b94e-3b4c12aaaa0cنعم
paymentIdUUIDمعرّف الدفعة بصيغة UUIDa4c9e2ee-9a03-43e5-a1a1-00caf679d16aنعم

مثال على الاستجابة

{
"result":"success",
"data":"Invoice binded to payment"
}