Signature électronique

Bonjour,

Existe-t-il un module pour signer électroniquement les factures émises par Dolibarr ?

Je vous remercie

F. Deydier

Bonjour,
J’ai commencé a y travailler mais c’est pas simple. Pour l’instant c’est en attente car besoin moindre et pas de finance.
Actuellement, j’envoie des facture PDF/A, ce qui est demandé par mes clients.
@+

Bonjour,

Depuis quelques temps les administrations ont l’obligation d’accepter des factures signées. Et au 1er janvier 2017, les hopitaux vont basculer vers des factures signées (plateforme Chorus). Le besoin est là !!!

Où en est le développement ? Quels sont les difficultés rencontrées ?

F. Deydier

Il n’y a pas besoin de documents signés pour Chorus Pro. Je travaille sur le sujet car c’est une grosse partie de ma clientèle. J’ai dans mon équipe une consultante spécialisée dématérialisation. Nous préparons une interface dolibarr -> chorus et c’est pas le PDF qui est retenu mais du xml. Ce qui évite la saisie dans Chorus

Je reviendrai en temps et heure pour annoncer le module et surtout lancer une participation.

@+

Bonjour,
je me permet de remonter ce thread pour vous informer que nous travaillons sur le projet Chorus Pro :
www.dolibarr.fr/forum/t/projet-chorus-facturation-de-structure-publique/25944/1
Si vous voulez bien mutualiser les efforts, nous serions ravi de collaborer avec vous.

Bonsoir,

Je suis aussi intéressée par une interface entre Dolibarr et un tiers qui permet une signature électronique, tel que DocuSign ou YouSign (c’est à dire avec garantie de l’identité des signataires et l’intégrité du document signé). Existe-t-il une interface entre Dolibarr et l’un de ces tiers (appelé dans le jargon « prestataires de services de confiance ») ?

Mon objectif : une fois mes propositions commerciales préparées dans Dolibarr, permettre à mes clients qui vont les accepter de les signer électroniquement.

Merci de votre réponse.

Et bonnes fêtes de fin d’année à tous les lecteurs du forum !

Bonjour,

Nous serions interessé également par un module de signature electronique dans dolibarr !!

N’hésitez pas à revenir vers nous si besoin de renseignement sur notre besoin,

Henosis

Bonjour,
pour les signatures électronique allez voir ici :
www.dolibarr.fr/forum/t/comment-signer-en-ligne-une-proposition-commercial/26955/6

Bonjour

Je viens d’implémenter une solution pour Linux. Elle peut être adapté pour les autres systèmes.

J’ai eu recours à JSignPdf ( http://jsignpdf.sourceforge.net/ ) - cela fonctionne avec java. J’ai par ailleurs un certificat de signature pour le code qui fonctionne aussi pour les PDF.

Cette méthode nécessite l’installation de java ainsi que les paquets:

apt-get install liblog4j1.2-java
apt-get install realpath
apt-get install iwatch

La protection des documents pdf doit être désactivé dans Dolibarr, sinon le JSignPdf indiquera qu’il ne connait pas le mot de passe du document (dans le sous-menu PDF de la configuration ou /admin/pdf.php?mainmenu=home&leftmenu=setup ) . Je n’ai pas prévu d’ajouter de nouveau un mot de passe dans le document pdf signé - libre à vous d’ajouter l’option JSignPdf nécessaire.

J’ai mis au point ce script pour lancer la signature sur un pdf que j’appelle ‹ signpdf › - cela ne traite juste le cas « signpdf <inpdf> » correctement. Ce script doit être « executable » bien sûr (chmod +x signpdf).

#!/bin/bash -xv
# Modified from From https://wiki.lyx.org/FAQ/PDF#digitalsignpdf
# Sign PDF file.
# signpdf <inpdf>
#  OR
# signpdf <inpdf> <outpdf>

# Personalize:
JSIGNPDF=PATHTOJSIGNPDF/jsignpdf-1.6.3/JSignPdf.jar
CERT=<PATHTOKEYFILE>/<KEYFILE>.pfx
PASS=<PASSWORDFORKEY>
LOCATION="<CITY>"
#SIGNTEXT='--l2-text "Signée numériquement par (${signer} le ${timestamp} à ${location}, ${reason}, ${contact})'
#SIGNTEXT2='--l4-text (${signer}, ${timestamp}, ${location}, ${reason}, ${contact})'

INFILE="$1"
OUTFILE="$2"

if [[ ${INFILE: -4} != '.pdf' ]] ; then
  echo Not a PDF $INFILE
  exit
fi


JSP="java -Duser.language=fr -jar $JSIGNPDF "
LOCATION="-l '${LOCATION}'"
# set TS=-ts https://freetsa.org/tsr  -ta NONE -tsh SHA512
TS="-ts http://timestamp.comodoca.com/rfc3161 -ta NONE -tsh SHA512"
OCSP=" --ocsp"
V=" -llx 5 -lly 0 -urx 500 -ury 30 -V -fs 8"
CL=" -cl CERTIFIED_NO_CHANGES_ALLOWED"
# CL=" -cl CERTIFIED_FORM_FILLING_AND_ANNOTATIONS"


TMPFILE=$(basename "${INFILE%.pdf}_signed.pdf")
if [[ "$OUTFILE" == "" ]] ; then
  # If target PDF is empty, backup source PDF
  OUTFILE="$INFILE"
  ORGFILE="${INFILE%.pdf}_unsigned.pdf"
fi

WORKDIR=/tmp
TMPFILE="${WORKDIR}/${TMPFILE}"
$JSP -d $WORKDIR -kst PKCS12 -ksf $CERT -ksp $PASS -ha SHA512 $TS $OCSP $V $CL $SIGNTEXT $SIGTEXT2  $INFILE 

mv "$INFILE" "$ORGFILE"
mv "$TMPFILE" "$OUTFILE"

Il faut activer le daemon « iwatch » en mettant « START_DAEMON » à true dans « /etc/default/iwatch ». Au moment de la fin d’écriture d’un fichier dans le répertoire surveillé, cela lance le script « signpdf ».
Et ajouter qqchse comme ceci au fichier de configuration (/var/dolibarrdocs et le chemin vers mes fichiers « PDF » de dolibarr) :

...
  <watchlist>
    <title>Dolibar signing</title>
    <contactpoint email="root@localhost" name="Administrator"/>
    <path type="recursive" syslog="on" alert="off" events="close_write" exec="sudo -u www-data /home/www-data/signpdf %f >> /LOGDIR/pdf.log">/home/dolibarrdocs</path>
  </watchlist>

...

après (re)lancer le service « iwatch » ( « service restart iwatch » ou équivalent)

Pour faire des signatures sélectives, il conviendra de modifier le script « signpdf » et/ou la configuration de « iwatch » pour ne surveiller que certains répertoires.

Sur le site LyX wiki | FAQ / PDF il y a le script d’origine pour windows à partir duquel je suis parti pour faire le script pour bash.

Pièces jointes :

Le renommage du répertoire « (PROV…) » vers son nom définitif fait que le script permettant de signer le PDF reçoit (en fonction des cas) un chemin incorrect.

Pour lutter contre cela, j’ai ajouté qqs lignes au script:

if [[ ! -x "${INFILE}" ]] ; then
  FILEDIR=$(dirname "$INFILE")
  FILEDIR=$(dirname "$FILEDIR")
  FILENAME=$(basename "$INFILE")
  INFILE=$(realpath $(echo "${FILEDIR}/*/${FILENAME}"))
  echo Changed to "$INFILE"
fi

Ceci fait une recherche du fichier dans les sous-répertoires de tous les répertoires parents. En principe il y a un seul fichier avec ce nom ce qui fait que c’est une astuce suffisante.

Pièces jointes :

Bonjour à tous,

Nous avons développé pour la signature en ligne un module sur le Dolistore :
https://www.dolistore.com/fr/modules/1270-MBI-Signature.html

N’hésitez pas si vous avez des questions.

Mathieu B.
MB INFORMATIQUE

Bonjour,
une autre offre est proposée avec un tiers de confiance qui appose son certificat électronique et vérifie l’identité des signataires via mail + sms … on en parle ici :

https://www.dolibarr.fr/forum/t/signature-electronique-eidas-certificat-validite-long-terme/