Is it possible to do transaction with zero amount in paypal methods like express checkout or standard? I want to do auto payments in paypal express or standard methods. In which is it possible I call request and It will make auto transaction from customer paypal account like it did in Paypal recurring method. I do not want to use paypal recurring method because I am managing my own payment schedules and do not want to use its default recurring system.
I am using autorize.net CIM method also. which is working fine right now and I am calling payment request and its doing payment. I also want to do zero amount transaction in that case.
can any one help on this point?
NO,
You need to bypass to zero value.
Means Just do all thing proper except real payment. i.e. order entry, shipping etc. just in it your transaction id is not available.
It sounds like you want to be able to charge the buyer later down the road, instead of charging them immediately -- is that right?
If so, then you need to use Billing Agreements and Reference Transactions. See https://developer.paypal.com/webapps/developer/docs/classic/express-checkout/integration-guide/ECReferenceTxns/ for more information.
Note that you will need to get approval from PayPal before you can start creating billing agreements.
Related
I'm building functionality in which product payment is divided into two parts -
1. service charge
2. actual payment
service charge payment will be done thr' stripe api (as client wants this gateway)
actual payment will be done thr' any type of gateway as per user selection.
But, crucial part is, both parts of payment should be done on one click.
On one click, it should go to stripe and other gateway that user has selected.
Can it be possible?
If yes, what will happen in the case where one of the two parts of payments is successful and other one failes.
Where can I redirect success url for both types of payments? on same page or another page?
As card details will be given only once by user in one form and submitted, can these details remain secure while processing of two transactions?
I have thoroughly searched for this, but can't find answer.
Thanks in advance.
Assuming this is a credit card payment only (and not a wallet such as PayPal or WebMoney, etc) all you need to do is store the credit-card details at your servers. Just make sure you are PCI compliant for that.
In this case, you will charge the service fee via stripe and the actual payment via the 2nd payment gateway. Just make sure you refund one if the other failed. Also ensure that the user is well aware that he will see TWO charges on his card. I would advise showing that nicely in the invoice page.
So it's not that complex of a flow for stored credit cards, but if you lack the credit card data and let the user pick an online payment option such as PayPal, then you'll need to ensure this online payment is successfully completed before charging the service fee via stripe.
I know this maybe a duplicate but due to the overwhelming amount of paypal APIs I am having a hard time finding a GOOD answer to my question.
I need to create variable monthly billing per user in PHP. The idea is that a user could sell a number of items with a total sum of sales at the end of the month p. So the billing would be something of the extent MY_PERCENTAGE_FEE * p. The user would then be sent an invoice, and a would be automatically billed via paypal for that amount.
Now, it would be SUPER great if this could be done by creating reoccurring billing and updating the amount at the end of the month. Is that possible? If not what would be the next best way to go?
If you're creating recurring profiles with Payments Pro you can adjust those without any limits. Unfortunately, with Express Checkout you're limited to raising the amount by only 20% every 180 days, so that doesn't normally work out very well. You have a few options of how to get around that.
1) Utilize billing agreements with Express Checkout and Reference Transactions. This would allow you to run an authorization (or an original sale of some sort) for a payer and then from that point on you can use that transaction ID from the original transaction along with a new amount in the DoReferenceTransaction API. Reference Transactions area available with Payments Pro by default, but if you want to use them with Express Checkout you'll need to get that specifically enabled on your account.
2) Use the Preapproval API, which is part of the Adaptive Payments platform. This is similar to reference transactions except that you can create preapproved rules by which you can bill your payers at any time without further approval. This would allow you to process payments for them at any time you need to and pull variable amounts accordingly.
3) Use the Pay API, which is also part of Adaptive Payments, with a split payment (parallel or chained) which would allow you to take your cut in real-time without the need to track balances and submit variable recurring payments. Each time one of your customers is paid for their product/service, you would immediately be paid your share.
I want to modify my billing cycle of recurring payment with a different amount before the next billing cycle starts, and I was suggested that I should use reference transaction for that. But as we know recurring payment profile call does not respond with transaction id then how is it possible to make a reference transaction ?
Please help me with this subject.
Thank You,
If you're working with a recurring payments profile created via Payments Pro or Express Checkout then you'll need to update it using UpdateRecurringPaymentsProfile. You could also do it manually via the PayPal account.
If the profile was setup using a credit card there aren't any limitations to updating the amount. Unfortunately, if the profile was setup using a PayPal account you can only increase the amount by 20% every 180 days.
That's probably why reference transactions were recommended. Using reference transactions you can build your own recurring payments system and avoid this limitation.
I am trying to figure out exactly what payment solution to use for my site.
I would like to do the same thing as Spotify (https://www.spotify.com/us/freetrial/ - You'll need to login to see it), allowing users to choose whether they want to pay with PayPal or use a credit card and then taking them to a payment selection screen (on PayPal), then returning them to my site to click confirm and buy.
I am already paying for recurring payments (even though I've yet to use it) and am unsure if that is applicable here. I have also integrated express checkout but I don't know if it will allow recurring payments.
EDIT: Do I need a separate token for recurring payments? Do I have to use the old recurring payments checkout screen? How can this be done as efficiently as possible, like Spotify? Here are my efforts to create a recurring payments profile after express checkout: http://pastie.org/private/sakzopltnwfv93wwmduqq
Diagram:
Select Buy & PayPal (subscription) --> Choose Payment (on PayPal) --> confirm & pay (my site)
This is what spotify's checkout looks like (It wouldn't say update for first time users):
Are they using recurring payments + express checkout? I would really appreciate some help with this.
Yes, you can get this done with Express Checkout + Recurring Payments. That said, if the person chooses credit card when setting up a recurring payment they will have to create a PayPal account. If they're paying a non-recurring checkout then they could use the credit card option without creating a PayPal account.
You mentioned that you're already paying for recurring payments..?? Are you referring to Payments Pro? If so, you don't need to pay for that to use EC + RP. Pro is only necessary if you want to process credit cards directly on your site without ever redirecting to PayPal. This can sometimes make things seem a little more professional and would also give you the ability to let people setup recurring payments without creating a PayPal account when using a credit card.
When using EC you just need to make sure to include the billing agreement parameters in order to get a token back that will work within CreateRecurringPaymentsProfile. Refer to the SetExpressCheckout API reference for more details on that.
This is kind of old now, but is still useful. Take a look at this sample express checkout set of api calls. You'll notice it uses the same token throughout all of the calls.
Just like Spotify -you would need to build that option on your site. If the user chooses to subscribe with a credit card - use the recurring payments w/ direct credit card (see below). If the user chooses to subscribe with a PayPal account - use the recurring payments w/ PayPal Account (this is what Andrew is suggesting above in his response).
Here are the how-to guides:
For direct credit card subscriptions: https://www.x.com/developers/paypal/documentation-tools/paypal-payments-pro/how-set-recurring-payments-profile-using-direct-payment
For PayPal Account subscriptions: https://www.x.com/developers/paypal/documentation-tools/express-checkout/how-to/ht_ec-recurringPaymentProfile-curl-etc
The APIs would allow you to do things like trial periods, setup fee, etc. For example here is a how to on building a freemium kind of model: https://www.x.com/developers/paypal/documentation-tools/express-checkout/how-to/ht_ec-freeTrialRecurringPayments-curl-etc
Is it possible to make Paypal payments using stored user's data (credit card info, name, address etc.) within cron job or other script execution without actual user present?
I want to implement autopayments on my service but I can not to use standard Paypal autocharge functionality because of its complexity.
What you're looking for is called Reference Transactions. You can use the DoReferenceTransaction API to accomplish your goal.
Using this API you simply pass in the transaction ID of a previous Authorization or Sale transaction along with a new amount you'd like to process. It will lookup the billing info saved on PayPal's system using that previous transaction ID, and then process the same source for the new transaction.
This works with both Payments Pro and Express Checkout.
I noticed you posted this with the adaptive payments tag, too. That would be the Preapproval API and the Pay API, but would not involve DoDirectPayment.