زاتيفاي

تحميل SDK

مجموعة أدوات الامتثال والتمكين (SDK): أداة قابلة للتنزيل تعمل دون اتصال بالإنترنت يمكن استخدامها للتحقق من صحة ملفات الفواتير الإلكترونية بصيغة XML أو ملاحظات الدائن أو المدين وفقًا للمتطلبات والمعايير والإرشادات التي نشرتها ZATCA. كما تتيح التحقق من رموز الاستجابة السريعة (QR) وفقًا للبنية المحددة. يمكن للمطورين دمج وحدات حلول الفوترة الإلكترونية (EGS) الخاصة بهم مع SDK محليًا (دون اتصال بالإنترنت) أو اختبارها باستخدام واجهة سطر الأوامر (CLI). SDK هو ملف JAR يعتمد على Java ويمكن تشغيله على جميع الأنظمة الرئيسية بما في ذلك Windows وLinux وMac. سيعمل SDK (JAR) على إصدارات JDK >=11 وأقل من 15، للامتثال للوائح الأمان secp256k1 الخاصة بـ ZATCA.

دليل مستخدم مجموعة أدوات الامتثال والتمكين (SDK) يقدم إرشادات بشأن الجوانب الوظيفية والتقنية لـ SDK مثل ما هو SDK، كيفية استخدام SDK، وكيفية تثبيته.

API Integration Flow Diagram

مواصفات الفواتير الإلكترونية

  • مواصفات ومعايير الفوترة الإلكترونية جنبًا إلى جنب مع اللائحة التنفيذية للفوترة الإلكترونية والضوابط والمتطلبات والقواعد الإجرائية لتنفيذ أحكام لائحة الفوترة الإلكترونية (القرار) توضح المتطلبات والمعايير اللازمة لضمان الامتثال الكامل لمتطلبات 4 ديسمبر 2021 (مرحلة التوليد) و1 يناير 2023 (مرحلة التكامل).
  • يتم تمكين الامتثال للمواصفات الفنية من خلال مجموعة أدوات الامتثال والتمكين (SDK) بالإضافة إلى بيئة اختبار تكامل API، التي يمكن استخدامها للتحقق مما إذا كان حل إنشاء الفواتير الإلكترونية (EGS) ينفذ عناصر المواصفة بشكل صحيح.

  • يرجى ملاحظة أن الامتثال لمجموعة أدوات الامتثال والتمكين (SDK) وبيئة اختبار تكامل API لا يشير إلى الامتثال بنسبة 100% للقرار وملاحقه، وأن الوثائق القانونية والمواصفات هي الأساس لتحديد الامتثال.

تنزيل معايير تنفيذ XML

تنزيل معايير تنفيذ الأمان

تنزيل القاموس البياني

تاريخ الإصدار

إصدار محاكاة SDK 3.3.9
  • تم تقديم قاعدة جديدة (BR-KSA-97) لضمان أنه إذا كان رمز عملة المستند (BT-5) موجودًا ومختلفًا عن "SAR"، يجب ألا تكون القيمة في "إجمالي مبلغ ضريبة القيمة المضافة للفاتورة" (BT-110) مساوية للقيمة في "إجمالي مبلغ ضريبة القيمة المضافة بعملة المحاسبة" (BT-111).
  • تم فصل SDK إلى حزمتين: Java SDK و .NET SDK.
إصدار SDK 3.3.9
  • تم تقديم قاعدة جديدة (BR-KSA-97) لضمان أنه إذا كان رمز عملة المستند (BT-5) موجودًا ومختلفًا عن "SAR"، يجب ألا تكون القيمة في "إجمالي مبلغ ضريبة القيمة المضافة للفاتورة" (BT-110) مساوية للقيمة في "إجمالي مبلغ ضريبة القيمة المضافة بعملة المحاسبة" (BT-111).
  • تم فصل SDK إلى حزمتين: Java SDK و .NET SDK.
إصدار محاكاة SDK 3.3.8

تم إصلاح الأخطاء في قواعد التحقق BR-CO-17 و BR-S-09 المتعلقة بمشكلة التقريب في مبلغ ضريبة فئة ضريبة القيمة المضافة (BT-117). 

إصدار SDK 3.3.8

تم إصلاح الأخطاء في قواعد التحقق BR-CO-17 و BR-S-09 المتعلقة بمشكلة التقريب في مبلغ ضريبة فئة ضريبة القيمة المضافة (BT-117).

إصدار محاكاة SDK 3.3.7

تم تحديث ملفات DLL لإطار العمل .NET 4.8 لتتوافق مع أحدث إصدار.

إصدار SDK 4.0.0 تجريبي (Java 21)

التعليق: بعد إصدارين إضافيين، سنستخدم هذا الإصدار حصريًا.

إصدار SDK 3.3.6
  • تم تعديل صياغة قواعد التحقق (BR-KSA-26)، (BR-KSA-27)، (BR-KSA-31)، (BR-KSA-49)، (BR-KSA-60)، (BR-KSA-71)، (BR-KSA-72)، (BR-KSA-EN16931-07)، (BR-KSA-EN16931-02)، (BR-KSA-EN16931-08)، (BR-KSA-F-04)، و (BR-KSA-F-05) لتوفير مزيد من الوضوح.
  • تم إصلاح خطأ في قواعد التحقق (BR-S-08)، (BR-Z-08)، (BR-O-08) و (BR-E-08) لحساب مبلغ ضريبة الفئة الخاضعة لضريبة القيمة المضافة (BT-116) لفئات ضريبة القيمة المضافة المختلفة.
  • تم إصلاح خطأ في قواعد التحقق (BR-S-01)، (BR-Z-01)، (BR-O-01)، و (BR-E-01) لضمان عدم تقديم تحذيرات في حالة تقديم تفصيل ضريبة القيمة المضافة (BG-23) مع وجود رمز فئة ضريبة القيمة المضافة (BT-118) يساوي الرمز المقدم في رمز فئة ضريبة القيمة المضافة (BT-151 أو BT-95 أو BT-102).
إصدار محاكاة SDK 3.3.6
  • تم تعديل صياغة قواعد التحقق (BR-KSA-26)، (BR-KSA-27)، (BR-KSA-31)، (BR-KSA-49)، (BR-KSA-60)، (BR-KSA-71)، (BR-KSA-72)، (BR-KSA-EN16931-07)، (BR-KSA-EN16931-02)، (BR-KSA-EN16931-08)، (BR-KSA-F-04)، و (BR-KSA-F-05) لتوفير مزيد من الوضوح.
  • تم إصلاح خطأ في قواعد التحقق (BR-S-08)، (BR-Z-08)، (BR-O-08) و (BR-E-08) لحساب مبلغ ضريبة الفئة الخاضعة لضريبة القيمة المضافة (BT-116) لفئات ضريبة القيمة المضافة المختلفة.
  • تم إصلاح خطأ في قواعد التحقق (BR-S-01)، (BR-Z-01)، (BR-O-01)، و (BR-E-01) لضمان عدم تقديم تحذيرات في حالة تقديم تفصيل ضريبة القيمة المضافة (BG-23) مع وجود رمز فئة ضريبة القيمة المضافة (BT-118) يساوي الرمز المقدم في رمز فئة ضريبة القيمة المضافة (BT-151 أو BT-95 أو BT-102).
إصدار SDK 3.3.5
  • تم إصلاح قاعدة التحقق (BR-53) بحيث لا يتم عرضها كتحذير عندما يكون رمز عملة الضريبة (BT-6) مساويًا لـ "USD".
  • تم إصلاح قواعد التحقق (BR-CO-17) و (BR-S-09) المتعلقة بمشكلة التقريب في مبلغ ضريبة فئة ضريبة القيمة المضافة (BT-117).
  • تم إضافة قواعد تحقق جديدة (BR-KSA-93)، (BR-KSA-94)، (BR-KSA-95)، و (BR-KSA-96) لتقديم رمز سبب الإعفاء/الاستثناء الضريبي (KSA-41) ونص سبب الإعفاء/الاستثناء الضريبي (KSA-42) للإشارات المرجعية للفواتير المدفوعة مسبقًا.
  • تم إضافة قواعد تحقق جديدة (BR-KSA-91) و (BR-KSA-92) لتقديم الشكل القانوني للشركة (KSA-40) وتاريخ نقطة الضريبة (BT-7) كمؤشر للإمدادات بين الشركات والحكومة (B2G) وتاريخ أمر الدفع للإمدادات. 
  • تم تحديث رسالة التحقق بشأن توليد رمز الاستجابة السريعة (QR) في حالة وجود وقت إصدار الفاتورة غير صالح أو غائب (KSA-25).
  • تم تحديث SDK لدعم .Net Core 3.1 و .Net Core 8.0 لتتناسب مع الإصدار الأحدث.
  • تم ترقية .Net Framework من الإصدار 4 إلى 4.8 لتتناسب مع الإصدار الأحدث.
  • تم إضافة أمر -version للحصول على إصدار .NET SDK.
  • تم تعديل التحقق من توليد (CSR) في تطبيق .NET لقبول البيانات باللغتين العربية والإنجليزية، ولتقديم خطأ في حال وجود أي حقل غير صحيح.
إصدار محاكاة SDK 3.3.5
  • تم إصلاح قاعدة التحقق (BR-53) بحيث لا يتم عرضها كتحذير عندما يكون رمز عملة الضريبة (BT-6) مساويًا لـ "USD".
  • تم إصلاح قواعد التحقق (BR-CO-17) و (BR-S-09) المتعلقة بمشكلة التقريب في مبلغ ضريبة فئة ضريبة القيمة المضافة (BT-117).
  • تم إضافة قواعد تحقق جديدة (BR-KSA-93)، (BR-KSA-94)، (BR-KSA-95)، و (BR-KSA-96) لتقديم رمز سبب الإعفاء/الاستثناء الضريبي (KSA-41) ونص سبب الإعفاء/الاستثناء الضريبي (KSA-42) للإشارات المرجعية للفواتير المدفوعة مسبقًا.
  • تم إضافة قواعد تحقق جديدة (BR-KSA-91) و (BR-KSA-92) لتقديم الشكل القانوني للشركة (KSA-40) وتاريخ نقطة الضريبة (BT-7) كمؤشر للإمدادات بين الشركات والحكومة (B2G) وتاريخ أمر الدفع للإمدادات. 
  • تم تحديث رسالة التحقق بشأن توليد رمز الاستجابة السريعة (QR) في حالة وجود وقت إصدار الفاتورة غير صالح أو غائب (KSA-25).
  • تم تحديث SDK لدعم .Net Core 3.1 و .Net Core 8.0 لتتناسب مع الإصدار الأحدث.
  • تم ترقية .Net Framework من الإصدار 4 إلى 4.8 لتتناسب مع الإصدار الأحدث.
  • تم إضافة أمر -version للحصول على إصدار .NET SDK.
  • تم تعديل التحقق من توليد (CSR) في تطبيق .NET لقبول البيانات باللغتين العربية والإنجليزية، ولتقديم خطأ في حال وجود أي حقل غير صحيح.
إصدار SDK 3.3.4
  • تم تعديل قاعدة التحقق (BR-KSA-80) لجمع مبلغ الأساس الخاضع لضريبة القيمة المضافة للمدفوعات المسبقة (KSA-31) ومبلغ ضريبة فئة ضريبة القيمة المضافة للمدفوعات المسبقة (KSA-32) لأسطر فواتير المدفوعات المسبقة، بغض النظر عما إذا تم تقديم مبلغ الدفع المسبق (BT-113) أم لا. 
  • تم تعديل قاعدة التحقق (BR-KSA-79) الخاصة بمبلغ ضريبة فئة ضريبة القيمة المضافة للمدفوعات المسبقة (KSA-32) لضمان تطبيق القاعدة حتى في حالة عدم تقديم مبلغ الدفع المسبق (BT-113).
  • تم تعديل قاعدة التحقق (BR-KSA-CL-14) لزيادة طول رمز الاستجابة السريعة للفاتورة (KSA-14) ليصبح حتى 1000 حرف بدلًا من 700 حرف. 
  • تم إصلاح الأخطاء في قواعد التحقق (BR-KSA-EN16931-09)، (BR-KSA-EN16931-08)، و (BR-53).
  • تم إصلاح الخطأ في قاعدة التحقق (BR-S-01) ليتم إضافتها إلى مجموعة التحقق المطبقة على رمز فئة ضريبة القيمة المضافة للعناصر (BT-151، BT-95 أو BT-102).
  • تم تعديل قاعدة التحقق (BR-KSA-CL-04) لإضافة رمز جديد، “VATEX-SA-DUTYFREE”، لرمز سبب استثناء ضريبة القيمة المضافة (BT-121) وإضافة نص مرفق لسبب استثناء ضريبة القيمة المضافة، “توريد مؤهل للسلع في منطقة المعفاة من الضرائب”، لنص سبب استثناء ضريبة القيمة المضافة (BT-120).
  •  تم تحديث SDK لدعم .Net Core 3.1 و .Net Core 8.0 لتتناسب مع الإصدار الأحدث.
  • تم ترقية .Net Framework من الإصدار 4 إلى 4.8 لتتناسب مع الإصدار الأحدث.
  • تم إضافة أمر -version للحصول على إصدار .NET SDK.
  • تم تعديل التحقق من توليد (CSR) في تطبيق .NET لقبول البيانات باللغتين العربية والإنجليزية، ولتقديم خطأ في حال وجود أي حقل غير صحيح.
إصدار محاكاة SDK 3.3.4
  • تم تعديل قاعدة التحقق (BR-KSA-80) لجمع مبلغ الأساس الخاضع لضريبة القيمة المضافة للمدفوعات المسبقة (KSA-31) ومبلغ ضريبة فئة ضريبة القيمة المضافة للمدفوعات المسبقة (KSA-32) لأسطر فواتير المدفوعات المسبقة، بغض النظر عما إذا تم تقديم مبلغ الدفع المسبق (BT-113) أم لا. 
  • تم تعديل قاعدة التحقق (BR-KSA-79) الخاصة بمبلغ ضريبة فئة ضريبة القيمة المضافة للمدفوعات المسبقة (KSA-32) لضمان تطبيق القاعدة حتى في حالة عدم تقديم مبلغ الدفع المسبق (BT-113).
  • تم تعديل قاعدة التحقق (BR-KSA-CL-14) لزيادة طول رمز الاستجابة السريعة للفاتورة (KSA-14) ليصبح حتى 1000 حرف بدلًا من 700 حرف. 
  • تم إصلاح الأخطاء في قواعد التحقق (BR-KSA-EN16931-09)، (BR-KSA-EN16931-08)، و (BR-53).
  • تم إصلاح الخطأ في قاعدة التحقق (BR-S-01) ليتم إضافتها إلى مجموعة التحقق المطبقة على رمز فئة ضريبة القيمة المضافة للعناصر (BT-151، BT-95 أو BT-102).
  • تم تعديل قاعدة التحقق (BR-KSA-CL-04) لإضافة رمز جديد، “VATEX-SA-DUTYFREE”، لرمز سبب استثناء ضريبة القيمة المضافة (BT-121) وإضافة نص مرفق لسبب استثناء ضريبة القيمة المضافة، “توريد مؤهل للسلع في منطقة المعفاة من الضرائب”، لنص سبب استثناء ضريبة القيمة المضافة (BT-120).
  •  تم تحديث SDK لدعم .Net Core 3.1 و .Net Core 8.0 لتتناسب مع الإصدار الأحدث.
  • تم ترقية .Net Framework من الإصدار 4 إلى 4.8 لتتناسب مع الإصدار الأحدث.
  • تم إضافة أمر -version للحصول على إصدار .NET SDK.
  • تم تعديل التحقق من توليد (CSR) في تطبيق .NET لقبول البيانات باللغتين العربية والإنجليزية، ولتقديم خطأ في حال وجود أي حقل غير صحيح.
إصدار SDK 3.3.3
  • تم تعديل قاعدة التحقق BR-KSA-86 لقبول عناوين بريد إلكتروني متعددة للمشتري باستخدام الفاصلة المنقوطة ‘;’ كمحدد، والسماح باستخدام الشرطتين ‘-’ في صيغة البريد الإلكتروني.
  • تم تحسين مخرجات خطأ التحقق من XSD لعرض المسار أو الوسم (tag) المفقود أو غير الصحيح الذي تسبب في الخطأ.
  • تمت إضافة حقول جديدة لتعبئة سعر الصرف (عملة المصدر، العملة المستهدفة، وسعر الصرف) في حال تم إصدار الفاتورة بعملة أجنبية.
    Note: يجب أن يكون موضع وسوم UBL الخاصة بسعر الصرف مباشرة بعد الوسم UBL: cac:AllowanceCharge على مستوى المستند.
إصدار محاكاة SDK 3.3.3
  • تم تعديل قاعدة التحقق BR-KSA-86 لقبول عناوين بريد إلكتروني متعددة للمشتري باستخدام الفاصلة المنقوطة ‘;’ كمحدد، والسماح باستخدام الشرطتين ‘-’ في صيغة البريد الإلكتروني.
  • تم تحسين مخرجات خطأ التحقق من XSD لعرض المسار أو الوسم (tag) المفقود أو غير الصحيح الذي تسبب في الخطأ.
  • تمت إضافة حقول جديدة لتعبئة سعر الصرف (عملة المصدر، العملة المستهدفة، وسعر الصرف) في حال تم إصدار الفاتورة بعملة أجنبية.
    Note: يجب أن يكون موضع وسوم UBL الخاصة بسعر الصرف مباشرة بعد الوسم UBL: cac:AllowanceCharge على مستوى المستند.
إصدار SDK 3.3.2

تعزيزات أمنية.

إصدار محاكاة SDK 3.3.2

تعزيزات أمنية.

إصدار SDK 3.3.1
  • تم توحيد PCSID كشهادة افتراضية عبر مكونات الالتزام والاختبار لتحقيق التوحيد القياسي.
    Note: إذا كنت تعتمد على الشهادة الافتراضية لـ SDK لتوقيع الفواتير والتحقق منها وفقًا للأنشطة المتعلقة بالامتثال والاختبار، تأكد من إعادة توقيع الفواتير التي تم توقيعها مسبقًا لتجنب حدوث أخطاء في التوقيع عند استخدام أحدث إصدار من SDK.
  • تم إصلاح الخطأ في قاعدة التحقق BR-S-08 لعدم عرض تحذير في الحالات الصحيحة.
  • تمت تحسينات على قاعدة التحقق BR-S-08 للسماح بتقديم معدلات ضريبة قيمة مضافة متعددة في الفواتير تحت فئة ضريبة القيمة المضافة "المعدل القياسي" دون عرض أي تحذير.
  • تمت تحسينات على قاعدة التحقق BR-KS-F-01 لضمان أن تكون جميع تواريخ الفواتير بصيغة التقويم الميلادي (Gregorian).
  • تم إضافة 14 عينة جديدة من الفواتير بصيغة XML و PDF/A3 في SDK للاستخدام كمرجع.
  • تم إصلاح الخطأ للسماح بتوقيع مستند الفاتورة باستخدام PCSID ومشاركته مع PCSID آخر طالما أن كلا الـ PCSIDs يحتويان على نفس رقم التسجيل الضريبي.
  • تم تحديث رسالة الخطأ المتعلقة بطلب توقيع الشهادة (CSR) لحقل الرقم التسلسلي فيما يتعلق بالحروف الخاصة.
  • تم إصلاح الخطأ في خطوة توليد رمز الاستجابة السريعة (QR Code) في SDK لتوليد الطابع الزمني في رمز الاستجابة السريعة بتوقيت المملكة العربية السعودية (KSA) عندما يتم تقديم وقت إصدار الفاتورة (KSA-25) في صيغة توقيت زولو (Zulu time) في XML.
إصدار محاكاة SDK 3.3.1
  • تم توحيد PCSID كشهادة افتراضية عبر مكونات الالتزام والاختبار لتحقيق التوحيد القياسي.
    Note: إذا كنت تعتمد على الشهادة الافتراضية لـ SDK لتوقيع الفواتير والتحقق منها وفقًا للأنشطة المتعلقة بالامتثال والاختبار، تأكد من إعادة توقيع الفواتير التي تم توقيعها مسبقًا لتجنب حدوث أخطاء في التوقيع عند استخدام أحدث إصدار من SDK.
  • تم إصلاح الخطأ في قاعدة التحقق BR-S-08 لعدم عرض تحذير في الحالات الصحيحة.
  • تمت تحسينات على قاعدة التحقق BR-S-08 للسماح بتقديم معدلات ضريبة قيمة مضافة متعددة في الفواتير تحت فئة ضريبة القيمة المضافة "المعدل القياسي" دون عرض أي تحذير.
  • تمت تحسينات على قاعدة التحقق BR-KS-F-01 لضمان أن تكون جميع تواريخ الفواتير بصيغة التقويم الميلادي (Gregorian).
  • تم إضافة 14 عينة جديدة من الفواتير بصيغة XML و PDF/A3 في SDK للاستخدام كمرجع.
  • تم إصلاح الخطأ للسماح بتوقيع مستند الفاتورة باستخدام PCSID ومشاركته مع PCSID آخر طالما أن كلا الـ PCSIDs يحتويان على نفس رقم التسجيل الضريبي.
  • تم تحديث رسالة الخطأ المتعلقة بطلب توقيع الشهادة (CSR) لحقل الرقم التسلسلي فيما يتعلق بالحروف الخاصة.
  • تم إصلاح الخطأ في خطوة توليد رمز الاستجابة السريعة (QR Code) في SDK لتوليد الطابع الزمني في رمز الاستجابة السريعة بتوقيت المملكة العربية السعودية (KSA) عندما يتم تقديم وقت إصدار الفاتورة (KSA-25) في صيغة توقيت زولو (Zulu time) في XML.
إصدار SDK 3.3.0
  • تم إصلاح الخطأ في قاعدة التحقق BR-KSA-29 المتعلقة بالختم التشفيري (KSA-15) لضمان احتوائه على القيمة “urn:oasis:names:specification:ubl:signature:Invoice” لوسم "referenced signature ID".
  • تم إصلاح الخطأ في قاعدة التحقق BR-KSA-27 المتعلقة بـ "رمز الاستجابة السريعة (KSA-14)" لضمان الامتثال للمتطلبات بأن يكون بصيغة base64Binary.
  • تمت تحسينات على رمز الاستجابة السريعة (QR Code) لقراءة قيمة مبلغ الفاتورة (الوسم 4) من "المبلغ المستحق للدفع" (BT-115). وذلك لضمان عرض رمز الاستجابة السريعة لمبلغ الفاتورة مع الأخذ في الاعتبار أي تعديلات على "مبلغ الدفع المسبق" (BT-113) أو "مبلغ التقريب" (BT-114).
    ملاحظة: من الآن فصاعدًا، ستعرض تطبيقات زاتكا للهواتف المحمولة فقط "مبلغ الفاتورة" (الوسم 4) ولن تعرض "مبلغ ضريبة القيمة المضافة" (الوسم 5) لتجنب أي لبس.
  • تم إصلاح الخطأ في قاعدة التحقق BR-KSA-F-01 للسماح بالتواريخ فقط بصيغة التقويم الميلادي (التواريخ الهجرية غير مسموح بها وفقًا للمواصفات). كما تم إصلاح خطأ آخر في هذه القاعدة لإدراج "تاريخ نهاية التوريد (KSA-24)" ضمن مجموعة التحقق الخاصة بتنسيق التاريخ.
  • تم إصلاح الخطأ في قاعدة التحقق BR-KSA-63 المتعلقة بحقول عنوان المشتري لتتطلب "رقم المبنى (KSA-18)" إذا كان "رمز دولة المشتري (BT-55)" هو "SA".
  • تم إصلاح الخطأ لعدم عرض أي تحذيرات تتعلق بالحدود القصوى للأحرف الخاصة بـ "اسم المشتري (BT-44)" و "شارع المشتري (BT-50)" للفواتير المبسطة (B2C).
  • تم إصلاح الخطأ في قاعدة التحقق BR-KSA-71 لتتطلب "اسم المشتري (BT-44)" في الفواتير المبسطة الملخصة.
إصدار محاكاة SDK 3.3.0
  • تم إصلاح الخطأ في قاعدة التحقق BR-KSA-29 المتعلقة بالختم التشفيري (KSA-15) لضمان احتوائه على القيمة “urn:oasis:names:specification:ubl:signature:Invoice” لوسم "referenced signature ID".
  • تم إصلاح الخطأ في قاعدة التحقق BR-KSA-27 المتعلقة بـ "رمز الاستجابة السريعة (KSA-14)" لضمان الامتثال للمتطلبات بأن يكون بصيغة base64Binary.
  • تمت تحسينات على رمز الاستجابة السريعة (QR Code) لقراءة قيمة مبلغ الفاتورة (الوسم 4) من "المبلغ المستحق للدفع" (BT-115). وذلك لضمان عرض رمز الاستجابة السريعة لمبلغ الفاتورة مع الأخذ في الاعتبار أي تعديلات على "مبلغ الدفع المسبق" (BT-113) أو "مبلغ التقريب" (BT-114).
    ملاحظة: من الآن فصاعدًا، ستعرض تطبيقات زاتكا للهواتف المحمولة فقط "مبلغ الفاتورة" (الوسم 4) ولن تعرض "مبلغ ضريبة القيمة المضافة" (الوسم 5) لتجنب أي لبس.
  • تم إصلاح الخطأ في قاعدة التحقق BR-KSA-F-01 للسماح بالتواريخ فقط بصيغة التقويم الميلادي (التواريخ الهجرية غير مسموح بها وفقًا للمواصفات). كما تم إصلاح خطأ آخر في هذه القاعدة لإدراج "تاريخ نهاية التوريد (KSA-24)" ضمن مجموعة التحقق الخاصة بتنسيق التاريخ.
  • تم إصلاح الخطأ في قاعدة التحقق BR-KSA-63 المتعلقة بحقول عنوان المشتري لتتطلب "رقم المبنى (KSA-18)" إذا كان "رمز دولة المشتري (BT-55)" هو "SA".
  • تم إصلاح الخطأ لعدم عرض أي تحذيرات تتعلق بالحدود القصوى للأحرف الخاصة بـ "اسم المشتري (BT-44)" و "شارع المشتري (BT-50)" للفواتير المبسطة (B2C).
  • تم إصلاح الخطأ في قاعدة التحقق BR-KSA-71 لتتطلب "اسم المشتري (BT-44)" في الفواتير المبسطة الملخصة.
إصدار SDK 3.2.9
  • تم إضافة حقول اختيارية جديدة لمعلومات الاتصال بالمشتري (اسم الاتصال، رقم الهاتف، البريد الإلكتروني، والملاحظات).
  • تم مواءمة قواعد التحقق الخاصة بحقول طلب توقيع الشهادة (CSR) لتعمل بطريقة مشابهة لطلبات CSID الخاصة بالإنتاج فيما يتعلق بالحروف الخاصة.
  • تم إزالة قاعدة التحقق غير المستخدمة BR-KSA-54 من المخططات (Schematrons).
  • تم إصلاح الخطأ في قاعدة التحقق "BR-S-05" المتعلقة بمعدل ضريبة القيمة المضافة لعنصر الفاتورة ("Invoiced item VAT rate" BT-152).
  • تم إدخال قاعدة تحقق جديدة "BR-KSA-84" لتحديد معدلات ضريبة القيمة المضافة لتكون 5% و 15% فقط لفئة ضريبة القيمة المضافة "المعدل القياسي"
  • تم تعديل قواعد التحقق "BR-KSA-44" و "BR-KSA-46" للسماح بتوفير رقم تسجيل ضريبة القيمة المضافة حتى إذا كان عنوان المشتري خارج المملكة العربية السعودية.
إصدار محاكاة SDK 3.2.9
  • تم إضافة حقول اختيارية جديدة لمعلومات الاتصال بالمشتري (اسم الاتصال، رقم الهاتف، البريد الإلكتروني، والملاحظات).
  • تم مواءمة قواعد التحقق الخاصة بحقول طلب توقيع الشهادة (CSR) لتعمل بطريقة مشابهة لطلبات CSID الخاصة بالإنتاج فيما يتعلق بالحروف الخاصة.
  • تم إزالة قاعدة التحقق غير المستخدمة BR-KSA-54 من المخططات (Schematrons).
  • تم إصلاح الخطأ في قاعدة التحقق "BR-S-05" المتعلقة بمعدل ضريبة القيمة المضافة لعنصر الفاتورة ("Invoiced item VAT rate" BT-152).
  • تم إدخال قاعدة تحقق جديدة "BR-KSA-84" لتحديد معدلات ضريبة القيمة المضافة لتكون 5% و 15% فقط لفئة ضريبة القيمة المضافة "المعدل القياسي"
  • تم تعديل قواعد التحقق "BR-KSA-44" و "BR-KSA-46" للسماح بتوفير رقم تسجيل ضريبة القيمة المضافة حتى إذا كان عنوان المشتري خارج المملكة العربية السعودية.
إصدار SDK 3.2.8
  • تمت تحسينات لمواءمة .NET SDK مع JAVA SDK.
  • تم إضافة أمر جديد في .NET SDK لتوليد طلب API بصيغة JSON.
  • تم إضافة أمر جديد في .NET SDK لتوليد طلب توقيع الشهادة (CSR).
  • تم تحسين تنسيق الوقت في رمز الاستجابة السريعة (QR Code) في .NET SDK.
  • قضايا التحقق في .NET SDK.
  • تم تصحيح خطأ إملائي في محتوى الرسالة لقاعدة التحقق BR-KSA-42 في .NET SDK.
  • قضايا التحقق من XSD عند توقيع الفاتورة باستخدام .NET SDK.
  • تصحيح استجابة الامتثال لطلبات توقيع الشهادة (CSR) المولدة بواسطة .NET SDK.
  • توليد طلب توقيع الشهادة (CSR) في المسار الصحيح للملف (مجلد الوجهة) باستخدام .NET SDK.
  • قضايا التحقق مع PIH في .NET SDK.
إصدار محاكاة SDK 3.2.8
  • تمت تحسينات لمواءمة .NET SDK مع JAVA SDK.
  • تم إضافة أمر جديد في .NET SDK لتوليد طلب API بصيغة JSON.
  • تم إضافة أمر جديد في .NET SDK لتوليد طلب توقيع الشهادة (CSR).
  • تم تحسين تنسيق الوقت في رمز الاستجابة السريعة (QR Code) في .NET SDK.
  • قضايا التحقق في .NET SDK.
  • تم تصحيح خطأ إملائي في محتوى الرسالة لقاعدة التحقق BR-KSA-42 في .NET SDK.
  • قضايا التحقق من XSD عند توقيع الفاتورة باستخدام .NET SDK.
  • تصحيح استجابة الامتثال لطلبات توقيع الشهادة (CSR) المولدة بواسطة .NET SDK.
  • توليد طلب توقيع الشهادة (CSR) في المسار الصحيح للملف (مجلد الوجهة) باستخدام .NET SDK.
  • قضايا التحقق مع PIH في .NET SDK.
إصدار SDK 3.2.7
  • إعادة تفعيل قاعدة العمل BR-KSA-15.
  • إعادة تفعيل قاعدة العمل BR-KSA-35.
  • إعادة تفعيل قاعدة العمل BR-KSA-36.
إصدار محاكاة SDK 3.2.7
  • إعادة تفعيل قاعدة العمل BR-KSA-15.
  • إعادة تفعيل قاعدة العمل BR-KSA-35.
  • إعادة تفعيل قاعدة العمل BR-KSA-36.
إصدار SDK 3.2.6
  • تم إصلاح الخطأ في قاعدة التحقق BR-KSA-F-04 للسماح بالقيم السلبية في "مبلغ الضريبة القابلة للضريبة" (BT-116) للمعاملات التي تكون "غير خاضعة لضريبة القيمة المضافة" أو "خارج نطاق الضريبة".
  • تم إصلاح الخطأ في قاعدة التحقق BR-KSA-70 لجعل "وقت إصدار الفاتورة" (KSA-25) إلزاميًا.
  • تم إصلاح الخطأ في خطوة توليد رمز الاستجابة السريعة (QR Code) لمطابقة الطابع الزمني في الرمز مع وقت إصدار الفاتورة (KSA-25) في XML، مما يسمح باستخدام كل من تنسيقات الوقت المحلي وZulu time.
إصدار محاكاة SDK 3.2.6
  • تم إصلاح الخطأ في قاعدة التحقق BR-KSA-F-04 للسماح بالقيم السلبية في "مبلغ الضريبة القابلة للضريبة" (BT-116) للمعاملات التي تكون "غير خاضعة لضريبة القيمة المضافة" أو "خارج نطاق الضريبة".
  • تم إصلاح الخطأ في قاعدة التحقق BR-KSA-70 لجعل "وقت إصدار الفاتورة" (KSA-25) إلزاميًا.
  • تم إصلاح الخطأ في خطوة توليد رمز الاستجابة السريعة (QR Code) لمطابقة الطابع الزمني في الرمز مع وقت إصدار الفاتورة (KSA-25) في XML، مما يسمح باستخدام كل من تنسيقات الوقت المحلي وZulu time.
إصدار SDK 3.2.4
  • تم إصلاح خطأ طفيف في قاعدة التحقق BR-KSA-56 لفرض تقديم معرف مرجع الفاتورة (BT-25) مع العلامة الرئيسية (cac:BillingReference) لخطابات الائتمان/الخصم (أنواع الفواتير 381 و 383).
إصدار محاكاة SDK 3.2.4
  • تم إصلاح خطأ طفيف في قاعدة التحقق BR-KSA-56 لفرض تقديم معرف مرجع الفاتورة (BT-25) مع العلامة الرئيسية (cac:BillingReference) لخطابات الائتمان/الخصم (أنواع الفواتير 381 و 383).
إصدار SDK 3.2.3
  • تم إصلاح خطأ طفيف في قاعدة التحقق BR-KSA-75 ليتطلب وجود تفصيل ضريبة القيمة المضافة لأسطر الفاتورة التي تحتوي على مبالغ مدفوعة مسبقًا.
  • تم إصلاح خطأ طفيف في قاعدة التحقق BR-KSA-06 لتقييد طول رمز معاملة الفاتورة (KSA-2) ليكون بالضبط 7 أرقام.
إصدار محاكاة SDK 3.2.3
  • تم إصلاح خطأ طفيف في قاعدة التحقق BR-KSA-75 ليتطلب وجود تفصيل ضريبة القيمة المضافة لأسطر الفاتورة التي تحتوي على مبالغ مدفوعة مسبقًا.
  • تم إصلاح خطأ طفيف في قاعدة التحقق BR-KSA-06 لتقييد طول رمز معاملة الفاتورة (KSA-2) ليكون بالضبط 7 أرقام.
إصدار SDK 3.2.2
  • التغييرات المتعلقة بالسيناريوهات مثل "الخصومات القابلة للضريبة حيث يجب حساب الضريبة على الخصم وفقًا لمبادئ القيمة السوقية العادلة".
  • تصحيح محتوى رسالة التحذير لاسم المشتري واسم شارع المشتري لتحديد 1000 حرف بدلاً من 127 حرفًا.
  • اكتشاف ملف فارغ وملف readme غير مكتمل جزئيًا في JAVA SDK.
  • التغييرات التي تسمح بوجود خصومات متعددة على مستوى المستند وعلى مستوى عناصر الفاتورة.
  • تخفيف قاعدة التحقق BR-CO-16 لتصبح "مقبولة مع تحذيرات" بدلاً من "مرفوضة مع خطأ".
  • تخفيف المتطلب لتوفير حقل "منطقة المشتري (KSA-4)" للعملاء الأجانب.
إصدار SDK 3.2.1
  • تم جعل حقل معدل فئة ضريبة القيمة المضافة (BT-119) اختياريًا للمعاملات "غير الخاضعة للضريبة" (Out of Scope). مما يعني أنه بالنسبة للمعاملات "غير الخاضعة للضريبة"، سيعمل BT-119 سواء مع أو بدون علامة .
  • تخفيف القواعد BR-KSA-EN16931-11، BR-CO-10، BR-CO-13 و BR-CO-17 لتصبح "مقبولة مع تحذيرات" بدلاً من "مرفوضة مع خطأ".
  • حل مشكلة في BR-KSA-EN16931-11 لقبول القيمة في "سعر الصنف الصافي" (BT-146) دون أي تقريب.
  • حل مشكلة في قائمة أكواد UNTDID 7161 لـ "رمز سبب الرسوم على مستوى المستند" (BT-105) و "رمز سبب الرسوم على مستوى سطر الفاتورة" (BT-145) لتحديد القيم لتكون من قائمة الأكواد حصريًا وفقًا للفقرة 11.2.8 من معيار تنفيذ XML.
إصدار محاكاة SDK 3.2.1
  • تم جعل حقل معدل فئة ضريبة القيمة المضافة (BT-119) اختياريًا للمعاملات "غير الخاضعة للضريبة" (Out of Scope). مما يعني أنه بالنسبة للمعاملات "غير الخاضعة للضريبة"، سيعمل BT-119 سواء مع أو بدون علامة .
  • تخفيف القواعد BR-KSA-EN16931-11، BR-CO-10، BR-CO-13 و BR-CO-17 لتصبح "مقبولة مع تحذيرات" بدلاً من "مرفوضة مع خطأ".
  • حل مشكلة في BR-KSA-EN16931-11 لقبول القيمة في "سعر الصنف الصافي" (BT-146) دون أي تقريب.
  • حل مشكلة في قائمة أكواد UNTDID 7161 لـ "رمز سبب الرسوم على مستوى المستند" (BT-105) و "رمز سبب الرسوم على مستوى سطر الفاتورة" (BT-145) لتحديد القيم لتكون من قائمة الأكواد حصريًا وفقًا للفقرة 11.2.8 من معيار تنفيذ XML.
إصدار SDK 3.2.0
  • إضافة وظيفة لإصدار نفس التحذيرات كما في الحل الأساسي أثناء التحقق من صحة الفاتورة الإلكترونية.
  • إضافة وظيفة (أثناء إنشاء CSR) للتحقق من صحة البيانات مقابل الأخطاء المعروفة.
  • تحديث ملفات ReadMe لتشمل دليل استخدام ملف Java Jar.
  • إضافة أمر "fatoora -help" مع رسالة ترحيبية أثناء تثبيت SDK.
  • تحديث ملفات ReadMe لتشمل المتطلبات المسبقة لـ "التحقق من صحة الفاتورة" و "إنشاء رمز الاستجابة السريعة (QR)".
  • السماح للمكلفين بتقديم وسائل دفع متعددة (اختياري). 
  • إدخال علامة جديدة في UBL (cac:LegalMonetaryTotal/cbc:PayableRoundingAmount) لتقريب المبلغ المستحق.
  • إزالة قاعدة العمل BR-KSA-50 من مجموعة التحقق لتجنب أي أخطاء في التقريب عند حساب ضريبة القيمة المضافة على مستوى عناصر الفاتورة.
  • تعديل محتوى رسائل التحقق.
  • تعديل الحد الأقصى لعدد الأحرف لبعض الحقول (BT-35، BT-27، BT-50، BT-44، KSA-10، KSA-22، BT-120) ليكون 1000 حرف. 
  • تعديل تنفيذ رمز سبب السماح/الرسوم ونص السبب على مستوى المستند وعلى مستوى سطر الفاتورة لتغيير بعض القواعد من أن تكون إلزامية إلى اختيارية.
  • تعديل تنفيذ نص سبب الإعفاء من ضريبة القيمة المضافة (BT-120) لرموز فئات ضريبة القيمة المضافة "Z"، "E"، و"O" في مجموعة التحقق لقبول الفاتورة مع تحذيرات بدلاً من رفضها.
  • تم تعديل قواعد BR-O-05 و BR-O-06 و BR-O-07 لتصبح قواعد خاصة بالمملكة العربية السعودية للسماح للمكلفين بتجاوز التحقق حتى إذا لم يتم تقديم الوسم للنسبة المئوية.
إصدار محاكاة SDK 3.2.0
  • إضافة وظيفة لإصدار نفس التحذيرات كما في الحل الأساسي أثناء التحقق من صحة الفاتورة الإلكترونية.
  • إضافة وظيفة (أثناء إنشاء CSR) للتحقق من صحة البيانات مقابل الأخطاء المعروفة.
  • تحديث ملفات ReadMe لتشمل دليل استخدام ملف Java Jar.
  • إضافة أمر "fatoora -help" مع رسالة ترحيبية أثناء تثبيت SDK.
  • تحديث ملفات ReadMe لتشمل المتطلبات المسبقة لـ "التحقق من صحة الفاتورة" و "إنشاء رمز الاستجابة السريعة (QR)".
  • السماح للمكلفين بتقديم وسائل دفع متعددة (اختياري). 
  • إدخال علامة جديدة في UBL (cac:LegalMonetaryTotal/cbc:PayableRoundingAmount) لتقريب المبلغ المستحق.
  • إزالة قاعدة العمل BR-KSA-50 من مجموعة التحقق لتجنب أي أخطاء في التقريب عند حساب ضريبة القيمة المضافة على مستوى عناصر الفاتورة.
  • تعديل محتوى رسائل التحقق.
  • تعديل الحد الأقصى لعدد الأحرف لبعض الحقول (BT-35، BT-27، BT-50، BT-44، KSA-10، KSA-22، BT-120) ليكون 1000 حرف. 
  • تعديل تنفيذ رمز سبب السماح/الرسوم ونص السبب على مستوى المستند وعلى مستوى سطر الفاتورة لتغيير بعض القواعد من أن تكون إلزامية إلى اختيارية.
  • تعديل تنفيذ نص سبب الإعفاء من ضريبة القيمة المضافة (BT-120) لرموز فئات ضريبة القيمة المضافة "Z"، "E"، و"O" في مجموعة التحقق لقبول الفاتورة مع تحذيرات بدلاً من رفضها.
  • تم تعديل قواعد BR-O-05 و BR-O-06 و BR-O-07 لتصبح قواعد خاصة بالمملكة العربية السعودية للسماح للمكلفين بتجاوز التحقق حتى إذا لم يتم تقديم الوسم للنسبة المئوية.
إصدار محاكاة SDK 3.1.9
  • تم تقديم وظيفة للمدفوعات المسبقة والرسوم (اختياري)
  • تم زيادة الحد الأقصى لعدد الأحرف للمعرف المرجعي للفاتورة إلى 5,000 حرف
  • السماح للمكلفين بتوفير رقم العنوان الإضافي بأكثر من 4 أرقام
  • السماح للمكلفين بتوفير قيمة "0" (صفر) في وسم النسبة المئوية (UBL) لفئة ضريبة القيمة المضافة "غير خاضعة لضريبة القيمة المضافة"
  • تم تعديل تنفيذ رمز سبب الإعفاء من ضريبة القيمة المضافة ونص السبب لفئات ضريبة القيمة المضافة "Z"، "E"، و "O"
  • تم تقديم قواعد العمل لضمان الحساب الصحيح للمبلغ الخاضع لضريبة القيمة المضافة
  • تم تقديم قاعدة عمل لتوفير "معرف المشتري الآخر" إذا لم يتم تقديم "رقم تسجيل ضريبة القيمة المضافة للمشتري"
  • تم تغيير "رمز البريد للمشتري" و "رقم المبنى" من إلزامي إلى شرطي
إصدار SDK 3.1.8

تم تحديث قواعد العمل التالية:

  • BR-KSA-71 و BR-KSA-72: إلزامية تاريخ التوريد، تاريخ انتهاء التوريد، واسم العميل للفواتير المبسطة الملخصة.
  • BR-KSA-EN16931-03، 04، و 05: تم تحديثها لـ BT-93، BT-94، BT-137، و BT-138. 

تم تحديث الملفات التالية:

  • تحديث ملفات README لتشمل متطلبات JAVA.
  • تحديث ملف csr-config-example.properties لتضمين الأمثلة ذات الصلة.
  • تحديث عينة PDF/A3

تم إضافة الملفات التالية:

    • إضافة عينات XML بالدولار الأمريكي لكل من الفواتير المبسطة والفواتير القياسية.
إصدار SDK 3.1.7

تم تحديث قواعد العمل التالية:

  • BR-KSA-50: تم إصلاح عملية التقريب لتكون "التقريب للنصف".
  • BR-KSA-EN16931-03: تم إصلاحها من خلال تضمين عملية التقريب وتحديد مكانين عشريين.

تم إزالة قواعد العمل التالية:

  • BR-O-05: تم إزالته لقبول الفواتير غير المشمولة (out-of-scope) سواء كان يحتوي على وسم النسبة المئوية (cbc:Percent) أو لا.
إصدار SDK 3.1.6

تم تحديث قواعد العمل التالية:

  • قاعدة العمل BR-KSA-65: تم تعديل رسالة الخطأ لتعرض النص التالي: "يجب أن يتكون الرقم الإضافي لعنوان المشتري (KSA-19) من 4 أرقام إذا تم توفيره."

التحسينات:

  • تمت إضافة نموذج فاتورة ضريبية بصيغة PDF/A3 كمرجع.
إصدار SDK 3.1.5

تم تحديث قواعد العمل التالية:

  • تم تعديل قاعدة العمل BR-KSA-64 لجعل تحديد رقم القطعة (Plot Identification) اختياريًا لكلٍ من البائع والمشتري. 
  • تم تعديل قاعدة العمل BR-KSA-65 لجعل تحديد رقم القطعة (Plot Identification) اختياريًا لكلٍ من البائع والمشتري.

 

تصحيحات لـ:

  • تم تحديث إصدار SDK لنظام Linux.
  • تم تحديث ملف Readme لأوامر نظام Linux.

التحسينات:

  • تم تحديث رقم ضريبة القيمة المضافة واسم الشركة إلى قيم وهمية في مجلد بيانات SDK.
  • تمت إضافة نموذج مشروع .NET كمرجع مع ملف DLL.
إصدار SDK 3.1.4

تمت إزالة قواعد الأعمال التالية:

  • BR-O-01
  • BR-O-12

تم تحديث قواعد العمل التالية:

  • BR-KSA-16: تم تحديثها لتشمل كامل قائمة رموز UNTDID 4461 بما في ذلك القيمة "zzz"
  • BR-KSA-67: تم جعل الرمز البريدي للمشتري اختيارياً في الفواتير المبسطة
  • BR-KSA-09: تم جعل رقم القطعة (Plot-Identification) اختيارياً للبائع في الفواتير القياسية والمبسطة
  • BR-KSA-63: تم جعل رقم القطعة (Plot-Identification) اختيارياً للمشتري في الفواتير المبسطة

تحسينات:

  • تمت إضافة فواتير XML إضافية إلى العينات: 
  • standard_invoice_exempt.xml
  • standard_invoice_zero_rated.xml
  • simplified_invoice_out_of_scope.xml
إصدار SDK 3.1.3

تمت إزالة قواعد الأعمال التالية:

  • BR-O-02
  • BR-O-03
  • BR-O-11
  • BR-42
إصدار SDK 3.1.2B

تصحيحات لـ:

  • SDK .Net ChilkatDotNet47 dll
إصدار SDK 3.1.2

تم التحديث:

  • تم تحديث القاعدة التجارية BR-KSA-10 لتكون اختيارية للفواتير المبسطة.
  • تم تحديث القاعدة التجارية BR-KSA-16 لتكون اختيارية للفواتير المبسطة.
  • تم تحديث القاعدة التجارية BR-KSA-50 لتكون اختيارية للفواتير المبسطة.
إصدار SDK 3.1.1

تم إضافة:

  • حزمة SDK .Net
  • عينات للفواتير، الملاحظات الائتمانية، والملاحظات المدين
إصدار SDK 3.0.9

تصحيحات لـ:

  • توليد رمز الاستجابة السريعة (QR)، التحقق من صحته، وإزالته.
  • التحقق من صحة طلب توقيع الشهادة (CSR).
  • تصحيح تقريب الأرقام العشرية في الفواتير.
  • تغيير الحد الأقصى لعدد الأحرف في رمز الاستجابة السريعة من 500 إلى 700.

بالإضافة إلى:

  • تحسين رسائل الأخطاء وجعلها أكثر تحديدًا.
إصدار SDK 3.0.8

كجزء من جهودنا المستمرة لتحسين حل الفوترة الإلكترونية التجريبي (فاتورة)، تم تحسين مجموعة أدوات تطوير البرمجيات (SDK) لجعلها أكثر سهولة وملاءمة للاستخدام. بالإضافة إلى ذلك، قمنا بتطوير مجموعة من الوثائق التكميلية لمساعدتك.

ملاحظة: يرجى الرجوع إلى مجلد "Readme" في مجموعة أدوات تطوير البرمجيات (SDK) للحصول على وصف حول هذا الإصدار الأخير.

إصدار SDK 2.0.0

يتم في هذا الإصدار إصلاح مشكلة أمان تم تحديدها في مكون جافا log4j والتي كانت تسمح بتنفيذ التعليمات البرمجية عن بُعد والوصول إلى الخوادم بدون مصادقة.

إصدار SDK 1.0.0

هذه هي النسخة الأولى من الـ SDK.

ابقَ على اطلاع دائم مع زاتيفي

إذا كنت تواجه أي تحديات في التكامل، فلا تتردد في التواصل معنا.

X