
تكامل ERPNext
فوترة إلكترونية ERPNext في الإمارات — تكامل PINT-AE للهيئة 2026
تحول تراست بل ERPNext إلى محرك فوترة إلكترونية في الإمارات. احتفظ بـ ERP مفتوح المصدر الخاص بك على الاستضافة الذاتية أو Frappe Cloud — نحن ننشئ PINT-AE XML، ونتحقق منه مقابل قواعد الهيئة، ونرسله عبر ASP معتمد.
كيف تتكامل تراست بل مع ERPNext
ERPNext هو ERP مفتوح المصدر تستخدمه الشركات الصناعية وشركات التداول وشركات الخدمات وشركات المناطق الحرة في الإمارات. يخزن بيانات العملاء والمنتجات وضريبة القيمة المضافة وفواتير المبيعات والمدفوعات في مكان واحد، لكنه ليس حل فوترة إلكترونية معتمد من Peppol/FTA بحد ذاته. تضيف تراست بل طبقة الامتثال الناقصة: اتصال API آمن يقرأ بيانات الفاتورة من ERPNext، ويحولها إلى PINT-AE XML، ويتحقق من الحقول الإلزامية في الإمارات، ويوجه المستند إلى المشتري عبر مزود خدمة معتمد (ASP).
دليل الإعداد لمرة واحدة
ربط ERPNext بتراست بل أمر بسيط ولا يتطلب تغييرات في أساسيات كود ERPNext:
1. **أنشئ حساب تراست بل** — سجل مجانًا وأدخل رقم TRN وتفاصيل عملك. 2. **اربط ERPNext** — أضف مفتاح API وعنوان موقع مثيل ERPNext الخاص بك (استضافة ذاتية أو Frappe Cloud). 3. **اربط البيانات الرئيسية** — تستورد تراست بل العملاء والمنتجات وقوالب الضرائب وشجرة الحسابات، وتربطها بحقول PINT-AE. 4. **اضبط قواعد الإمارات** — عيّن أكواد ضريبة القيمة المضافة، ومؤشرات المنطقة الحرة، ومكان التوريد، وأنواع الفواتير. 5. **أرسل فاتورة اختبار** — أرسل فاتورة مبيعات اختبارية إلى شبكة Peppol وتأكد من حالة التسليم.
بعد الإطلاق، يتم تحويل وإرسال كل فاتورة ERPNext ترسلها تلقائيًا.
امتثال PINT-AE لفواتير ERPNext
تتطلب وزارة المالية في الإمارات تنسيق PINT-AE XML المنظم للفواتير الإلكترونية B2B و B2G. تأخذ تراست بل بيانات الفاتورة الأصلية من ERPNext وتبني مستند PINT-AE يغطي الحقول الإلزامية والشرطية: UUID، وتاريخ ووقت الإصدار، وTRN المورد/المشتري، والأسماء القانونية بالإنجليزية، وأوصاف بنود السطر، والأسعار الوحدوية، ومعدلات ضريبة القيمة المضافة، والإجمالي مع الضريبة، والعناصر المحددة للإمارات مثل مؤشرات المنطقة الحرة ونظام الهامش. تدخل الشركات الكبرى (إيرادات ≥ 50 مليون درهم) حيز التنفيذ في 1 يناير 2027؛ وتتبعها الشركات الصغيرة والمتوسطة في 1 يوليو 2027.
تعيين حقل ERPNext ← PINT-AE
التعيين الدقيق الذي يطبّقه تراست بل عند تحويل DocType Sales Invoice في ERPNext (يُقرأ عبر واجهة Frappe REST أو webhook Server Script في on_submit) إلى PINT-AE XML. أسماء الحقول أدناه هي معرّفات Frappe DocField؛ الحقول المخصصة التي تُضيفها تتبع نفس الاصطلاحات. احتفظ بهذا الجدول قبل تكوين قوالب ضرائب ERPNext والبيانات الرئيسية للعملاء.
| حقل ERPNext DocField | حقل PINT-AE / UBL 2.1 | ملاحظة |
|---|---|---|
| Sales Invoice.name | cbc:ID | معرّف فاتورة ERPNext (سلسلة التسمية). يجب أن يكون فريدًا عبر جميع الإرساليات. |
| Sales Invoice.posting_date | cbc:IssueDate | تاريخ ISO. لا يجب أن يكون في المستقبل. |
| Customer.tax_id | cac:AccountingCustomerParty/cac:PartyTaxScheme/cbc:CompanyID | TRN المشتري — 15 رقمًا. اضبطه على DocType Customer. |
| Company.tax_id | cac:AccountingSupplierParty/cac:PartyTaxScheme/cbc:CompanyID | TRN الخاص بك. اضبطه مرة على DocType Company. |
| Sales Invoice Item.description / item_name | cac:InvoiceLine/cbc:Description أو cac:Item/cbc:Name | نص بند السطر. UTF-8؛ الأحرف العربية مدعومة. |
| Sales Invoice Item.qty × rate | cbc:LineExtensionAmount, cbc:BaseQuantity, cac:Price/cbc:PriceAmount | PINT-AE يُعيد بناء إجمالي البند من الكمية × المعدل. |
| Sales Taxes and Charges.account_head / rate | cac:ClassifiedTaxCategory (S=5%, Z=0%, E=معفى, O=خارج النطاق) | رأس ضريبة ERPNext يجب أن يُطابق فئة PINT-AE عبر Tax Mapping في تراست بل. |
| Sales Invoice.currency | cbc:DocumentCurrencyCode | AED للمحلي؛ غير AED يحتاج تعبئة conversion_rate. |
| Sales Invoice.grand_total | cac:LegalMonetaryTotal/cbc:PayableAmount | مُطابق مع إجماليات البنود + الضرائب؛ عدم تطابق = فشل تحقق. |
| Customer.custom_free_zone (حقل مخصص) | علم namespace امتداد؛ فئة الضريبة مُشتقة | أضف الحقل المخصص إلى DocType Customer مرة. |
| Sales Invoice.remarks / custom_advance_uuid | cac:DocumentReference لربط الدفعة المقدمة (النوع 386) | عبّئ على أي فاتورة تسترد دفعة مقدمة سابقة. |
| Sales Invoice.return_against (إشعار دائن) | cbc:InvoiceTypeCode="381"؛ cac:BillingReference/cac:InvoiceDocumentReference | استخدم تدفق Return / Credit Note في ERPNext — لا تُنشئه كـ Sales Invoice مستقل. |
أخطاء التحقق الشائعة ERPNext ← PINT-AE
أكثر ثمانية أخطاء تحقق تُصادَف عندما تفشل فاتورة ERPNext في فحوصات PINT-AE، وما يجب إصلاحه بالضبط في ERPNext لتصفيتها. لوحة تحكم تراست بل تُظهر هذه الرموز بتفسيرات واضحة؛ الجدول أدناه هو النسخة المرجعية.
| رمز الخطأ | المعنى | الإصلاح في ERPNext v14+ / Frappe |
|---|---|---|
| PAE-BR-01 | TRN المشتري مفقود أو غير صحيح. | ERPNext ← Customer ← تحرير ← اضبط Tax ID إلى TRN من 15 رقمًا. تأكد أن Tax Category هي UAE. |
| PAE-BR-04 | TRN البائع مفقود. | ERPNext ← Company ← تحرير ← اضبط Tax ID. |
| PAE-BR-11 | عدم تطابق إجمالي البند (كمية × معدل ≠ إجمالي البند). | في Sales Invoice، حرّر صف البند وصحّح التقريب على Qty أو Rate بحيث يتوافق المبلغ. تحقق من إعدادات Currency Exchange إذا تكررت المشكلة. |
| PAE-BR-12 | رأس ضريبة ERPNext غير مطابق لفئة PINT-AE. | تراست بل ← Settings ← Tax Mapping. اربط كل صف Sales Taxes and Charges Template بفئة PINT-AE (S / Z / E / O). |
| PAE-BR-14 | العملة ليست AED ولا يوجد مرجع سعر FX مُقدّم. | في رأس Sales Invoice، تأكد من تعبئة Currency و Exchange Rate (conversion_rate) قبل الإرسال. |
| PAE-BR-21 | الإشعار الدائن يفتقر إلى مرجع فاتورة أم صالح. | في ERPNext، افتح الفاتورة المصدر ← انقر Return / Credit Note. هذا يُعبّئ return_against تلقائيًا؛ لا تُنشئ Sales Invoice مستقلة. |
| PAE-BR-22 | فاتورة الدفعة المقدمة غير مرتبطة باستردادها. | أضف حقلًا مخصصًا custom_advance_uuid على Sales Invoice؛ عبّئه على فاتورة الاسترداد بـ UUID فاتورة الدفعة المقدمة قبل الإرسال. |
| PAE-BR-31 | علم المنطقة الحرة مُعلّم لكن رمز مكان التوريد غير موجود. | في نموذج Customer، اضبط الحقل المخصص custom_free_zone وتأكد من أن العنوان الأساسي في المنطقة الحرة. |
ميزات رئيسية لمستخدمي ERPNext
يتضمن تكامل ERPNext في تراست بل:
- **مزامنة عبر API** — يستخدم واجهة ERPNext REST القياسية؛ لا حاجة لوكيل محلي. - **الاستضافة الذاتية و Frappe Cloud** — يعمل مع كلا نموذجي النشر. - **إنشاء PINT-AE** — تحول فواتير ERPNext الأصلية إلى XML وفقًا لمعيار الإمارات. - **التحقق في الوقت الفعلي** — يتم إرجاع الأخطاء قبل الإرسال مع إرشادات على مستوى الحقل. - **تتبع الحالة** — تتبع الفواتير المعلقة والمرسلة والمقبولة والمرفوضة في لوحة تحكم واحدة. - **إشعارات الدائن والفوترة الذاتية** — يدعم إشعارات دائن PINT-AE وأنواع المستندات المفوترة ذاتيًا. - **تكامل VAT 201** — تغذي الفواتير الإلكترونية المرسلة مسودة إقرار ضريبة القيمة المضافة 201. - **إقامة البيانات** — تتم معالجة بيانات الفاتورة وتخزينها في الإمارات.
الأمان وملكية البيانات
أنت تحتفظ بملكية كاملة لقاعدة بيانات ERPNext. تقرأ تراست بل فقط بيانات الفاتورة والبيانات الرئيسية اللازمة للفوترة الإلكترونية ولا تكتب مرة أخرى في دفتر أستاذ ERPNext. تستخدم جميع مكالمات API TLS 1.3، وتكون بيانات الاعتماد مشفرة في حالة التخزين، ويمكنك تدوير أو إلغاء مفتاح API في أي وقت. بالنسبة للنشرات المستضافة ذاتيًا، يخرج الاتصال من بنيتك التحتية الخاصة، لذا لا يتعين نسخ البيانات المالية الحساسة يدويًا إلى خادم طرف ثالث.
الأسئلة الشائعة
هل ERPNext متوافق مع الفوترة الإلكترونية في الإمارات؟
ERPNext ليس معتمدًا من Peppol أو الهيئة الاتحادية للضرائب بحد ذاته. مع موصل مثل تراست بل، يمكنه إنتاج PINT-AE XML منظم، لكن الإرسال الفعلي عبر الشبكة يجب أن يتم عبر مزود خدمة معتمد في الإمارات (ASP).
هل يعمل التكامل مع ERPNext المستضاف ذاتيًا و Frappe Cloud؟
نعم. تتصل تراست بل بكل من مثيلات ERPNext المستضافة ذاتيًا ومواقع Frappe Cloud عبر واجهة REST القياسية، طالما أن نقطة النهاية متاحة عبر HTTPS.
كم تستغرق عملية إعداد الفوترة الإلكترونية في ERPNext؟
يمكن ربط تنفيذ ERPNext قياسي مع بيانات رئيسية نظيفة في غضون بضع ساعات. الإعدادات المخصصة بشكل كبير مع doctypes مخصصة أو سير عمل مبرمج عادةً ما تحتاج إلى يوم أو يومين لعملية الربط والاختبار.
هل ERPNext مناسب لشركات المناطق الحرة في الإمارات؟
نعم. يشتهر ERPNext بين الشركات الصغيرة والمتوسطة في المناطق الحرة. تتعامل تراست بل مع سيناريوهات الفوترة في البر الرئيسي والمناطق الحرة، بما في ذلك مؤشرات المنطقة الحرة، والتحقق من TRN، وقواعد معاملة ضريبة القيمة المضافة المطلوبة من الهيئة.
كيف تظل بيانات ERPNext آمنة؟
تستخدم تراست بل اتصال API للقراءة فقط، وتشفير TLS 1.3 أثناء النقل، وتخزين مشفر للبيانات الاعتمادية، ولا تعدل دفتر أستاذ ERPNext أبدًا. أنت تتحكم في مفتاح API ويمكنك إلغاء الوصول في أي وقت.