1. الصفحة الرئيسية
  2. قاعدة المعرفة
  3. بيبول
  4. كيفية استخدام واجهة برمجة تطبيقات Peppol: دليل تفصيلي
  1. الصفحة الرئيسية
  2. قاعدة المعرفة
  3. EDI
  4. كيفية استخدام واجهة برمجة تطبيقات Peppol: دليل تفصيلي
  1. الصفحة الرئيسية
  2. قاعدة المعرفة
  3. أدلة المستخدم
  4. كيفية استخدام واجهة برمجة تطبيقات Peppol: دليل تفصيلي
  1. الصفحة الرئيسية
  2. قاعدة المعرفة
  3. عمليات الدمج
  4. كيفية استخدام واجهة برمجة تطبيقات Peppol: دليل تفصيلي

كيفية استخدام واجهة برمجة تطبيقات Peppol: دليل تفصيلي

كيفية استخدام واجهة برمجة تطبيقات Peppol: دليل تفصيلي

واجهة برمجة تطبيقات Peppol

سواء كنت تمثل شركة صغيرة أو مؤسسة كبيرة أو مزود برمجيات، توفر لك واجهة برمجة التطبيقات (API) من Qvalia طريقة موحدة ومستندة إلى المعايير للتكامل مع شبكة Peppol، مع دعم اختياري لتدفقات EDI إضافية ومعالجة المستندات الذكية وإثراء البيانات.

من خلال خدمة " Invoicing API"، يمكنك التعامل مع رسائل Peppol المتعلقة بالفواتير، مثل BIS Billing الفاتورة)، BIS Billing Note (إشعار الائتمان)، وBIS Self-Billing Invoice (فاتورة الفوترة الذاتية)، وBIS Self-Billing Credit Note (إشعار الائتمان للفوترة الذاتية)، BIS Invoice Response الفاتورة)، كما يمكنك، عند الحاجة، استكمالها بـ"Message Level Response" (رد على مستوى الرسالة) من أجل الإقرارات الفنية المتعلقة بالفواتير ورسائل Peppol الأخرى.

يمكن لواجهة برمجة التطبيقات (API) أن:

  • ساعد شركة صغيرة على البدء في إرسال فواتير Peppol بسرعة
  • دعم مؤسسة كبيرة من خلال تدفقات رسائل منظمة وكبيرة الحجم
  • برامج إصدار الفواتير المتطورة وأنظمة تخطيط موارد المؤسسات (ERP) التي تتطلب إمكانية الاتصال متعدد المستأجرين لخدمة العديد من العملاء

في هذا الدليل، ستتعلم كيفية:

  • قم بإعداد واجهة برمجة تطبيقات المعاملات (Transaction API) من Qvalia لتكون مركز Peppol وEDI الخاص بك
  • قم بتبادل أول فاتورة Peppol عبر واجهة برمجة التطبيقات (API)
  • توسيع نطاق العمل ليشمل الطلبات والكتالوجات وغيرها
  • يتيح نماذج قابلة للتوسع ومتعددة المستأجرين لموردي البرمجيات
  • إضافة ميزات متقدمة للبيانات مدعومة بالذكاء الاصطناعي من أجل إثراء البيانات واستخراج ملفات PDF

نظرة عامة: واجهة برمجة التطبيقات (API) لـ Peppol و EDI

توفر واجهة برمجة تطبيقات Peppol واجهة موحدة للرسائل التجارية الإلكترونية عبر Peppol وEDI. وقد صُممت لدعم السيناريوهات الأساسية مثل:

  • الفواتير ومذكرات الائتمان
  • أوامر الشراء والردود على الطلبات
  • تعديلات الطلبات والإلغاءات
  • الكتالوجات وتحديثات المنتجات
  • إشعار الشحن
  • الردود على مستوى الرسائل وتحديثات الحالة

يُستخدم مبدأ تصميم مشترك في جميع نقاط النهاية:

  • نقاط نهاية HTTP القائمة على REST
  • دعم كل من JSON و XML
  • UBL 2.1 كنموذج البيانات الأساسي
  • معالجة الأخطاء باستخدام رموز حالة HTTP القياسية

وهذا يعني أنه يمكنك التفكير من منظور الرسائل التجارية بدلاً من الشبكات والبروتوكولات. فأنت تقوم بإنشاء مستندات صالحة تستند إلى لغة UBL؛ بينما تتولى Qvalia معالجة طبقة Peppol وEDI في الخلفية.

البدء: المتطلبات الأساسية والإعداد

لا يتطلب البدء في استخدام واجهة برمجة تطبيقات Peppol من Qvalia سوى بعض الأمور الأساسية:

حساب Qvalia
تم تسجيل مؤسستكم كعميل لدى Qvalia. وستتلقون رقم تسجيل الحساب الذي يحدد هوية حسابكم بشكل فريد في جميع المعاملات.

مفتاح واجهة برمجة التطبيقات (API)
تتم عملية المصادقة عبر مفتاح واجهة برمجة التطبيقات (API)، مع وجود مفاتيح منفصلة لبيئات الاختبار والإنتاج. تتم جميع الاستدعاءات عبر بروتوكول HTTPS باستخدام بروتوكول TLS الحديث.

رقم تسجيل الحساب في مسار عنوان URL
تتضمن طلبات المعاملات رقم حسابك (accountRegNo) في المسار. على سبيل المثال:

POST /transaction/{accountRegNo}/invoices/outgoing
POST /transaction/{accountRegNo}/invoices/outgoing

اختيار التنسيق: JSON أو XML
يمكنك اختيار JSON أو XML عبر رؤوس HTTP القياسية (Content-Type و Accept). ويكون JSON هو التنسيق الافتراضي في حالة عدم تحديد خيار صريح.

بمجرد توفر هذه العناصر، تكون جاهزًا لبدء اختبار حركة مرور Peppol باستخدام Qvalia.

خطوة بخطوة: دمج أول مسار فواتير Peppol (الإرسال والاستلام)

يشرح هذا القسم خطوات عملية التكامل الأولية النموذجية بين نظامك وواجهة برمجة تطبيقات المعاملات (Transaction API) الخاصة بـ Qvalia، ويغطي كلاً من إرسال واستلام فواتير Peppol.

الخطوة 1: ابدأ في بيئة الاختبار

ابدأ بالدمج مع بيئة الاختبار:

  • عنوان URL الأساسي (مثال): https://api-qa.qvalia.com
  • نفس نموذج المصادقة ونقاط النهاية والهيكل المستخدم في بيئة الإنتاج

يتيح لك ذلك إنشاء التطبيقات واختبارها دون التأثير على العملاء الفعليين أو التدفقات المالية.

الخطوة 2: استخدم مفتاح API ورقم الحساب الخاص بك

في ملف التكوين الخاص بك، قم بتخزين:

  • مفتاح API الخاص بك (لبيئة الاختبار)
  • رقم حسابك

يجب أن يتضمن كل طلب ما يلي:

  • رأس الترخيص مع مفتاح واجهة برمجة التطبيقات
  • "accountRegNo" في مسار نقطة النهاية، على سبيل المثال:
    الفواتير الصادرة: /transaction/{accountRegNo}/invoices/outgoing
    الفواتير الواردة (طريقة السحب): /transaction/{accountRegNo}/invoices/incoming

الخطوة 3: اختر JSON أو XML (استنادًا إلى UBL)

تستخدم جميع المعاملات معيار UBL 2.1 كمعيار أساسي.

يمكنك إما:

تحدد العناوين الشكل:

JSON (الافتراضي)

نوع المحتوى: application/json المسموح به: application/json
Content-Type: application/jsonAccept: application/json

XML

نوع المحتوى: application/xml المسموح به: application/xml
Content-Type: application/xmlAccept: application/xml

تتيح لك هذه المرونة دمج واجهة برمجة تطبيقات Peppol في كل من البيئات التي تعتمد على JSON أولاً وتلك التي تعتمد على XML أولاً.

الخطوة 4: ربط فاتورتك بمعيار UBL

بعد ذلك، قم بربط نموذج الفواتير الداخلي الخاص بك بعناصر UBL. ويتوفر كل من UBL JSON وUBL XML.

  • معلومات العنوان (الفاتورة، تاريخ الإصدار، رمز نوع الفاتورة)
  • الأطراف (AccountingSupplierParty، AccountingCustomerParty)
  • المجاميع (المجموع الضريبي، المجموع النقدي القانوني)
  • البنود (بند الفاتورة، العنصر، السعر، فئة الضريبة)

والهدف هو ضمان ما يلي:

  • تم ملء جميع الحقول الإلزامية
  • تتوافق القيم مع ملف تعريف Peppol ذي الصلة (على سبيل المثال، BIS Billing)
  • يتم تلبية متطلبات عملك الخاصة (المراجع، مراكز التكلفة، رموز المشاريع)

ثم تقوم بتحويل هذه البيانات إلى صيغة JSON أو XML، حسب الصيغة التي تختارها. أما بالنسبة للفواتير الواردة، فتستخدم نفس بنية UBL عند قراءة البيانات والتحقق من صحتها وتعيينها من Qvalia إلى نموذجك الداخلي.

الخطوة 5أ: إرسال فاتورة Peppol صادرة

الخطوة 5.1: إرسال فاتورة Peppol صادرة

بعد أن أصبحت الحمولة الصادرة جاهزة، مثال على نقطة النهاية:

POST https://api-qa.qvalia.com/transaction/{accountRegNo}/invoices/outgoing
POST https://api-qa.qvalia.com/transaction/{accountRegNo}/invoices/outgoing

تشمل:

  • رأس الترخيص مع مفتاح واجهة برمجة التطبيقات (API) الخاص بك
  • رأس "Content-Type" الصحيح (JSON أو XML)
  • حمل الفاتورة المستند إلى UBL في نص الطلب

تقوم Qvalia بالتحقق من صحة الفاتورة، وتوجيهها عبر شبكة Peppol أوVAN ثم ترسل ردًا يتضمن المعرّفات والحالة.

الخطوة 5.2: استلام فواتير Peppol الواردة

لاسترداد الفواتير الواردة من Qvalia عبر واجهة برمجة التطبيقات (API)، عادةً ما تقوم بما يلي:

اتصل بنقطة النهاية الواردة، على سبيل المثال:

GET https://api-qa.qvalia.com/transaction/{accountRegNo}/invoices/incoming
GET https://api-qa.qvalia.com/transaction/{accountRegNo}/invoices/incoming

ويمكنك أيضًا:

  • تصفية النتائج أو تصفحها (حسب إعداداتك)
  • استخدم نقاط النهاية "read" للتمييز بين الفواتير الجديدة وتلك التي تمت معالجتها بالفعل

ثم يتم ربط ملف JSON أو XML الذي تم إرجاعه من UBL بنموذج البيانات الداخلي الخاص بك من أجل التسجيل أو الموافقة أو المعالجة الإضافية.

الخطوة 6: التعامل مع المراقبة والاستجابات والأخطاء

تستخدم واجهة برمجة التطبيقات الخاصة بالمعاملات رموز حالة HTTP يمكن التنبؤ بها، والتي يمكنك ربطها بالسجلات وعمليات المراقبة ورسائل المستخدمين. الأنماط الشائعة:

  • 200 OK – تم تنفيذ الطلب بنجاح، وتم إرجاع البيانات
  • 204 لا يوجد محتوى – تم تنفيذ الطلب بنجاح، لا يوجد نص متاح
  • 400 / 422 – بيانات أو مخطط غير صالح؛ قم بتعديل الحمولة أو عملية التحليل
  • 401 / 403 – مشكلات في المصادقة أو الأذونات
  • 404 – لم يتم العثور على المورد (غالبًا ما يكون ذلك بسبب مشكلة في المسار أو المعرف)
  • 409 – حدوث تعارض، مثل التكرارات
  • 429 – تم الوصول إلى الحد الأقصى لعدد الطلبات؛ يرجى تقليل وتيرة الطلبات
  • 500 – خطأ داخلي؛ يرجى إعادة المحاولة أو إبلاغ الدعم الفني في حالة استمرار المشكلة

تنطبق هذه الأنماط سواء كنت ترسل الفواتير أو تستلمها.

استخدم سجل المعاملات لمتابعة العمليات

بالإضافة إلى استجابات واجهة برمجة التطبيقات (API)، يمكنك دائمًا تسجيل الدخول إلى Qvalia ومراجعة الأنشطة في سجل المعاملات. يمنحك ذلك عرضًا عبر واجهة المستخدم لما يحدث في عملية التكامل الخاصة بك، بما في ذلك، على سبيل المثال:

  • الفواتير المرسلة والمستلمة
  • حالة المعاملات الفردية
  • تفاصيل الخطأ وتعليقات التحقق من الصحة
  • الطوابع الزمنية على المستوى التقني ومستوى الأعمال

يُعد سجل المعاملات مفيدًا في:

  • فرق الدعم المباشر وفرق العمليات التي لا تعمل مباشرة مع واجهة برمجة التطبيقات (API)
  • معالجة المشكلات المحددة التي أبلغ عنها العملاء أو المستخدمون الداخليون
  • التحقق من أن التغييرات التي أجريتها على عملية التكامل تعمل بالشكل المتوقع في بيئة الإنتاج

تقدم رموز حالة HTTP وسجل المعاملات معًا صورة شاملة: يمكن لنظامك الاستجابة برمجيًا للردود، بينما يمكن لفريقك التحقيق والمتابعة مباشرةً في Qvalia عند الحاجة.

ما وراء الفواتير: توسيع نطاق استخدام واجهة برمجة تطبيقات Peppol

بمجرد أن تصبح الفواتير جاهزة، يصبح من السهل توسيع نطاق التكامل ليشمل مجموعة كاملة من رسائل Peppol.

تشمل الامتدادات النموذجية ما يلي:
الطلبات. استلام وإرسال الطلبات المنظمة إلكترونيًا
الردود على الطلبات وتعديلاتها. تأكيد الطلبات أو تعديلها أو إلغاؤها
الكتالوجات. حفظ معلومات المنتجات والأسعار في الكتالوجات الإلكترونية
إشعارات الشحن. إرسال معلومات الشحن
الردود على مستوى الرسائل. تتبع إقرارات الاستلام على المستوى الفني والتجاري

ونظرًا لأن كل ذلك يستخدم نفس تصميم واجهة برمجة التطبيقات (API) ونموذج المصادقة ونموذج بيانات UBL 2.1، فلن تحتاج إلى مشاريع أو بوابات منفصلة لكل نوع من أنواع المستندات. وبذلك، يمكنك تلبية حالات استخدام جديدة مع تطور متطلبات عملك أو متطلبات عملائك.

وهنا يتجسد الوعد بـ«واجهة برمجة تطبيقات Peppol واحدة مهما كانت الاحتياجات»؛ حيث يخدم نفس نظام التكامل الموردين الصغار والشركات الكبيرة، فضلاً عن سيناريوهات المنصات المعقدة.

واجهة برمجة التطبيقات (API) للشركاء المخصصة لبرامج إصدار الفواتير وأنظمة تخطيط موارد المؤسسات (ERP)

إذا كنت مزودًا للبرمجيات — وتدير منصة لإصدار الفواتير، أو نظام تخطيط موارد المؤسسات (ERP)، أو حلًا محاسبيًّا، أو منصة تكامل — فإن متطلباتك تختلف قليلاً. باستخدام واجهة برمجة تطبيقات الشركاء (Partner API) من Qvalia، يمكنك إعداد تكوين متعدد المستأجرين لتبادل الرسائل مع المستخدمين النهائيين، بما في ذلك إدارة Peppol ID .

تكون واجهة برمجة التطبيقات (API) الخاصة بالشركاء لـ Peppol ضرورية إذا كنت بحاجة إلى:

  • تقديم الخدمة لعدد كبير من العملاء النهائيين من خلال منصة واحدة
  • احرص على الفصل التام بين بيانات ومعاملات كل عميل
  • تجنب تشغيل نقطة وصول Peppol أو بوابة EDI خاصة بك

وقد صُمم نموذج «كفاليا» الذي يركز على الشركاء خصيصًا لهذا الغرض.

كيفية إعداد الشريك

  • يتم تسجيل شركتك كشريك وتُمنح رقم تعريف الشريك.
  • يمكنك الاختيار بين طريقتين للتعامل مع رسائل المستخدمين النهائيين: 1) حساب مستخدم مشترك موحد، أو 2) حسابات Qvalia فردية لكل مستخدم نهائي، يكون لكل منها رقم حساب خاص به (accountRegNo).
  • تتضمن استدعاءات واجهة برمجة التطبيقات (API) كلاً من سياق الشريك وحساب العميل المحدد، مما يتيح لك إرسال الرسائل وتلقيها نيابة عنهم.

مثال: تنفيذ الشريك

التأهيل

  • تتلقى مؤسستك بيانات اعتماد الشريك وإعداداته، بما في ذلك رقم التسجيل الخاص بالشريك (partnerRegNo) ومفتاح واجهة برمجة التطبيقات (API).
  • يمكنك إعداد تكامل واحد مع واجهة برمجة تطبيقات (API) Qvalia، باستخدام /partner/{partnerRegNo} البادئة لجميع المكالمات التي تقع ضمن نطاق الشريك.

إعداد العملاء لاستخدام منتجك

  • عندما يقوم أحد العملاء بتفعيل خدمة Peppol/الفواتير الإلكترونية من خلال واجهة المستخدم الخاصة بك، يتم إنشاء حساب Qvalia لهذا العميل أو ربط حسابه الموجود بالفعل.
  • تقوم بتخزين رقم حساب العميل (RegNo) جنبًا إلى جنب مع معرّف العميل الخاص بك حتى تتمكن من معالجة المعاملات لكل عميل على حدة.

عدد المعاملات المرسلة والمستلمة لكل عميل

يقوم تطبيقك بإنشاء أو استخدام حمولات UBL (الفواتير، الطلبات، وما إلى ذلك) بنفس الطريقة المتبعة مع واجهة برمجة تطبيقات المعاملات القياسية. لإرسال المعاملات أو استلامها نيابة عن عميل معين، يمكنك استدعاء واجهة برمجة تطبيقات المعاملات من خلال نمط URI المسبوق ببادئة الشريك:

/شريك/{رقم تسجيل الشريك}/معاملة/{رقم تسجيل الحساب}/{نوع الرسالة}/{الاتجاه}
/partner/{partnerRegNo}/transaction/{accountRegNo}/{message-type}/{direction}

على سبيل المثال:

  • إرسال فاتورة: /partner/{partnerRegNo}/transaction/{accountRegNo}/invoices/outgoing (منشور)
  • استرداد الفواتير الواردة: /partner/{partnerRegNo}/transaction/{accountRegNo}/invoices/incoming (احصل على)
  • استخدام read الخيارات المتاحة، حيثما أمكن، عن طريق إضافة read في المسار.

تقوم Qvalia بتوجيه الرسائل واستلامها كما لو كانت قد أُرسلت أو استُلمت مباشرةً من قبل العميل، مع إمكانية تتبع كاملة لكل حساب.

المزايا التي تعود على بائعي البرمجيات

  • تكامل تقني واحد، والعديد من العملاء، مع الاعتماد على نموذج موحد للشركاء والحسابات.
  • لا داعي لتشغيل وصيانة شبكة Peppol أو EDI الخاصة بك.
  • سهولة التوسع إلى أسواق جديدة ومهام وأنواع رسائل جديدة من خلال إعادة استخدام نفس نمط تكامل الشركاء.

وظائف إضافية: إثراء الوكلاء بالذكاء الاصطناعي

بالإضافة إلى خدمات النقل والربط، توفر «كفاليا» أيضًا واجهة برمجة التطبيقات (API) الخاصة بالتنقيح، والتي يمكنها إثراء المعاملات من خلال تصنيف البنود الفردية، والمعالجة قبل وبعد إتمام المعاملة، وغير ذلك، كما يمكنها استخراج مستندات PDF وتحويلها إلى بيانات غنية ومنظمة وموثوقة بأقل جهد ممكن.

تم تصميم واجهة برمجة تطبيقات Enrichment لتكون خدمة غير متزامنة:

  • تقوم بإرسال ملف فاتورة (مثل PDF أو XML) عبر واجهة برمجة التطبيقات (API).
  • ستتلقى معرّف الاستطلاع (pollingId) في الرد.
  • تقوم بالاستعلام عن الحالة حتى اكتمال عملية التخصيب.
  • ستحصل على نتيجة JSON منظمة تحتوي على معلومات إضافية.

ويمكن أن تشمل هذه النتيجة ما يلي:

  • محتوى الفاتورة الذي تم تحليله واستخراجه من الملف الأصلي
  • التحقق من مطابقة المعايير وفقًا لـ Peppol أو القواعد التجارية الأخرى
  • الحقول المعيارية المناسبة للتحليلات والأتمتة وسير عمل الذكاء الاصطناعي

نمط التنفيذ

يبدو التكامل النموذجي كما يلي:

أرسل فاتورة لتعزيز البيانات
استدعِ نقطة نهاية، وأرفق ملف الفاتورة وأي بيانات وصفية ذات صلة، ثم
احفظ معرّف الاستقصاء (pollingId) الذي تم إرجاعه.

POST /enrichment/{accountRegNo}/invoice
POST /enrichment/{accountRegNo}/invoice

استدعاء "
" للتحقق من اكتمال العملية. يُنصح باستدعاء هذه الوظيفة على فترات زمنية مناسبة. أثناء المعالجة، تؤكد واجهة برمجة التطبيقات (API) أن المهمة لا تزال قيد التنفيذ. وعند الانتهاء، تُرجع حالة العملية ورابطًا إلى نتيجة عملية الإثراء.

GET /enrichment/{accountRegNo}/{pollingId}
GET /enrichment/{accountRegNo}/{pollingId}

استرداد أنواع معينة من البيانات المُثريّة استدعاء
للحصول على ناتج معين من البيانات المُثريّة — على سبيل المثال، بيانات الفواتير التفصيلية أو نتائج التحقق من صحة Peppol. قم بتغذية هذه البيانات في نظام المحاسبة الخاص بك أو مجموعة أدوات التحليلات أو منطق الأتمتة.

GET /enrichment/{accountRegNo}/{pollingId}/{enrichmentType}
GET /enrichment/{accountRegNo}/{pollingId}/{enrichmentType}

حالات الاستخدام

  • يمكن للشركات الصغيرة
    الاستفادة من معالجة المستندات الذكية على مستوى المؤسسات؛ والحصول على بيانات نظيفة ومنظمة دون الحاجة إلى الاستثمار في أدوات معقدة للتعرف الضوئي على الحروف (OCR) أو أدوات التحقق من الصحة.
  • يمكن Large
    توحيد بيانات الفواتير والمستندات عبر الكيانات والأنظمة والمناطق الجغرافية، مما يتيح تحسين التحكم في البيانات والتحليلات وأتمتة العمليات المحاسبية.
  • يمكن لموردي البرمجيات والشركاء
    دمج قدرات إثراء متقدمة مباشرةً في منتجاتهم، دون الحاجة إلى إنشاء محركات تحليل وقواعد خاصة بهم.

في جميع الأحوال، يعد الوصول إلى هذه التقنية أمرًا بسيطًا: حيث يتم استخدام نفس الحساب ونموذج الأمان المطبق في واجهة برمجة التطبيقات الخاصة بالمعاملات (Transaction API)، بالإضافة إلى مجموعة صغيرة من نقاط النهاية المحددة بدقة.

الوصول إلى واجهة برمجة تطبيقات Peppol لأي شركة

تم تصميم واجهة برمجة التطبيقات (API) الخاصة بـ Qvalia لتوفر لك نقطة وصول مبسطة وقابلة للتوسع إلى شبكة Peppol، بغض النظر عن نوع شركتك:

  • شركة صغيرة تحتاج إلى تبادل الفواتير الإلكترونية المتوافقة مع المعايير
  • شركة كبيرة تدير تدفقات ضخمة تشمل عدة كيانات
  • شركة برمجيات تقدم حلولاً في مجالات إصدار الفواتير، وتخطيط موارد المؤسسات (ERP)، أو الشؤون المالية للعديد من العملاء

الخطوة التالية واضحة ومباشرة: قم بالاتصال ببيئة الاختبار، وأرسل أول فاتورة تجريبية، وابدأ في التخطيط لكيفية جعل Peppol وEDI وعمليات الإثراء جزءًا لا يتجزأ من عملياتك أو منتجك — بدلاً من أن تكون مشروعًا منفصلاً ومعقدًا.

هل كانت هذه المقالة مفيدة؟

مقالات ذات صلة

المحتويات

هل تحتاج إلى مساعدة؟

ألا تجد الإجابة التي تبحث عنها؟
اتصل بالدعم الفني