IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WebDev Discussion :

Pour ceux qui coincent avec l'IPN de Paypal


Sujet :

WebDev

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Septembre 2006
    Messages : 112
    Points : 75
    Points
    75
    Par défaut Pour ceux qui coincent avec l'IPN de Paypal
    Bonjour à tous,

    Je viens vous apporter quelques infos pour ceux qui ont des soucis avec les notifications de paiement instantanées de Paypal (IPN) avec des réponses "INVALID" lors de la vérification du paiement, vu que je viens de galérer 3 jours à trouver

    Les réglages de votre compte Paypal :
    - Dans préférences, Encodage de la langue, cliquez sur Plus d'options et choisissez UTF-8 comme encodage. (TRES IMPORTANT !)

    Dans le code d'initialisation de votre page de notification, qui bien sur doit être en AWP :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    //Déclaration des variables et récupération de paramètres utils
    gsTemp est une chaîne
    gsCustom est une chaîne=PageParamètre("custom") //Identifiant personel
    gsChaine est une chaîne="cmd=_notify-validate" //Cette Chaine servira a lancer la vérification
    gsStatus est une chaîne=PageParamètre("payment_status") //Status de la transaction
    gsUnikID est une chaîne=PageParamètre("txn_id") //Identifiant unique de la transaction
    gsReceiverAdresse est une chaîne=PageParamètre("receiver_email") //adresse paypal du marchand
    sGsPayerEmail est une chaîne=PageParamètre("payer_email") //adresse paypal du client
    moGmoMontant est un monétaire=Val(PageParamètre("mc_gross")) //montant de la transaction
    sReferencee est chaîne = PageParamètre("item_number")
    gsMessage est une chaîne //Message a retourner
    gbBKO est un booléen=Faux //Vrai si le process a échouer
     
     
     
     
    //vérification adresse du marchand
    SI Minuscule(gsReceiverAdresse)<>"adresse@marchand" ALORS
    	gsMessage="Erreur Receiver : "+gsReceiverAdresse
    	gbBKO=Vrai
    FIN
     
    //Récupération de tous les paramètres de la page
    I est un entier=1
    gsTemp=PageParamètre(I)
    TANTQUE gsTemp<>"" ET gsTemp<>EOT
    	SI gsChaine<>"" ALORS
    		gsChaine+="&"
    	FIN
    	gsChaine+=gsTemp
    	I++
    	gsTemp=PageParamètre(I)
    FIN
     
    // Ne pas oublier le URLEncode !!!!!
    gsChaine=URLEncode("https://www.sandbox.paypal.com/cgi-bin/webscr?"+gsChaine)
     
    SI PAS gbBKO ALORS
    	//Vérifier que l'identifiant unique est bien unique
    	HLitRecherchePremier(Transactions_Paypal,ID_Transaction,gsUnikID)
    	SI HTrouve(Transactions_Paypal) ALORS
    		gsMessage="Erreur ID Duppliqué"
    		gbBKO=Vrai
    	FIN
    FIN
    //Envoi d'une requête au site paypal pour valider la transaction
    SI PAS gbBKO ALORS
    	SI HTTPRequête(gsChaine) ALORS
    		SI Majuscule(HTTPDonneRésultat(httpRésultat))<>"VERIFIED" ALORS
    			gsMessage="RESULTAT : "+HTTPDonneRésultat(httpRésultat)
    			gbBKO=Vrai
    		FIN
    	SINON
    		gsMessage="ERREUR HTTP REQUETE"
    		gbBKO=Vrai
    	FIN
    FIN
     
     
    SI PAS gbBKO ALORS
    	//Enregistrement de la transaction dans une base locale
    	HRAZ(Transactions_Paypal)
    	Transactions_Paypal.ID_Transaction=gsUnikID
    	Transactions_Paypal.Date_Transaction=DateSys+HeureSys
    	Transactions_Paypal.Status = gsStatus
    	Transactions_Paypal.Montant=moGmoMontant
    	Transactions_Paypal.EmailClient=sGsPayerEmail
    	Transactions_Paypal.Details=gsChaine
    	Transactions_Paypal.Custom=gsCustom
    	Transactions_Paypal.IDmembres = gsCustom
     
    	HAjoute(Transactions_Paypal)
    	SELON Minuscule(gsStatus)
    		CAS "canceled-reversal"
    			gsMessage="ANNULE - Paiement a été annulée"
    		CAS "completed","processed","Completed"
    			//Vérifiez encore ici que le montant de la transaction corresponde bien au montant de la commande
    			//Si ok, considérez le paiement comme effectué et faite toutes les opérations nécessaires
    			gsMessage="OK - Est payée et peut être validée"
    		CAS "denied"
    			gsMessage="REFUSE - Paiement a été refusé"
    		CAS "expired"
    			gsMessage="EXPRIRE - Paiement a expiré"
    		CAS "failed"
    			gsMessage="ERREUR - Paiement n'a pas fonctionné"
    		CAS "in-Progress"
    			gsMessage="EN COURS - Paiement en cours"
    		CAS "pending"
    			gsMessage="SUSPENDU - Paiement est suspendu"
    		CAS "refunded"
    			gsMessage="REMBOURSE - Paiement a été remboursé"
    		CAS "reversed"
    			gsMessage="REVERSED - Paiement a été remboursé"
    		CAS "voided"
    			gsMessage="VOIDED - Paiement a été stoppé"
    		AUTRE CAS
     
     
    	FIN
    SINON
            // Ici on traite l'échec des paiements suite à une réponse INVALID de Paypal
    FIN
    Voilà, j'espère pouvoir ainsi aider ceux qui ont eu la même galère que moi

  2. #2
    Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 21
    Points : 61
    Points
    61
    Par défaut Merci beaucoup !!
    Bonjour,

    Vous n'aviez pas eu de réponse depuis 2011 mais sachez que votre poste va m'être très utile :-)
    Pour moi ça fait 2 jours que je galère avec l'IPN et WebDev...

    Merci beaucoup, je vous dirai si j'arrive à implémenter l'IPN paypal..

    Cordialement
    Dominique D.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    112
    Détails du profil
    Informations personnelles :
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Septembre 2006
    Messages : 112
    Points : 75
    Points
    75
    Par défaut
    Citation Envoyé par ddom76 Voir le message
    Bonjour,

    Vous n'aviez pas eu de réponse depuis 2011 mais sachez que votre poste va m'être très utile :-)
    Pour moi ça fait 2 jours que je galère avec l'IPN et WebDev...

    Merci beaucoup, je vous dirai si j'arrive à implémenter l'IPN paypal..

    Cordialement
    Dominique D.
    Bonjour,

    Content que cela vous soit utile

  4. #4
    Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 21
    Points : 61
    Points
    61
    Par défaut MERCI !!!
    Juste quelques minutes pour ajouter le fichier pour enregistrer les transactions, quelques lignes pour enregistrer un log de contrôle et ca semble OK !! j'ai bien eu un retour VERIFIED !
    Par contre je n'ai pas modifié le paramétrage UTF8 au niveau du compte et ça ne semble pas perturber..

    Super.. Plus qu'à adapter tout ça pour mon site en exploitation...

    ET

    Cordialement
    Dominique D.

Discussions similaires

  1. Pour ceux qui auraient un soucis avec GoodWaeter
    Par eridan26 dans le forum Bubuntu
    Réponses: 0
    Dernier message: 21/05/2008, 13h14
  2. IIS + Apache + mysql...pour ceux qui ont déjà installé
    Par ludophil dans le forum Autres Logiciels
    Réponses: 1
    Dernier message: 15/10/2005, 02h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo