15

According to the PayPal documentation, it is not possible to have Instant Payment Notifications (IPN) for Recurring Payments when using ExpressCheckout.

Here is how I come up with that conclusion:

  1. In the SetExpressCheckout documenation for NOTIFYURL they say:

    The notify URL applies only to DoExpressCheckoutPayment. This value is ignored when set in SetExpressCheckout or GetExpressCheckoutDetails.

  2. I don't have a one-time payment with ExpressCheckout. I am just creating a recurring profile. So I am skipping the DoExpressCheckoutPayment call like it is specified in the Recurring Payments integration guide. Actually if I however do the DoExpressCheckoutPayment call it would not be valid, because I have set the amount to 0.

  3. According to 1. the NOTIFYURL (to be precise PAYMENTREQUEST_0_NOTIFYURL) would be ignored unless a DoExpressCheckoutPayment is called. However I have tried to set it in the SetExpressCheckoutPayment call.

  4. Using the IPN simulator I am successfully receiving IPN notifications.

  5. When successfully creating a new Recurring Payments profile using CreateRecurringPaymentsProfile I am not receiving an IPN notification.

  6. I did not find an API call related to the Recurring Payments which I can use to set a NOTIFYURL.

How can I set up an IPN URL for Recurring Payments using ExpressCheckout without an initial payment, INITAMT or other requiring DoExpressCheckoutPayment?

Haralan Dobrev
  • 7,617
  • 2
  • 48
  • 66
  • Have you tried to use initial payment and set it to 0? – jayarjo Jan 23 '14 at 17:36
  • @jayarjo I haven't. However I don't think this would work. It is very unlikely PayPal would allow a zero amount for a transaction. Even if they do, it would look strange in the bank statements of the customer. However this is a hack. I really wanted the PayPal API to support it natively. – Haralan Dobrev Jan 23 '14 at 18:29

2 Answers2

11

You can set the IPN URL in your PayPal account, under your profile.

PP_MTS_Chad
  • 7,311
  • 1
  • 15
  • 20
0

Simply add "&NOTIFYURL=yoursite.com/ipnhandle" to your NVP string, if you want to set different IPN urls for your each transaction.

  • 1
    If you read the PayPal documentation and my question more thoroughly you will know this is not possible with recurring payments. – Haralan Dobrev Jan 31 '14 at 11:13
  • If you are using Express Checkout you can do this. – Bhushan Bamania Jan 31 '14 at 16:51
  • I am using ExpressCheckout, but I am not using `DoExpressCheckoutPayment` API operation. Please read my question again. I know how and where to use `NOTIFYURL`. The problem is that PayPal does not support it for my use case. You could see the comments under the accepted answer for more details. – Haralan Dobrev Jan 31 '14 at 16:52
  • If this is not working in your case, then IPN url set in your paypal account will send you notification every time..and you can filter the notification on the basis of transaction type (txn_type). – Bhushan Bamania Jan 31 '14 at 16:57
  • Thanks! This is very similar to what I did and what the accepted answer is about. I really hope PayPal extend their API and support this in the future. – Haralan Dobrev Jan 31 '14 at 16:58