A VAT breakdown (BG-23) with VAT Category code (BT-118) 'Exempt from VAT' or 'Zero rated' or 'Not subject to VAT' shall have a VAT exemption (or exception) reason text (BT-120) with one of the values from paragraph 11.2.4 of XML implementation standards on Tax exemption (or exception) reason text - specific to Saudi Arabia.
ماذا يعني هذا؟
سبب الإعفاء في التفصيل الضريبي حقلان متجاوران: الرمز (BT-121) في cbc:TaxExemptionReasonCode للآلة، والنص (BT-120) في cbc:TaxExemptionReason لمن يقرأ المستند. وكلاهما داخل cac:TaxSubtotal/cac:TaxCategory للفئة Z أو E أو O. وهذه القاعدة تطلب النص متى وُجد الرمز.
والشرط المنفَّذ في حزمة الهيئة (SDK R3.4.8) أضيق من رسالته: إن وُجد عنصر الرمز فلا بد أن يوجد عنصر النص وأن يبقى فيه شيء بعد حذف المسافات. هذا كل ما يُفحص. أما «إحدى القيم الواردة في الفقرة 11.2.4» التي تذكرها الرسالة فكان لها شرط أشدّ يطابق النص بجدول الهيئة، وهو موجود في الملف نفسه لكنه معطَّل داخل تعليق. فاكتب صياغة الجدول على كل حال: الرسالة تطلبها، والشرط المعطَّل قد يعود، ونحن لا نرى ما يشغّله خادم الهيئة الحيّ.
ومتى لا تتكلم: التفصيل الذي لا رمز فيه أصلًا لا يستدعيها — لغياب الرمز أكواده، BR-KSA-69 وBR-KSA-23 وBR-KSA-24. والنص الذي بلا رمز لا يستدعيها أيضًا، لأن الشرط يبدأ من الرمز. والتفصيل الخاضع S خارجها كليًا.
ودرجته تحذير: الفاتورة تُقبل وتُسجَّل والتحذير معها. وللفئة O وضع خاص في الجدول: لا يحدد لها نصًا، بل يقول إن نصها حرّ يكتبه المكلّف بحسب الحالة، ويبقى رمزها VATEX-SA-OOS.
لماذا يحدث؟
مرتّبة من الأشيع إلى الأقل شيوعًا — الأرجح أن سببك في الأول أو الثاني.
- ربط يكتب الرمز وحده لأن النظام المصدر لا يخزّن غيره، ويُترك النص لمن «سيضيفه لاحقًا».
-
قالب يكتب عنصر النص دائمًا ويملؤه من جدول بحث أخفق — لأن الرمز خُزّن بتهجئة غير تهجئة المفتاح — فيخرج
<cbc:TaxExemptionReason/>فارغًا أو بمسافات. -
النص مكتوب في مكان آخر: في ملاحظة المستند
cbc:Note، أو على البند، أو مطبوعًا في ملف PDF وحده، والقاعدة لا تقرأ إلا كتلة الفئة في التفصيل. - مستند يجمع فئتين — صفرية ومعفاة — والنص يُجلب مرة واحدة للمستند ويُكتب على أول تفصيل وحده، فيبقى الثاني برمز بلا نص.
كيف تصلحه
3 خطوات، ثم أعد إرسال الفاتورة.
-
1
اكتب الرمز والنص معًا من جدول واحد
دالة واحدة تأخذ الرمز وتعيد الزوج، ولا مسار في الكود يكتب أحدهما دون الآخر:
<cbc:TaxExemptionReasonCode>VATEX-SA-29</cbc:TaxExemptionReasonCode><cbc:TaxExemptionReason>Financial services mentioned in Article 29 of the VAT Regulations</cbc:TaxExemptionReason>. والعنصران متتاليان داخلcac:TaxCategoryبعدcbc:Percentوقبلcac:TaxScheme. وقيمة الرمز نفسها لها قاعدتها: BR-KSA-CL-04. -
2
خذ الصياغة من جدول الهيئة
الجدول في الفقرة 11.2.4 من معايير XML على zatca.gov.sa، بعمود للإنجليزية وآخر للعربية. ومن صياغته الإنجليزية في الإصدار 1.2:
VATEX-SA-32←Export of goods، وVATEX-SA-33←Export of services، وVATEX-SA-35←Medicines and medical equipment، وVATEX-SA-36←Qualifying metals، وVATEX-SA-EDU←Private education to citizen، وVATEX-SA-HEA←Private healthcare to citizen، وVATEX-SA-30←Real estate transactions mentioned in Article 30 of the VAT Regulations. انقلها كما هي، ولا تختصرها. -
3
لا تكتب عنصرًا فارغًا
إن لم يجد جدولك نصًا للرمز فأوقف المستند قبل التوقيع وأصلح الجدول، بدل أن تكتب العنصر فارغًا: المستند الفارغ السبب يُوقَّع ويُبلَّغ به والثغرة فيه، والموقوف يُصلح في دقيقة ويخرج سليمًا. وطريقة قراءة الرد حين يجتمع أكثر من كود في فاتورتي مرفوضة من الهيئة.
هذا الكود لا يمنع القبول، فالفاتورة الحالية نظامية. صحّح البيانات لتختفي التحذيرات من الفواتير القادمة.
هل يمنعه ZATCA Tools؟
نعم. في ZATCA Tools لا يُكتب رمز إلا ومعه نصّه: الاثنان يخرجان من جدول واحد في TaxCategories يربط كل رمز بنص إنجليزي، والتفصيل الضريبي يأخذهما معًا في الخطوة نفسها في TaxBreakdown، ولا رمز في الجدول بلا نص — فلا يخرج رمز وحده ولا عنصر نص فارغ. والفئة O تحمل VATEX-SA-OOS ونصّه دائمًا. أما Z وE إن تُرك سببهما فلا رمز ولا نص، وذلك يأتي بتحذير آخر هو BR-KSA-69 أو BR-KSA-23، لا بهذا. ونصوص الجدول مطابقة حرفيًا لجدول 11.2.4 في مواصفة XML (الإصدار 1.2).
أكواد لها علاقة
أسئلة شائعة
هل يجب أن يطابق النص جدول الهيئة حرفًا بحرف؟ +
أكتب النص بالعربية أم بالإنجليزية؟ +
Medicines and medical equipment | الأدوية والمعدات الطبية.ما النص المطلوب لما هو خارج نطاق الضريبة؟ +
VATEX-SA-OOS ثابت، أما النص فالجدول يجعله حرًّا: يكتبه المكلّف بحسب الحالة. اكتب جملة قصيرة تقول لماذا التوريد خارج النطاق، ولا تتركه فارغًا.كتبت السبب في ملاحظة الفاتورة — ألا يكفي؟ +
cbc:TaxExemptionReason داخل كتلة الفئة في التفصيل الضريبي. الملاحظة والبند والملف المطبوع خارج ما تقرؤه.ما علاقته بـ BR-KSA-CL-04؟ +
ZATCA Tools يبني التوقيع والبصمة والعدّاد والترميز عنك، ويتحقق من البيانات قبل الإرسال. ابدأ مجانًا، وبدون بطاقة ائتمانية.
ابدأ مجانًا