BR-KSA-22: كل رسم على مستوى البند يحتاج نص سبب الرسم (BT-144)
تنطبق فقط عند وجود رسم على أحد البنود (BG-28): كل عنصر cac:InvoiceLine/cac:AllowanceCharge قيمة cbc:ChargeIndicator فيه true يجب أن يحتوي على cbc:AllowanceChargeReason (BT-144) غير فارغ.
كيف تحلها
أضف نص سبب لكل رسم على مستوى البند، مثل <cbc:AllowanceChargeReason>Installation</cbc:AllowanceChargeReason> داخل cac:AllowanceCharge الخاص بالبند والذي قيمة cbc:ChargeIndicator فيه true.
نص الهيئة الرسمي
[BR-KSA-22]- Each Invoice line charge (BG-28) shall have a Reason for invoice line charge (BT-144).
المصدر: ZATCA SDK 3.4.8 · ZATCA KSA rules
متى تفشل (الشرط اللي ينفّذه SDK الهيئة)
not( exists(cbc:AllowanceChargeReason)and normalize-space(cbc:AllowanceChargeReason )!='' )
قواعد قريبة
- BR-43 · يجب أن تحمل كل رسوم إضافية على مستوى البند مبلغًا (BT-141)
- BR-KSA-20 · كل رسم على مستوى البند يحتاج رمز سبب
- BR-KSA-19 · كل رسم على مستوى المستند يحتاج رمز سبب
- BR-KSA-21 · كل رسم على مستوى المستند يحتاج نص سبب الرسم (BT-104)
- BR-KSA-23 · تفصيل الضريبة المعفى (E) يحتاج رمز سبب الإعفاء (BT-121)
- BR-KSA-24 · تفصيل الضريبة غير الخاضع (O) يحتاج رمز السبب (BT-121)
افحص فاتورتك على قواعد الهيئة
الصق الـ XML وتشوف كل الأخطاء والتحذيرات، والفحص يصير في متصفحك وما ترسل الفاتورة لأي مكان.
افحص فاتورة أو جرّب ماثل