Bonjour à vous,

J'ai développé un système d'abonnement en utilisant PayPal Express Checkout.
Lorsque je reçois l'IPN, j'utilise la condition suivante pour valider le paiement :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
if ((isset($data['payment_status']) && $data['payment_status'] === 'Completed') || (isset($data['initial_payment_status']) && $data['initial_payment_status'] === 'Completed'))
Sauf que dans certain cas, je reçois bien le paiement initial sur le compte PayPal, mais l'IPN renvoyé est le suivant :
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
 
payment_cycle=Monthly
txn_type=recurring_payment_profile_cancel
last_name=XXXXXXXXX
initial_payment_status=Failed
next_payment_date=N/A
residence_country=FR
initial_payment_amount=XXXXXXXXX
currency_code=EUR
time_created=23:46:38 May 20, 2017 PDT
verify_sign=XXXXXXXXX
period_type= Regular
payer_status=verified
tax=0.00
payer_email=XXXXXXXXX
first_name=XXXXXXXXX
receiver_email=XXXXXXXXX
payer_id=XXXXXXXXX
product_type=1
shipping=0.00
amount_per_cycle=9.90
profile_status=Cancelled
charset=windows-1252
notify_version=3.8
amount=9.90
outstanding_balance=0.00
recurring_payment_id=XXXXXXXXX
product_name=XXXXXXXXX
ipn_track_id=XXXXXXXXX
Je ne comprend pas pourquoi j'ai un paiement initial qui se crédite sur mon compte et que l'IPN soit de type :"recurring_payment_profile_cancel"
Je ne reçois que cet IPN de PayPal, et sur 6 paiement, 3 sont concernés.

Pouvez vous m'aider à y voir plus clair ?
Merci d'avance ;-)