Skip to content

Palks-Studio/invoice-stamper

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

53 Commits
 
 
 
 
 
 
 
 

Repository files navigation

PDF invoice stamping interface

🇬🇧 English | 🇫🇷 Français

License PDF Engine Bilingual Batch Invoicing (Factur-X)

PDF Invoice Receipt Stamper

This repository is a technical presentation and documentation repository.
It does not contain downloadable source code or production files.

Add-on for the Factur-X EN16931 batch invoicing service. The batch generation engine is available in the automation_finance repository.

Password-protected web interface to stamp PDF invoices as "PAID" — one at a time or in bulk, with a client-structured ZIP export.

This tool is designed to be deployed directly
within the client's environment.

It allows a payment confirmation stamp to be applied
to existing PDF invoices and prepares them
for submission to the batch invoicing service.

Batch Invoicing (Factur-X)


Overview

  • Monthly ZIP upload via drag & drop
  • Direct PDF stamping without ZIP — accepts any PDF file
  • Auto-detected invoice list with client, reference and period
  • Single or batch stamping
  • Client-structured ZIP export for direct forwarding
  • Red stamp overlaid on the original PDF via FPDI
  • Password-protected interface with brute-force protection

No database is used.

Files are processed temporarily during the stamping process
and downloaded immediately.

Depending on the client environment configuration,
stamped invoices can also be archived
in a dedicated system directory.

Requirements

  • PHP 8.0+
  • PHP extensions:
    • zip
    • mbstring
  • Composer

Deployment

This tool is designed to be deployed directly within the client’s environment.

No public installation procedure is provided.


How it works

Direct PDF stamp
Drop any individual PDF file into the dedicated section, enter the payment date, download the stamped PDF immediately. This function accepts any PDF — it is not limited to invoices issued by the batch billing service.

Single stamp
Click "Mark as paid" next to an invoice, enter the payment date, download the stamped PDF.

Batch stamp
Check multiple invoices or use "Select all", click "Mark selection as paid", enter a shared payment date. A ZIP is generated with all stamped PDFs, structured by client reference:

factures_acquittees.zip
  clientRef/
    F-2025-001_ACQUITTEE.pdf
    F-2025-002_ACQUITTEE.pdf

The original file is never modified. The stamp is applied to a copy generated on the fly and deleted after download.


Dependencies

Library Usage
setasign/fpdi Read and annotate the original PDF
setasign/fpdf PDF generation
JSZip Client-side ZIP generation

Security

  • Password authentication with brute-force protection
  • Secure session management
  • Protection against unauthorized file access
  • Strict validation of payment data
  • Temporary files removed after processing
  • HTTP response security policies (content type, caching, indexing)

Context

This engine is an add-on to the Factur-X EN16931 batch invoicing service by Palks Studio. It is designed to be deployed once on the client's server, with no dependency on the main batch engine after installation.


© Palks Studio — see LICENSE.md
https://palks-studio.com

About

🇬🇧 PHP web interface to stamp PDF invoices as paid — single or batch, with client-structured ZIP export, no database, no dependencies beyond FPDI 🇫🇷 Interface web PHP pour acquitter des factures PDF — à l'unité ou en lot, export ZIP structuré par client, sans base de données ni dépendances hors FPDI

Topics

Resources

License

Stars

Watchers

Forks

Contributors