Contrôleur des plug-in de paiement
Contrôleur des plug-in de paiement est un composant du sous-système de paiements. Il détermine le plug-in à utiliser (en fonction du mode de paiement) et la méthode d'API de plug-in à appeler (en fonction de l'action).
Contrôleur des plug-in de paiement permet d'effectuer les étapes suivantes :
- Création d'une transaction financière.
- Une transaction financière est utilisée pour suivre la progression de l'action en cours d'exécution.
- Elle est remplie de données associées à l'action à l'instruction Paiement.
- L'objet de transaction financière contient des attributs tels que :
state: new requested amount: 359.000 processed amount: 0.00000 reference number: ... response code: ... payment ID: 10001 ... - Les données de transaction sont stockées dans la table PPCPAYTRAN.
- Déterminez le plug-in à utiliser en fonction des fichiers de configuration des paiements :
- Utilisez le fichier XML PaymentMappings pour obtenir la configuration de paiement à partir du mode de paiement sélectionné.
<Mapping paymentMethod="VISA" paymentConfiguration="CreditCardOnline" paymentActionRule="Early Approval"/> - Utilisez le fichier XML PaymentMethodConfigurations pour obtenir le nom du système de paiement à partir de la configuration de paiement.
<PaymentMethodConfiguration name="CreditCardOnline" paymentSystemName="Paymentech" systemEditable="true" humanEditable="true" refundAllowed="true" minimumAmount="0" maximumAmount="Unbounded" priority="MEDIUM" partiallyConsumable="true"/> - Enfin, utilisez le fichier XML PaymetSystemPluginMapping pour obtenir le nom du plug-in à partir du nom du système de paiement.
Ensuite, la configuration de mode de paiement CreditCardOnline sera mappée sur le système de paiement Paymentech dans PaymentMethodConfigurations.xml, et le système de paiement Paymentech sera mappé sur le plug-in de paiement PaymentechPlugin dans PaymentSystemPluginMapping.xml.<PaymentSystemName name="Paymentech" > <Mapping paymentConfigurationId="default" pluginName="PaymentechPlugin" > <Keyword name="cc_cvc" mask ="-" plain="0" removeAfterApproval ="true"/> <Keyword name="cc_nameoncard" mask ="*" plain="0" removeAfterApproval ="true"/> <Keyword name="account" mask ="*" plain="-5" searchable="true"/> </Mapping> </PaymentSystemName>
- Utilisez le fichier XML PaymentMappings pour obtenir la configuration de paiement à partir du mode de paiement sélectionné.
- Appelez Plugin.Approve(). En l'occurrence, PaymentechPlugin.Approve().
- Conservez les états de paiement à jour avec les informations de paiement correspondantes dans les tableaux liés au paiement.