Une bibliothèque PHP pour créer des parties de paiement Swiss QR Bill ( QR-Rechnung ).
composer require sprain/swiss-qr-bill
Alors jetez un œil à example/example.php.
Pourquoi mon IBAN ne fonctionne pas ?
Une facture QR typique (exemple) nécessite un QR IBAN spécial. Vous pouvez obtenir le vôtre auprès de votre banque. Un IBAN classique peut être utilisé pour les factures QR avec une référence SCOR (exemple) ou sans numéro de référence (exemple).
Comment reconnaître un QR IBAN ?
Dans un QR IBAN, l' identifiant de l'institut , défini du 5ème au 9ème caractère, est un nombre compris entre 30000 et 31999. (Exemple : CH44 3199 9 123 0008 8901 2). Pour savoir comment le détecter dans le code, voir #182 (commentaire)
Comment créer des factures QR pour les IBAN internationaux ?
Vous ne pouvez pas. La facture QR par spécification ne prend en charge que les IBAN de Suisse et du Liechtenstein.
Comment puis-je prendre en charge les devises autres que CHF ou EUR ?
Vous ne pouvez pas. La facture QR par spécification ne prend en charge que les CHF et EUR.
Comment puis-je modifier les traductions pour utiliser mes propres mots ?
Vous ne pouvez pas. Les traductions sont définies dans les spécifications de la facture QR et ne sont pas destinées à être modifiées par l'utilisateur. Voir ce document, page 31.
Comment rendre mes factures QR payables par Twint ?
Voir #129
Quelles bibliothèques PDF sont prises en charge par cette bibliothèque ?
Les bibliothèques suivantes sont actuellement activement prises en charge :
FpdfOutput
et TcPdfOutput
) La sortie de HtmlOutput
est connue pour être utilisée pour générer des PDF avec PrinceXML, Docraptor et dompdf/dompdf (avec quelques ajustements décrits ici)
Pourquoi utilisez-vous final
sur la plupart des cours ? Je veux les prolonger !
Cette bibliothèque implémente la spécification officielle de la facture QR. Cette implémentation n'est pas censée être ajustée car elle pourrait entraîner des factures QR cassées. C’est pourquoi de nombreux cours sont marqués comme finaux. Si vous ressentez le besoin d'étendre l'une de ces classes finales, vous avez peut-être trouvé un bug dans cette bibliothèque. Dans ce cas, il sera très utile de fournir ici un rapport de bug ou même une pull request. Merci!
Avez-vous besoin de plus d'aide pour utiliser cette bibliothèque ?
Veuillez noter que le responsable de cette bibliothèque ne fournira aucune assistance par e-mail. La beauté des logiciels open source réside dans le fait que tout le monde peut bénéficier les uns des autres. Les questions recevront donc une réponse uniquement en public.
Le versioning sémantique est utilisé pour cette bibliothèque.
De plus, une version mineure sera toujours publiée en cas de changement visible dans la sortie du code QR ou dans la partie paiement, même si cela peut être considéré comme une simple correction de bug.
Cette bibliothèque prend en charge une version PHP à condition qu'elle représente au moins environ 10 % des installations actuelles.
Les anciennes versions des dépendances sont prises en charge tant qu'elles n'empêchent pas le développement ultérieur ou ne représentent pas au moins environ 10 % des installations actuelles de la dépendance correspondante.
Le référentiel contient les spécifications officielles sur lesquelles la bibliothèque est basée :
Pour plus d'informations officielles, voir
Comment générer de nouvelles données de test :
$regenerateReferenceFiles = true
dans TestQrBillCreatorTrait
composer update --prefer-lowest
vendor/bin/phpunit
– ignorer les tests ayant échoué dans testQrFile
composer update
vendor/bin/phpunit
– il ne devrait plus y avoir d'erreurs$regenerateReferenceFiles = false
dans TestQrBillCreatorTrait