Skip to content

xhubio/prestashop_invoice_api_xhub

Repository files navigation

Invoice-api.xhub for PrestaShop

License: MIT

Free, MIT-licensed PrestaShop module that turns orders into compliant e-invoices via the invoice-api.xhub.io service. Live formats: PDF, XRechnung 3.0 (German B2G/B2B, EN 16931 / Peppol BIS Billing 3.0) and ZUGFeRD 2.3/2.4 (hybrid PDF/A-3 with embedded XML, Germany/Austria).

🇩🇪 Deutsche Anleitung im README.de.md. 🇫🇷 Documentation française dans README.fr.md.

How it works

When an order's status changes the module sends the order to invoice-api.xhub.io and stores the returned invoice file under modules/prestashop_invoice_api_xhub/files/<orderID>/. Trigger states (off / on_pending / on_processing / on_completed) and target format are configurable per shop. Invoices can also be generated manually for any order from the module's Configure page.

Requirements

Install

  1. Download prestashop_invoice_api_xhub-1.0.0.zip (public release pending — contact support@invoice-api.xhub.io for early access).
  2. PrestaShop Back-Office → Modules → Module Manager → Upload a module → upload the ZIP.
  3. The module auto-installs. Modules → Module Manager → find "Invoice-api.xhub for PrestaShop" → click Configure.
  4. Fill in:
    • API key (from console.invoice-api.xhub.io/api-keys)
    • Country (default DE) and Format (PDF / XRechnung / ZUGFeRD)
    • Trigger (default: on payment received)
    • Seller block — your company name, VAT-ID, address, email, phone
    • Bank — IBAN + BIC (required for SEPA payment instructions in XRechnung/ZUGFeRD)
    • Country-specific (DE) — Default Leitweg-ID for B2G XRechnung (optional)
    • Template — UUID of a custom PDF template from console.invoice-api.xhub.io/pdf/templates (optional)
  5. Save settings.

Generate your first invoice

After install:

  1. Modules → Module Manager → Invoice-api.xhub for PrestaShop → Configure.
  2. Pick an order from the dropdown → click "Generate now".
  3. The module posts to invoice-api.xhub.io, stores the result on disk, and shows a green confirmation with template + API hash diagnostic.
  4. The "Generated invoices" history table on the same page lists every invoice with format, byte size, timestamp, template UUID and API hash.

For automatic generation: change an order's status in the Back-Office. The actionOrderStatusUpdate hook fires on every status change and the module generates the invoice when the new status matches the configured trigger.

Custom PDF templates — when the output looks the same

Configure the Template UUID in Configure. The module sends it to the API on every generation. The Configure page shows for each generated invoice exactly which template UUID was sent (column "Template" in the History table) and the API's content hash.

A custom template inherits the system default until you actually edit its layout, logo and colors at console.invoice-api.xhub.io/pdf/templates. If your generated PDF still looks identical to the default, the UUID is reaching the API correctly (visible in the History table) — the template content itself has not yet been customised.

Country support (11 country profiles)

Country Code XRechnung ZUGFeRD PDF
Germany DE
Austria AT
France FR
Italy IT
Spain ES
Belgium BE
Netherlands NL
Bulgaria BG
Romania RO
Czech Republic CZ
Hungary HU

API roadmap (Q3 2026 onwards): Factur-X (FR), FatturaPA (IT), Facturae (ES), ebInterface (AT), UBL, ISDOC (CZ), NAV (HU). The module will surface these in the Format dropdown automatically as soon as the API supports them.

Compliance

  • §14 UStG (Germany) — gap-free atomic invoice numbering when using the {seq:0000} token format. The counter lives in a dedicated DB table and is race-safe under concurrent generations.
  • EN 16931 + XRechnung 3.0 + Peppol BIS Billing 3.0 for German B2G XML invoices.
  • GDPR — all invoice files live on your own server; nothing is stored externally except the API call to invoice-api.xhub.io for the document generation itself. Uninstalling with "delete data" cleanly removes both DB tables and all generated files.

Where files and data go

  • Generated invoices: modules/prestashop_invoice_api_xhub/files/<orderID>/<filename>
  • Sequence counter: ps_xhubio_invoice_api_xhub_seq table
  • Per-order metadata (filename, format, template UUID, API hash, error history): ps_xhubio_invoice_api_xhub_meta table

The Configure page shows the resolved storage path, total invoice count, and the most-recent generation timestamp.

Support

License

MIT — see LICENSE.md for the full text.

About

Free, MIT-licensed PrestaShop module that turns orders into compliant e-invoices via the invoice-api.xhub.io service. Live formats: PDF, XRechnung 3.0 (German B2G/B2B, EN 16931 / Peppol BIS Billing 3.0) and ZUGFeRD 2.3/2.4 (hybrid PDF/A-3 with embedded XML, Germany/Austria).

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors