الفواتير

مع autoVat=true الافتراضي تحدد الواجهة نسبة الضريبة وفق تسجيل شركتك في الضريبة/OSS وبلد العميل ورقمه الضريبي (محلي / احتساب عكسي / OSS / تصدير). الترقيم بلا فجوات ومشترك مع اللوحة. لا يوجد حذف للفواتير عبر API — إلغاء فقط.

الحالةالنسبةملاحظة
الشركة غير مسجلة ضريبيًا0taxRate>0 يدويًا → 422
نفس البلد (محلي)نسبة بلد البائعمثل EE ‏24%
B2B داخل الاتحاد (برقم ضريبي)0احتساب عكسي — vatNote تلقائي
B2C داخل الاتحاد + OSSنسبة بلد المشتريمثل DE ‏19%
B2C داخل الاتحاد بدون OSSنسبة بلد البائع
بيع خارج الاتحاد0إعفاء التصدير — vatNote تلقائي

نقاط النهاية

POST/invoicesالصلاحية: write:invoices

مدفوع (عداد لكل فاتورة)

يُصدر فاتورة. autoVat مفعّل افتراضيًا.

مثال طلب

curl -X POST -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  https://corpenza.com/api/external/accounting/invoices -d '{
  "clientName": "Berlin GmbH",
  "clientCountry": "DE",
  "clientVatNumber": "DE123456789",
  "items": [
    { "description": "Consulting", "quantity": 2, "unitPrice": 250 }
  ]
}'

مثال استجابة

{
  "id": "inv_...",
  "invoiceNumber": "CRP-202606-0042",
  "taxRate": 0,
  "total": 500,
  "vatNote": "Reverse Charge - ...",
  "vatReason": "Intra-EU B2B — Reverse Charge"
}
GET/invoicesالصلاحية: read:invoices

قائمة الفواتير (مرشحات status وfrom وto وpage وlimit).

مثال طلب

curl -H "Authorization: Bearer $API_KEY" \
  "https://corpenza.com/api/external/accounting/invoices?status=SENT&page=1&limit=20"
GET/invoices/{id}الصلاحية: read:invoices

تفاصيل فاتورة (بنود + مدفوعات).

POST/invoices/{id}/cancelالصلاحية: write:invoices

يلغي الفاتورة (دون حذف). لا يمكن إلغاء PAID ‏(409).