إنفويسي

UBL 2.1 ببساطة: معيار XML الذي يقف خلف الفوترة الإلكترونية الحديثة

تقريباً كل نظام فوترة إلكترونية إلزامي رئيسي في العالم يصدر UBL 2.1 خلف الكواليس. إليك جولة دون مصطلحات معقّدة في الأجزاء التي تحتاج فعلياً إلى فهمها.

Invocie Team · ٢١ يناير ٢٠٢٦ · 5 دقائق قراءة


UBL — Universal Business Language — معيار من OASIS يستند إليه Peppol BIS، وEN 16931، وزاتكا المرحلة الثانية، وملف PINT الإماراتي، ومخطط IRP الهندي (مع توسعات)، وعدد من أنظمة أمريكا اللاتينية. وإن لم تُصالح استراتيجيتك في الفوترة الإلكترونية معيار UBL 2.1، ستعيد كتابة نفس XML مراراً وتكراراً.

شكل فاتورة UBL

فاتورة UBL مستند XML بثلاث مساحات أسماء رئيسية: cbc (المكونات الأساسية المشتركة — أنواع بدائية مثل ID وAmount)، وcac (المكونات التجميعية المشتركة — أنواع مركّبة مثل Party وTaxTotal)، إضافةً إلى مساحة اسم المستند نفسه. كل مستند UBL يتبع النمط ذاته:

<Invoice
    xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2"
    xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2"
    xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2">
  <cbc:CustomizationID>urn:cen.eu:en16931:2017</cbc:CustomizationID>
  <cbc:ID>INV-2026-0001</cbc:ID>
  <cbc:IssueDate>2026-01-15</cbc:IssueDate>
  <cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>
  <cac:AccountingSupplierParty>...</cac:AccountingSupplierParty>
  <cac:AccountingCustomerParty>...</cac:AccountingCustomerParty>
  <cac:TaxTotal>...</cac:TaxTotal>
  <cac:LegalMonetaryTotal>...</cac:LegalMonetaryTotal>
  <cac:InvoiceLine>...</cac:InvoiceLine>
</Invoice>

خمسة مفاهيم خاطئة في الغالب

  1. TaxTotal مقابل LegalMonetaryTotal. الأول يفصّل الضريبة حسب النسبة، والثاني هو إجمالي المبلغ المستحق. لا تخلط بينهما.
  2. AllowanceCharge قد يكون خصماً أو إضافة — يحدّد ذلك ChargeIndicator (false = خصم، true = إضافة). المؤشر الخاطئ يعني إجمالياً خاطئاً.
  3. معرفات نقاط الوصول تتطلب خاصية scheme (مثل schemeID="0088"). بدونها يعطي المتحققون أخطاءً غامضةً عن معرفات مفقودة.
  4. الكميات تستخدم رمز وحدة من UN/CEFACT (EA = قطعة، KGM = كيلوجرام، HUR = ساعة). كلمة "piece" ليست قيمة صحيحة.
  5. رموز TaxCategory هي UNCL5305: S = نسبة قياسية، Z = نسبة صفرية، E = إعفاء، AE = العكس الضريبي. لا تخترع رموزاً جديدة.

تنتج EUStrategy في إنفويسي UBL 2.1 متوافقاً مع BIS Billing 3.0 — نفس XML يصلح لنقاط وصول بيبول، ولملف UAE PINT، ولأي نظام يستهلك EN 16931.


قراءات ذات صلة

أصدر فواتير متوافقة في كل سوق

زاتكا، الهيئة الاتحادية، بيبول، والنموذج اللاحق عالمياً — بواجهة واحدة.

تواصل مع فريقنا