BR-KSA-79: ضريبة تفصيل السطر = المبلغ الخاضع × النسبة ÷ 100

الشرح من فريق ماثل، مبني على نص قواعد الهيئة والشرط اللي ينفّذه SDK 3.4.8 · آخر تحديث

تحذير: الفاتورة تنقبل مع تحذيربشرط، شوف الشرحالحقول: KSA-32, KSA-31, KSA-34

في كل cac:TaxTotal/cac:TaxSubtotal على مستوى السطر (تفصيل الدفعة المقدمة)، يجب أن يساوي cbc:TaxAmount (KSA-32) حاصل cbc:TaxableAmount (KSA-31) × cac:TaxCategory/cbc:Percent (KSA-34) ÷ 100 مقرّبًا إلى خانتين عشريتين بفارق لا يتجاوز 0.01، وغياب cbc:Percent أو فراغه يُعد مخالفة. وفي الفئتين Z و E (و O دون نسبة) يجب أن يكون مبلغ الضريبة 0.00، ويُطبَّق الفحص على هذه الأسطر سواء وُجد cbc:PrepaidAmount أم لا.

كيف تحلها

احسب cbc:TaxAmount في TaxSubtotal السطر بضرب cbc:TaxableAmount في cbc:Percent وقسمة الناتج على 100 مع التقريب إلى خانتين (مثال: 1000 بنسبة 15.00 تعطي 150.00)، واستخدم 0.00 بنسبة صفر للفئتين Z و E.

نص الهيئة الرسمي

[BR-KSA-79]-The Prepayment VAT Category Tax Amount (KSA-32) must be Prepayment VAT category Taxable Amount( (KSA-31) x Prepayment VAT rate (KSA-34) /100).
المصدر: ZATCA SDK 3.4.8 · ZATCA KSA rules

متى تفشل (الشرط اللي ينفّذه SDK الهيئة)

(not(format-number(./cbc:TaxAmount,'#.00') = format-number(( round((((xs:decimal(./cbc:TaxableAmount) * (0)) div 100) * 100 + 0.01)) div 100), '#.00') )) or (not(format-number(./cbc:TaxAmount, '#.00') = format-number(round(xs:decimal(./cbc:TaxableAmount) * xs:decimal(./cac:TaxCategory/cbc:Percent) div 100, 2), '#.00')))

قواعد قريبة

افحص فاتورتك على قواعد الهيئة

الصق الـ XML وتشوف كل الأخطاء والتحذيرات، والفحص يصير في متصفحك وما ترسل الفاتورة لأي مكان.

افحص فاتورة أو جرّب ماثل