Jump to content

[HowTo] Paypal 3.5.5, Brand Name et Transaction ID et plus si affinité


Recommended Posts

Bonjour,

 

J'ai mis dans le sujet de mon message un [HowTo] car ce message n'est pas une demande mais plutôt un trucs et astuces pour le module PayPal.

Ayant récemment activé ce module sur deux sites Prestashop qu tournaient déjà avec le module de paiement Atos, j'avais mis en place une récupération automatique des commandes par web-services avec en plus, la récupération du numéro de transaction à des fins de rapprochement comptable.

 

Ce numéro de transaction est remonté par Atos dans un message lié à la commande, souvent le premier message, renvoyé par l'organisme de paiement après validation.

Avec le dernier module Paypal, mis à part "Payment accepted", je n'avais rien de plus dans le message.

 

Avec l'aide de mon contact Paypal, qui m'a envoyé toute la doc API et m'a orienté dans le module, j'ai finalement réussi à mettre en place le numéro de transaction dans le message de retour de Paypal une fois le paiement validé.

 

Voici comment.

 

Dans le fichier modules/paypal/express_checkout/payment.php ligne 242, méthode validateOrder

 

J'ai remplacé la ligne suivante

 

$message = $ppec->l('Payment accepted.').'<br />';

 

Par ces lignes

 

if($ppec->result['PAYMENTINFO_0_TRANSACTIONID']) {
$message = 'Transaction ID: '.$ppec->result['PAYMENTINFO_0_TRANSACTIONID'].'<br />'.$ppec->l('Payment accepted.').'<br />';
} else {
$message = $ppec->l('Payment accepted.').'<br />';
}

 

J'ai mis le test if pour éviter de faire planter le module si jamais cela ne fonctionnait pas.

J'ai finalement reçu une commande Paypal suite à cette mise à jour et c'est fonctionnel.

Il est donc possible d'ajouter plus d'informations si besoin en suivant la doc là :

https://developer.pa..._Operation_NVP/

 

Ensuite, concernant le "Brand Name", c'est le nom affiché sur la page Paypal pour le paiement.

Vu que j'utilise un seul compte mais que les paiements peuvent provenir de plusieurs boutiques, j'ai mis en place ceci

 

fichier modules/paypal/express_checkout/process.php après la ligne 146 de la méthode setExpressCheckout

 

$fields['BRANDNAME'] = 'Nom de la boutique';

 

je pense que je vais modifier cela pour prendre le nom du site directement depuis la configuration du site.

 

Voilà pour le mini-howto

Des questions ? :P

  • Like 2
Link to comment
Share on other sites

  • 2 months later...
  • 2 weeks later...

Paypal 3.6

Prestashop 1.4.10

 

Merci pour le tuyau, ça a en partie résolu mon souci, en ajoutant le numéro de transaction.

 

Par contre chez moi la traduction n'est pas prise en compte. J'ai même essayé en créant de nouveaux champs. Ils se retrouvent bien dans les traductions, mais si je complète c'est toujours la version EN qui est quand prise en compte. Lassé, j'ai fini pas traduire directement, en dur, dans payment.php. Mais je ne comprends pas pourquoi la traduction ne fonctionne pas, seulement pour ce module.

 

Rodolphe

Link to comment
Share on other sites

  • 1 year later...

Hi ,

 

I want to change the name on the top left corner.

 

More details is : i have one paypal account but i have two online shop.

 

I want two shop can collect payment with one paypal account but the problems  how can i make them to show difference on the top left corner of the page when customer process the payment.

 

i know i need to change the some paremeters on the route /modules/paypal/express_checkout/.

 

but i dont know where to find and to change.

 

i am looking for help.

 

thank you.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...