Recurring payment custom IPN field - paypal-ipn

I am creating recurring payments using PayflowPro Gateway, like this:
TRXTYPE=R&TENDER=C&PARTNER=PayPal&VENDOR=Acme&USER=Acme&PWD=a1b2c3d4&ACTION=A&PROFILENAME=RegularSubscription&AMT=42.00&ACCT=4012888888881881&EXPDATE=0203&START=12012013&PAYPERIOD=WEEK&TERM=12&OPTIONALTRX=S&OPTIONALTRXAMT=2.00&COMMENT1=First-time customer
once more:
#.................. API SPLIT SYNTAX for easier <field>-s' review
TRXTYPE=R
&TENDER=C
&PARTNER=PayPal
&VENDOR=Acme
&USER=Acme
&PWD=a1b2c3d4
&ACTION=A
&PROFILENAME=RegularSubscription
&AMT=42.00
&ACCT=4012888888881881
&EXPDATE=0203
&START=12012013
&PAYPERIOD=WEEK
&TERM=12
&OPTIONALTRX=S
&OPTIONALTRXAMT=2.00
&COMMENT1=First-time customer
When the payments process later, an IPN notification is sent to us via the URL setup in Paypal.
Does anyone know how to set data for the custom field of IPN during the recurring payment creation process above?
custom doesn't seem to be a field in the PayflowPro recurring API.
Thanks.

Related

Which webhooks to subscribe for payments on paypal recurring payments?

I'm creating a website using paypal recurring payments. Each month the payment happens automatically, but I need to know when this happens in order to update the user profile in my application, so I know until when the subscription is valid.
Using paypal webhooks, which events do I need to subscribe to in order to know when the payment actually happens (or fails) each month?

Recurring Payment IPN

Quick question about the notify_url HTML variable (from PayPal Payments Standard). I am specifying the URL as a variable that is sent to PayPal via a redirect URL for a recurring payment setup (all is working as expected when setting up the recurring payment).
But I am wondering, when PayPal goes to actually process a payment in the future (actual recurring payment), will it use the same URL for the IPN notification that was used during the recurring payment setup?
I have multiple IPN scripts, one for regular payments and one for recurring payments - I want to be sure that each future recurring payment uses a specific IPN script.
Cheers!
First, for the sake of terminology, if you're using HTML buttons then you're using Standard Subscriptions, not Recurring Payments. Technically, they're the same thing, but Recurring Payments is API based and IPN data is different for Standard Subscriptions vs. Recurring Payments. Just keep that in mind when searching for information about the two.
As for the IPN's, unfortunately, it will not continue to use that same URL. You'll need to make sure that IPN is configured in the PayPal account profile in order for future transactions related to the profile to trigger IPN's.
This goes for both Standard Subscriptions and Recurring Payments API transactions.

Express checkout with payflow pro and recurring payment

i am using Paypal manager for the payment i successfully done with credit card payment with recurring payment profile from my website using PayPal manager. but now i want do recurring payment with express checkout using Paypal manager with recurring payment. i am able to do simple direct payment with express checkout using PayPal manager. i found some solution from google that we need to pass two variable
L_BILLINGAGREEMENTDESCRIPTION0 = "Your descriptor"
L_BILLINGTYPE0 = "RecurringPayments"
But i am not able to do recurring payment. I am not getting any error. but my payment have done simple payment not recurring.
Thanks in advance..
There are two things with Express Checkout. First you need to let know the whole process that you will also create some recurring payment profiles.
For that you set BillingType as RecurringPayments when you do doExpressCheckout request.
You will get the Token from paypal and later when user will be back on your site to confirm payment after signing in to Paypal you can use this token to create recurring payment profile the same way as you have done that with credit card.
So after confirming instead of sending doExpressCheckoutPayment you send createRecurringPaymentProfile request.
Of course you can also send doExpressCheckoutPayment if you want also to do some additional payment that is not recurring.

recurring payment with paypal advanced NOT paypal pro

I am trying to make recurring payment work with PAYPAL ADVANCED
My script works in case of SALE transactions but there are issues when i try to create recurring profile.
ISSUES
When i am posting my request with CREATESECURETOKEN set to Y. It returns Invalid transaction type: Invalid Transaction Type for secure token creation request
Here is the string. Note i have changed user and pass here
PARTNER[6]=PayPal&VENDOR[10]=#####&USER[11]=#####&PWD[9]=#####&CREATESECURETOKEN[1]=Y&TRXTYPE[1]=R&RECURRING[1]=Y&TENDER[1]=C&ACTION[1]=A&PROFILENAME[6]=Gautam&ACCT[16]=4012888888881881&EXPDATE[4]=1214&AMT[5]=10.00&START[8]=06132013&PAYPERIOD[4]=MONT&TERM[1]=0&OPTIONALTRX[1]=S&OPTIONALTRXAMT[4]=2.00&EMAIL[20]=#####&SECURETOKENID[26]=MySecTokenID-51b93e0830f70&RETURNURL[51]=http://localhost:8080/php/test/payflow/advanced.php&CANCELURL[51]=http://localhost:8080/php/test/payflow/advanced.php&ERRORURL[51]=http://localhost:8080/php/test/payflow/advanced.php&BILLTOFIRSTNAME[4]=John&BILLTOLASTNAME[3]=Doe&BILLTOSTREET[12]=123 Main St.&BILLTOCITY[8]=San Jose&BILLTOSTATE[2]=CA&BILLTOZIP[5]=95101&BILLTOCOUNTRY[2]=US&SHIPTOFIRSTNAME[4]=Jane&SHIPTOLASTNAME[5]=Smith&SHIPTOSTREET[13]=1234 Park Ave&SHIPTOCITY[8]=San Jose&SHIPTOSTATE[2]=CA&SHIPTOZIP[5]=95101&SHIPTOCOUNTRY[2]=US
if i set CREATESECURETOKEN to N i receive Invalid merchant information: 10002-You do not have permissions to make this API call
I searched for documentation on recurring payment with paypal advanced but every where i found details about payflow pro. With no information about recurring payment with paypal advanced its not easy to make things work.
Any idea about what is wrong with my post data?.
I posted my query on paypal.com/mts a week back but have no reply.
NOTE: I have subscribed to paypal advanced and paypal recurring payment.
With paypal advanced the transactions are completed on the client website itself and user is never taken to paypal site. Yes it uses iframe for the purpose.
It works for SALE type transaction but not in case of recurring payment.
Payments Pro and Advanced don't support the Recurring Payment API calls. You would be using the Recurring Billing API calls through Payflow. The new Advanced and Pro accounts use Payflow Pro or Link.
Are you setting a billing type in the Secure Token call?
What is the ticket number you submitted? I'd to look up the account to see if the account is setup to use Recurring Billing and was created correctly.
Also, Advanced accounts shouldn't be using the Recurring Billing API calls. It is possible to create Recurring Billing profiles with an Advanced account but they have to be done through the PayPal Manager site.

How to check Payment failure for Paypal Express Checkout

We are using Paypal recurring billing service (using Express Checkout) at our website for monthly subscription.
Since we have an Australian account so we are not able use the DPRP (Direct Payment Recurring Payment) service offered by Paypal because it seems, DPRP service is limited
to only few countries (US, UK and Canada).
In Express checkout payment details are received at Paypal Website. So we do not have any information, whether the payment failed, user pressed the Back button in browser or He/She intentionally clicked the cancel payment.
After speaking to Paypal support team we get know that there could be multiple possible reason for Payment failure, and seller has to contact Paypal by themself. So we can
not provide any troubleshooting for that at our website.
So we want to know, Is there any possible solution to avoid this or atleast can we diffrentiate between the user for whom payment failed and who intentionally moved to
our website back without doing payment because this way we are not only unable to followup with them but also loosing a part of the customer base, interested in our service.
Any help in this is Appreciated.
Thanks
You should implement the Pay Pal IPN (Instant Payment Notification).
You configure the IPN url address on your PayPal merchant account settings. This page is simple HTML page with server-side programming that is listening for requests coming from PayPal.
There's no need to do something extra in the checkout process for making IPN work. Once you set this up, it will automatically work.
Every time something happens with a transaction in your merchant account, e.g. transaction completed/failed/canceled, PayPal will send an HTTP Post to your IPN listener URL.
Here you can get all the relevant information about the transaction, like the payer ID, the payment status. With this information you can decide what to do with your customer's order.