Prérequis
- Proximis version 4.19 ou supérieur.
- Php version 7.4 ou supérieur.
Installation
Enregistrer le plugin.
php bin/change.phar change:register-plugin --type=module --vendor=Project Axepta
Installer le plugin.
php bin/change.phar change:install-plugin --type=module --vendor=Project Axepta
Dans la configuration du projet, activer les logs par service pour pouvoir avoir les logs spécifiques au module dans : log/proximis.axepta.log
"Logger": { "Writer": { "fileByService": true } },
Configuration
Créer le connecteur depuis l'interface d'administration. /admin.php/Rbs/Commerce/Connector/
Onglet propriétés générales :
- Le champ titre sur le site sera visible par le client, le libellé seulement dans l'interface d'administration.
- Le champ code permet d'identifier le connecteur dans le code.
- Le champ description peut contenir du texte formaté, des images et des liens.
- Le champ visuel permet d'afficher une image à coté du titre sur le site.
- Le champ critère d'application permet de définir des règles pour conditionner l'affichage du connecteur.
- Le champ instruction de paiement peut contenir du texte formaté, des images et des liens.
Onglet propriétés techniques :
Sélectionner le type de connecteur : Connecteur de paiement Axepta
Des information sur l'environnement actuel sont affichées. Attention, utiliser les clés de configuration correspondantes.
- Clés de configuration Ces informations sont fournies par BNP Paribas.
- Options du connecteur Sélectionnez les options pour ce connecteur.
- Devises Sélectionnez les devises autorisées pour ce connecteur.
- Méthodes de paiement Sélectionnez les méthodes de paiements autorisées pour ce connecteur.
Pour avoir ce mode de paiement disponible dans le processus de commande, il faut l'ajouter ./admin.php/Rbs/Commerce/Process/
Vous pouvez créer plusieurs connecteurs avec des configurations différentes. Il est possible, par exemple, d'avoir un connecteur dédié à un moyen de paiement.
Suivi des transactions
Depuis l’url admin.php/Rbs/Order/Transaction/ sélectionnez une transaction pour voir les détails techniques.
Gestion des remboursements
Quand une commande est annulée, elle est éligible à un remboursement.
Depuis l’url ua.php/financial/ dans le détail d’un remboursement, sélectionner l’action ‘traiter’ puis confirmer.
La demande est envoyée à AXEPTA et le résultat de l’opération se retrouve dans la partie chronologie.
Dans le cas d’une erreur, le message sera affiché.
Si le remboursement est bien validé, vous pouvez valider le remboursement en sélectionnant ‘traitement manuel’
Modification du template front
Vous pouvez modifier le fichier .twig App/Modules/Project/Axepta/Assets/Theme/ng-template/project-axepta-payment.twig pour retirer le style 'inline' et déclarer vos propres règles CSS.
Gestion des traductions
Le module comprend la langue locale fr_FR. Il est possible de créer de nouveaux dossiers pour d'autres langues. Prenez exemple sur les fichiers présents dans le dossier App/Modules/Project/Axepta/Assets/I18n
Vous pouvez à tout moment modifier les chaines de caractères traduites depuis l'interface de traduction .ua.php/lmsManager/Plugin/m.project.axepta
Moyens de paiement disponible via le module
Les moyens de paiement disponibles via ce module de paiement sont les suivants :
Documentation Développeur : Si ajout d'un nouveau moyen de paiement qui n'est pas disponible via ce module
La documentation des moyens de paiements alternatifs est disponible sur la page suivante :
https://docs.axepta.bnpparibas/pages/viewpage.action?pageId=6914326+
Vous pouvez prendre exemple sur les moyens de paiements déjà implémentés.
- Ajouter une nouvelle classe pour chaque moyen de paiement que vous voulez ajouter dans App/Modules/Project/Axepta/PaymentModes.
Cette classe doit étendre PaymentModeBase et déclarer la méthode buildDeportedPageQuery.
public static function buildDeportedPageQuery(\Rbs\Payment\Documents\Transaction $transaction, $connectorId, \Rbs\Website\Documents\Website $website, \Project\Axepta\Events\Documents\AxeptaEngine $engine): string { $paymentRequest = parent::prepareDefaultPaymentRequest($transaction, $connectorId, $website, $engine); // PAYMENT_URL is specific to the payment mode and available in the documentation. $paymentRequest->setUrl(self::PAYMENT_URL); return parent::validateAndBuildQueryString($paymentRequest, $engine, $transaction, $website); }
En fonction des paramètres requis par le moyen de paiement, il faudra les ajouter à $paymentRequest. (ex $paymentRequest→setAccOwner($accountOwner); )
2. Ajouter le trigramme du moyen de paiement dans showPaymentModes() dans le fichier App/Modules/Project/Axepta/Assets/Admin/directives.js
3. Ajouter le trigramme du moyen de paiement dans getEnabledPaymentModes() dans le fichierApp/Modules/Project/Axepta/Events/Documents/AxeptaEngine.php
et dans getDeportedPageQuery() dans le fichier App/Modules/Project/Axepta/Http/Ajax/DeportedPageQuery.php
4. Ajouter le logo du moyen de paiement dans le dossier App/Modules/Project/Axepta/Assets/Theme/img/logos
Le logo doit être nommé selon le trigramme et l'extension doit être .png