Bonjour,
Déjà, notez que vous avez une option "Invoice number format" dans la configuration HikaShop qui voir permet de définir vous-même le format du numéro de facture:
www.hikashop.com/support/documentation/5...nfig.html#main_order
Avec le format par défaut, le système se base sur le order_invoice_id. D'abord le système va récupérer le order_invoice_id le plus grand de la période concernée dans les commandes existantes.
Donc, si vous avez l'option "Invoice reset frequency" désactivée, il prend en compte toutes les commandes.
Ensuite il ajoute 1 à ce nombre et l'enregistre en tant que order_invoice_id de la commande, puis il génère le numéro de facture en fonction du format et potentiellement order_invoice_id.
Si vous émettez des avoirs extra-HikaShop, j'imagine que vous voulez qu'ils respectent le plan de numérotation. Et donc, si vous av uniquement deux factures A1 et B2 dans HikaShop, j'imagine que vous voulez créer un avoir avec le numéro C3. Cependant, si vous faites cela, n'y aura-t-il pas un conflit avec la prochaine facture qui sera émise par HikaShop qui aura justement ce numéro C3 ?
Et si vous ne voulez pas que cela se produise, vous pourriez faire ainsi:
- Dans le menu System>Order statuses, vous pouvez créer un statut spécial "avoir"
- Ensuite, lorsque vous avez besoin de créer un avoir, dans le menu Orders, vous pouvez cliquez sur le bouton "new" pour créer une nouvelle commande. Ensuite, passez son statut à "confirmée" pour générer le numéro de l'avoir, puis changer le statut de la commande à nouveau en "avoir". Ainsi, la prochaine commande qui sera payée aura automatiquement le numéro de facture après l'avoir.
Après, si vous voulez connaître l'algorithm exact qui génère les numéro de facture dans HikaShop, c'est le code dans la fonction hikashop_encode dans le fichier administrator/components/com_hikashop/helpers/helper.php que vous voulez regarder. Et si c'est l'algorithme avec le format par défaut {automatic_code} alors c'est la fonction hikashop_base du même fichier.