I am building a website which sells some web services. My clients will be charged monthly. I followed the document instructions (enter link description here) and after I execute the agreement. Nothing happened. After I wait for one night, I found that my test client account (sandbox account) was charged the trial amount and it said the payment is pre-approved, and my business account (sandbox account) didn't receive this payment.
So now I have the following problems about this recurring payment. Please help me about this. Thank you very much in advance.
Q1: How to charge initial payment in recurring payment? In my text client account, the initial payment of this recurring agreement is $0
Q2: How to know when the recurring payment is done? I want to record the transaction in my database and send receipt to my client after each payment.
Updated
I have implemented IPN to get notifications about recurring agreement created/suspended/cancelled. But I didn't find which type of notification is used after each recurring payment, and I still didn't find how to charge initial payment.
I will try using set up fee and I will post the results when the test is done.
Update 1
Confirmed. The set up fee is used as initial payment. See this for more details.
Related
I'm trying to setup recurring payments in Paypal for my website using REST API, and I have 2 questions/problems:
Can't see transaction details in the paypal checkout page:
For one time payment, I know how to display transaction details by providing values for item_list (as in https://developer.paypal.com/docs/api/).
However I don't know what values we should provide so that recurring payment profile will be shown on checkout page as well.
In the below picture(left side) you can see that no information is presented to the client regarding the payment amount and setup fees.
If I switch to production environment when the user tries to make a recurring payment, the user is redirected to the paypal website and he sees this error:
Sorry, we weren’t able to set up preapproved payments at this time.
Please return to the merchant and choose another way to pay.
So what's the issue with the recurring payment:
Why the user does not see any information regarding the payment amount in checkout paypal checkout page.
Why in production env the user gets that error message?
I'm using this documentation:
http://paypal.github.io/PayPal-PHP-SDK/sample/doc/billing/CreatePlan.html
http://paypal.github.io/PayPal-PHP-SDK/sample/doc/billing/CreateBillingAgreementWithPayPal.html
http://paypal.github.io/PayPal-PHP-SDK/sample/doc/billing/ExecuteAgreement.html
How will I be notified when a paypal client cancel the recurring payment?
It is important for my web application to know when somebody cancel the recurring payment.
I read something about webhooks, is this the way?
Can you give me some documentation?
My location is Romania, if this matters.
Thanks,
Catalin
I am creating recurring payment using paypal and want the status of the payment after few days.I mean i want to check user is still subscribe us or cancel the subscription. if he/she cancel the subscription or i want to update his status into my website.
Can you anyone help me out please.
Thank you.
If you are using Standard subscriptions or NVP/SOAP recurring payments APIs when you will get an IPN when the profile is canceled, so you can automate the processing of that. In the case of recurring payments APIs you could also use GetRecurringPaymentsProfileDetails any time you want to check the status.
If you are using REST API billing agreements / billing plans then you can use Webhooks, which are similar to IPN. You could also use GET to pull plan details.
I have a page on my site which sends out payments to more than 1 person. I've been testing this using the paypal sandbox account with a few test accounts.
I am also using ipn to get feedback from paypal when payments are complete, pending etc.
My question is, paypal sends me back info via ipn for just 1 of the payments. Why is that? When I check the payment amount in the ipn, it only shows me the payment for 1 of the people who got paid. For example:
If I pay person 1 and 2, where each person gets paid $10 each, so a total of $20. The ipn page only shows me the details for person 1 and says that the payment amount was $10, when the total payment amount is $20.
This is causing me a problem because I need to know that both payments were successful via ipn. At the moment I can only check the payment for 1 person at a time, even though I am paying 2 people at the same time.
How do I get payment for both people?
#Pete answer is a violation of the Paypal User Agreement (unless you have a separate legal entity for both accounts)
9. Restricted Activities
9.1 Restricted Activities. In connection with your use of our website, your Account, or the Services, or in the course of your interactions with PayPal, a User or a third party, you will not:
a. Breach this Agreement (including, without limitation, opening multiple PayPal accounts or breaching the Card Processing Agreement, the Acceptable Use Policy or any other agreement that you have entered into with PayPal (including a Policy));
What you are looking for is PayPal Adaptive Payments. A note about this though: one account - probably you as the application owner - must have a PayPal business account. The others that receive a payment only need a personal account.
PayPal provides an SDK with samples for the Adaptive Payments on Github. Select Adaptive Payments from the menu on the left. There are samples for multiple languages that should be able to get you started.
My hunch is that IPN is tied to the individual account, not the payment, and you have the IPN set up from just one of the accounts. I think what you need to do is configure the IPN on both accounts and then process the response from PayPal two times... once from the IPN notification of the first account, and once from the IPN notification of the second account.
I have integrated standard paypal with one of sites and it works as follows: user selects which subscription to buy, he is redirected to paypal, paypal sends IPN response, I process it and then every X days PayPal sends a new IPN notifying site that user has been successfully charged for new subscription iteration. Now the problem is that user needs to have paypal account to sign up for such subscription.
The customer contacted PayPal and found out that it is possible to avoid having user to use their PayPal account to buy subscription when seller uses paypal pro account. Is it really so? Will I be able to gather user's card info, then send some request to PayPal API and have the subscription created. If yes, what will happen next? PayPal will be sending me IPN requests every X days notifying site that the card has been successfully charged?
Also, what is the general flow? Do I always have to gather card info and send it to paypal api or can I redirect user to paypal in a similar way as standard paypal functions?
Yes, this is possible. You would need to sign up for PayPal Website Payments Pro and Direct Payment Recurring Payments. You can then use the CreateRecurringPaymentsProfile API and specify the card details directly in a single API call.
This will create a recurring profile, which is billed every X days / months, depending on what you specified as the billing period in CreateRecurringPaymentsProfile.
Alternatively, you can also sign up for PayPal Premium Services (for the UK) or PayPal Enhanced Recurring Payments (for the US). This allows you to accept subscription payments from guest users, using the exact same integration you have at the moment, except a 'guest payment' section will be added to the PayPal checkout screen, so buyers won't be forced to create a PayPal account to sign up for your subscriptions any longer.
(Note: Enhanced Recurring Payments / Premium Services has other benefits as well, such as Installment Plans, but guest subscription payments is definitely the biggest benefit).
How or when the amount get deducted or transferred from the buyers paypal account to the shop owner's account via Virtuemart in Joomla 1.5? I created the paypal sandbox test account but doesn't seems to deduct the amount of item(s) I bought?
If there's anything unclear please let me so I can explain further.
Thanking you in advance.
Perhaps VirtueMart changes inventory only when it receives an IPN (instant payment notification) from PayPal about a successful transaction? PayPal has an IPN simulator - try using that. Also, you can login to your test business account and approve the transaction from there - this also sends an IPN back to store.