Facture semi-auto

Mise à jour

Une mise à jour a été faite le 10/01/2026 10h30.

Pour les personnes qui ont installé le script avant cette date :
Après dézippage, remplacer le fichier index.php

Il a été ajouté un bouton permettant la mise à jour des infos du commerçant. Vous ne perdez rien dans le fonctionnement du script. La seule chose est d'effectuer la facturation des dernières commandes avant de transférer ces deux fichiers.

Une nouvelle mise à jour le 16/01/2026 23h00.

Voir Sécurité du dossier. Un fichier ' .htaccess ' à été ajouté au dossier.

Préambule

N'étant pas commerçant, j'ai suivi les infos données sur les sites spécialisés, je demande aux personnes utilisant les systèmes de facturation de m'indiquer les manquements à la création de la facture. Merci.

Ce script à inclure sur votre site permet de créer une facture en recherchant automatiquement les infos dans les bons de commandes, même si votre client ne se connecte pas à son compte personnel.

Les numéros de facture sont incrémentés automatiquement et par défaut sont de la forme " AAAA_MM_ num de série " soit  2026_01_001 pour la première facture de janvier 2026 et les fichiers correspondants sont " numéro de commande__fact_numéro de facture.html " donc 19B9BD21C0F__fact_2026_01_013.html pour la 13ème facture de janvier 2026 correspondant à la commande 19B9BD21C0F.

Fichier à télécharger

Il vous faut d'abord récupérer le fichier facture.zip (avec un indice 2 éventuel), puis le dézipper. 

Dans le dossier, il y a deux fichiers images à remplacer (un sûr) , ' logo.png ' que vous remplacez par l'image de votre logo et ' fondfacture.jpg ' qui est l'image de mon fond actuel si vous en voulez un autre mais en conservant ces noms de fichiers impérativement. Si vous ne voulez pas du fond, vous supprimez le fichier ou vous le renommez (ex: fondfacture2.jpg).

Le fichier numfact.txt contient le prochain numéro de série, par défaut au démarrage  il est à " 1 ". Si vous utilisez la même notation pour vos factures et que vous en avez déjà en cours, vous modifiez ce fichier avec le prochain numéro.

Sécurité du dossier

Cela concerne la protection du dossier contre les intrusions via l'url dans la barre du navigateur.
Ouvrez le fichier .htaccess avec le simple bloc-notes de Windows et indiquez vos deux adresses IP, l'ip V4 et l'ip V6 de votre box, ces adresses fournies par votre FAI doivent être 
fixes sinon vous même n'aurez pas accès au dossier de même que si vous utilisez un VPN pour naviguer (ce dernier me sert justement à faire les tests).

Si vous accédez à votre facturation à partir de différentes box, vous devrez ajoutez les 2 lignes "allow from xxxxxxx"  nécessaires pour les 2 nouvelles IP à la suite des deux premières. Si vous ne connaissez pas ces IP, rendez-vous sur votre compte de FAI.
Contenu du fichier

Order deny,allow
deny from all
allow from xx.xxx.xxx.xx                 mettez ici votre IPV4
allow from xxxx:xxx:xxxx:xxx::/yy   mettez ici votre IPV6 (normalement appelé préfixe IPV6)

Transfert du dossier

Si cela est pour vous une mise à jour, n'ajoutez que le fichier .htaccess à votre hébergement (et remplacer le index.php si vous effectuez la première mise à jour), autrement vous placez le dossier complet après avoir fait les manips ci-dessus sur votre hébergement à l'aide de FileZilla ou un autre logiciel ftp. Il est possible aussi que votre hébergeur en propose un. 

Créer votre rubrique

Vous créez une rubrique sécurisée (identifiant+mot de passe ou mot de passe seul (à vous de voir)). A vous de choisir le "Nom du fichier" dans l'Optimisation du référencement" (dans ce tuto je l'ai appelé "facture.php" pour l'exemple).
  ***  ⚠️  Le suffixe est " .php" du fait que la page est protégée. ***

Dans la "Section <head> ....." onglet " HEAD " , ajouter ces lignes :

<style>
iframe {
width: 95%;
height: 1100px;
}
</style>


Quatre façons d'y accéder sur votre site. N'oubliez pas de remplacer "facture" par le nom du fichier choisi plus haut.

  1. Vous l'afficher en sous-menu (déconseillé).
  2. Vous créez un lien qui dirige vers cette rubrique cachée. (non visible du menu)
  3. Plus sécurisé, toujours en rubrique cachée, vous ajoutez son nom à l'url de votre site dans la barre du navigateur.
    ex: https://monsite.fr auquel vous ajouter "/facture.php" deviendra https://monsite.fr/facture.php.
    Ainsi votre rubrique est totalement transparente. N'oubliez pas qu'au survol d'un lien, les url apparaissent en bas de page du navigateur.
  4. Vous pouvez créer un lien sur votre bureau contenant la même url complète que ci-dessus.
  

Champs HTML

Vous devez ensuite créer deux champs HTML auxquels vous donnez le nom de votre choix. 

Le premier %XXXXX% contiendra

<button style="font-size:12px; cursor:pointer;" onclick="location.reload()">Retour vers la sélection de commande</button>

Le second %YYYYY% contiendra

<iframe src="facture/index.php" frameborder="0"></iframe>

Vous placez ensuite ces deux champs dans votre rubrique, le second en-dessous du premier (logique, non ! 😁)


Seules apparaîtront dans la liste déroulante les commandes passées après l'installation de ce script.
Si des commandes antérieures n'ont pas été traitées, les factures devront être établies avec votre ancienne méthode.

Première connexion

A la première connexion, le script demandera d'entrer vos données de commerçants dans ce formulaire.
Comme indiqué, l'utilisation de guillemets peut produire des anomalies, utilisez deux apostrophes à la place.
L'url de votre site Web doit se terminer impérativement par " / ".


Formulaire

Site de test

Il n'y a pas plus d'image ici, vous verrez mieux en testant par vous-même la totalité du système sur mon site de test https://cestmesfactures.fr/fact 

Vous créez des commandes (Boutique) bidons mais complètes, seule l'adresse email devra être ok pour établir vos factures tout aussi factices. Vous serez donc clients et commerçants.

Le mot de passe de la rubrique Factures est " toto " (compliqué et recherché 😁🤣)

Lien copié dans le presse-papiers
Personnaliser

Seuls 2 cookies sont proposés en plus du cookie fonctionnel, Google Analytics et Facebook. Ils sont désactivés par défaut

Google Analytics

Google Analytics est un service utilisé sur notre site Web qui permet de suivre, de signaler le trafic et de mesurer la manière dont les utilisateurs interagissent avec le contenu de notre site Web afin de l’améliorer et de fournir de meilleurs services.

Facebook

Notre site Web vous permet d’aimer ou de partager son contenu sur le réseau social Facebook. En l'utilisant, vous acceptez les règles de confidentialité de Facebook: https://www.facebook.com/policy/cookies/