PayPal - recurring transaction not submitting address via IPN but non-recurring does - paypal

When using PayPal's payments standard offering, how can it be configured so that when the user is taken to PayPal's site and selects recurring (see screenshot below), the billing address is submitted to the IPN post-back page (and also captured in the IPN history for the transaction)?
Non-recurring payments do currently capture the billing address as expected.
We've tried including and excluding address_override to see if that would make a difference, but it didn't (https://developer.paypal.com/docs/classic/paypal-payments-standard/integration-guide/formbasics/#id08A6F0T0JQN).

To get the billing information, you have to contact PayPal and ask them to submit a ticket to enable receiving the billing information. By default you just get shipping information but not billing to help protect PayPal users.
In this case shipping information was actually what was coming through for the non-recurring payments even though it labeled generically.
UPDATE: apparently this is actually only supported for non-recurring transactions.

Related

PayPal adaptive guest payment requirements

We are using the adaptive payment API to setup a payment between 2 of our users. The receiver user has a paypal account, the source (the one who pays) doesn't. We don't use any chained or parallel payments just simple tranffer from A to B.
We'd like to allow the source to pay with credit/debit card. The problem is that in some cases its allowed, and in some it isn't.
We found this document about the subject but it looks outdated, since in the limitations section it says:
Cannot be made to a personal or un-registered PayPal account
I have a personal account and it works with that but with my colleague's personal account (different country) it doesn't.
Not available if the API caller passes an email address in the request
envelope.
This is very vague. Pass where? We use the email address in the pay request but it works in some cases.
Could anyone give some up-to-date info about this subject?
Guest payments are only made available to certain countries no matter which PayPal product you are using (PayPal Payments Standard, PayPal Express Checkout, Adaptive Payments). So if a buyer is in a country that requires a PayPal account, then they will only see the option to "Login to PayPal" or "Create Account" when they land of the PayPal checkout page. Unfortunately there is not a list of countires in our documentation to show which countries allow guest payments and which don't.
Here are my findings together with PP_MSI_Colin's answer:
Documentations
Guest payment - integration guide (UI is different now)
Guest payment - adaptive payment
Account optional settings
Requirements
Upgrade to business or premium account.
Make sure the email address is verified.
Make sure that on this settings page the Paypal account optional setting is ON.
Limitations, exceptions
In EU, this option is limited to 10 payments/card
In some countries (tested in Hungary) a personal account can also receive guest payments.
In some countries it is always disabled. No official list found.
Logic
Even if it is enabled for a user, it is up to Paypal if they show it or not. Where its enabled it also depends on the paying user. If Paypal finds (from cookies, etc) that the user has a paypal account they don't show credit card option. To test it try to pay in an incognito window. PayPal’s fraud prevention measures can also cause the guest checkout to not be displayed in certain scenarios
Limitations for making guest payments via PayPal adaptive payments are documented here:
Guest payments cannot be made to a personal or un-registered PayPal account

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.

dprp paypal confusion - displaying live

I have read through the forums on here and see that the 'DPRP is disabled' message is due to not paying the additional fee for recurring payments.
I did not set the account up so Im not sure exactly what was paid for, I do know that we are using website payments pro.
My confusion comes from the top of the page where is says Recurring Payments are live, is this separate from the direct payment recurring? Does this mean that the account does have dprp or is this displaying live just a generic thing that all accounts have?
We currently do take recurring payments from a hosted paypal page so im wondering whether that is why it is set to live?
We plan to have our own page to take payments rather than a hosted page so any advice would be great.
Thanks in advance
CHeers
Nadeem
The error of you don not have DPRP enabled, is just that. It means that you do not have recurring payments enabled on the account. You may just have DP (Direct Payments) enabled on your account and not DPRP (Direct Payment Recurring Payments), meaning you would only be able to process single payment transactions not recurring payments. If you can provide the email adddress to test account I can take a look at it and see what you have enabled on it and can enable it if its not enabled.

Detecting cancellation of a paypal billing agreement setup with reference transactions

I am using the 'reference transactions' of the Paypal express checkout api to set up a recurring billing scenario for our customers. I have chosen this method since the amount billed per month will vary and there is no initial payment when entering into the billing agreement.
My question is, can I use the paypal IPN to detect when the user cancels this? I know that if the customer enters into this agreement they have the power to log into their own Paypal account and cancel the agreement. What variables should I be listening for through the IPN?
Whilst I see mention of recurring payments and recurring payment profiles in the IPN documentation these are not actually the same as setting up a recurring billing scenario via reference transactions (recurring payments and reference transactions are in two different parts of the general paypal api documentation).
Enable IPN in your PayPal account , then PayPal will notify you via IPN about the Billing agreement cancel from the customer.
If you include IPN with SetExpressCheckout, it will not work with Reference Transaction. You need to Enable IPN on PayPal 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.