رموز الأخطاء · طلبات الشراء
معرّف العملية مستخدم من قبل
الرمز
idempotency_conflictالحالة409
إن كان طلب شراءهذا الاستدعاء لم يشترِ شيئًا
هل تعيد إرساله كما هو؟لا — غيّر شيئًا أولًا
حزمة SDK لـ .NET
IdempotencyConflictExceptionالمعنى
استُخدم معرّف العملية هذا من قبل مع محتوى طلب شراء مختلف، أو تعذّر ربط تكرار إنشاء لشحن عداد أو شحن مباشر بتطبيقك بعد مرور دقيقة على قبوله. لم يُقدَّم هذا الاستدعاء. ولا يعني الرمز أن الطلب الأول فشل: فقد يكون قُبل وخُصم مبلغه. طلب الشراء المحفوظ بهذا المعرّف لم يُمَسّ — وإن كنت تستأنفه فربما اكتمل.
ما عليك فعله
- في شحن العداد أو الشحن المباشر، لا يثبت غياب القراءة الخاصة بتطبيقك غياب العملية. أعد المحتوى المحفوظ ومعرّف العملية نفسيهما بتوقيع جديد. يبقى ردّ التكرار
202أثناء تأخر ظهور العملية. إذا كشفت هذه المحاولة تكرار العملية بعد60ثانية أو أكثر منذ قبولها الأول، ثم لم تجدها قراءة واحدة خاصة بتطبيقك، تُغلق بالرمزidempotency_conflictوالحالة409. ولا يثبت هذا الرمز أن شيئًا لم يُخصم: فقد يكون الطلب الأول قُبل بالفعل، فاقرأ العملية بمعرّفها قبل أي محاولة جديدة. غياب القراءة أو انتهاء المهلة وحده لا يثبت هذا التعارض. - إن كنت تقصد الاستئناف: أرسل بالضبط المحتوى الذي حفظته مع هذا المعرّف — البطاقة والكمية والأسعار والمرجع نفسها.
- إن كانت عملية شراء جديدة فعلًا: استخدم معرّف عملية جديدًا.
- يجب أن يعني المعرّف الواحد دائمًا عملية شراء واحدة بمحتوى واحد.
أين قد تصادفه
- POSTتقديم طلب شراء
/v1/wallets/{walletId}/orders - POSTشحن عداد
/v1/wallets/{walletId}/meter-charges - GETقراءة عملية شحن
/v1/meter-charges/{operationId} - POSTطلب الشحن المباشر
/v1/wallets/{walletId}/direct-recharges - GETمتابعة عملية شحن مباشر مطلوبة
/v1/direct-recharges/{operationId}
مثال
محتوى الرفض. قيمة type هي عنوان الصفحة الإنجليزية؛ وهذه الصفحة نسختها العربية.
{
"type": "https://developers.anis.ly/errors/idempotency-conflict",
"title": "معرّف العملية مستخدم من قبل",
"status": 409,
"code": "idempotency_conflict",
"requestId": "01J9R2K8T4V6XQ0M3B7C5D9E1F"
}