Contexte
Lors de la création d'une transaction de vente, le module demande à PayFip un idOp (identifiant d'opération), qui sera ensuite réutilisé pour que l'usager puisse réaliser le paiement de son bon de commande. Cependant, il arrive que la plateforme PayFip ne renvoie pas cette identifiant.
Problème
Le traitement actuel se réalise de cette manière :
- On crée d'abord l'objet
payment.transaction
- On appelle ensuite le serveur de PayFip, pour générer l'idOp, à partir des informations de la transaction générée
- En fonction du résultat :
- Si l'idOp est généré : on met à jour le champ
payfip_operation_identifier de la transaction
- Si l'idOp n'est pas généré : on renvoie une chaîne de caractère vide
Du coup, nous nous retrouvons avec une transaction générée, mais qui ne peut pas être utilisé. De plus, cela permet la redirection de la boutique vers le site de paiement PayFip, avec une erreur sur leur site, car aucun idOp n'est fourni.
Solution
Plutôt que de récupérer l'idOp après avoir créé la transaction, il faudrait faire l'appel à l'API avant la création, car nous avons déjà toutes les informations dans le contexte.
Contexte
Lors de la création d'une transaction de vente, le module demande à PayFip un idOp (identifiant d'opération), qui sera ensuite réutilisé pour que l'usager puisse réaliser le paiement de son bon de commande. Cependant, il arrive que la plateforme PayFip ne renvoie pas cette identifiant.
Problème
Le traitement actuel se réalise de cette manière :
payment.transactionpayfip_operation_identifierde la transactionDu coup, nous nous retrouvons avec une transaction générée, mais qui ne peut pas être utilisé. De plus, cela permet la redirection de la boutique vers le site de paiement PayFip, avec une erreur sur leur site, car aucun idOp n'est fourni.
Solution
Plutôt que de récupérer l'idOp après avoir créé la transaction, il faudrait faire l'appel à l'API avant la création, car nous avons déjà toutes les informations dans le contexte.