I know Paypal Permission Service supports Express Checkout, that is, it allows one to charge on behalf of other users.
Does Permission Service also support Braintree's v.zero SDK? That is, can I use v.zero to charge on behalf of other users?
Related
I would like my website to be able to process PayPal payments on behalf of merchants. The merchants will have their own PayPal accounts and will need to give me permission to do so.
Permissions API Deprecated
PayPal have a "Permissions API" which allows a third-party such as a hosted shopping cart to process on behalf of PayPal merchants. See: https://developer.paypal.com/docs/archive/permissions-service/integration-guide/PermissionsUsing/
The above page says:
Adaptive Accounts and Adaptive Payments are no longer available for
new integrations. PayPal provides documentation for these APIs to
support existing integrations.
PayPal REST API
Are these things possible using the PayPal REST API:
perform a handoff from my site to PayPal, have the merchant grant my site permissions to act on their behalf,
process payments on behalf of the merchant using the credentials obtained from the first step
Every merchant can obtain ClientID/Secret credentials from the Live tab of a REST API App via https://www.paypal.com/signin?intent=developer&returnUri=https%3A%2F%2Fdeveloper.paypal.com%2Fdeveloper%2Fapplications , and enter them into their config interface on your platform.
It's is possible to use the PayPal "Marketplaces and Platforms" API to achieve this:
https://developer.paypal.com/docs/platforms/seller-onboarding/
I'm working on a php project that needs to integrate Paypal API's. I've chosen REST API's. But I've a business account(sandbox). Is it possible to call REST API's using this account type?
You need to log into developer.paypal.com using any live PayPal account, via https://www.paypal.com/signin?returnUri=https%3A%2F%2Fdeveloper.paypal.com%2Fdeveloper%2Fapplications
If you don't have a live PayPal account, create one.
Once logged in, the number of REST API apps and corresponding sandbox accounts that you can manage is unlimited.
I'm looking for a paypal feature where a user grants permission to my webservice upon registration and then my webservice can take payments using an API when a user clicks a button on the website. I don't like it when a user has to go to the paypal gateway for each payment, it would be much better if it would be possible to initiate the payment when a user just clicks a button on the website.
I think braintree already offers this functionality with their paypal vault feature but is this available with paypal directly? I've taken a look at Authentication but it seems a bit drastic for normal users to authenticate full permissions to an app.
If you are looking for direct card payments(without navigating to Paypal checkout page) you will need to use Dodirectpayment API calls which needs a PaYPal PRO account that is supported in US,UK and AU or you can try Braintree Dropin UI as well.
https://developer.paypal.com/docs/classic/paypal-payments-pro/integration-guide/WPDirectPayment/
I am working on a website in which a facility pays us for membership. Their membership payment is the only money we receive. This payment is done via Paypal Website Payments Pro using the DoDirectPayment API.
These members then rent out their facility to customers by listing available blocks of time on our website. The customer would pay for this time block via credit card, also via DoDirectPayment, but this time the payment goes directly to the member's Paypal account.
I have found a lack of clear direction on what needs to be done to enable this. I know I could require all members to have a Paypal Payments Pro account ($30 per month) and store their API credentials (including passwords and signatures) in our system and those payments could be handled directly. But I am vaguely aware of the Third-Party app authorization option... I just can't find info on how it should be set up.
Is it possible to only store the member's Paypal email address and just ask them to authorize our app in their profile?
Also, I saw someone suggest the thrid-party payment recipient wouldn't even need a Pro account. If that is the case, what do I need to change about the API call (I'm using the NVP method) so that our Pro account is leveraged but payment is given to the member?
First, your members will need their own Pro account. The only way to try and get around that would be to have all of the funds come into your account and then disperse them accordingly. This is frowned upon by PayPal and will result in a suspended account.
You could indeed have users enter their API credentials into your application and store them with your customer's profile so that you can include them in API calls for that particular member. You'll want to make sure to encrypt these values if you end up doing that.
The proper way to handle it (since you're a hosted solution) would be using Permissions. You would use your own API credentials, but then pass an additional parameter to flag what account you're making that call on behalf of. This is where the Permissions come into play. Your members will need to Grant API Permission for your app to make the DoDirectPayment call on their behalf.
This can be done manually from within the PayPal account under API Access, or programatically via the Permissions API.
OK, I discovered the answer. I am sharing the detail here for others looking for this very elusive information:
My account (hosted solution) must be a Pro account.
Members who will be selling to customers on my site must also have Pro accounts. I tested the same code with a regular business account and the error said "This transaction cannot be processed due to an invalid merchant configuration."
Members do not have to give me all their API credentials.
The DoDirectPayment call is the same as if I were doing my own payment (almost). I use my own username, password, and signature. The way to send the money to another account is to include one more parameter called SUBJECT which should be the email address associated with the member's Paypal account (not their API username).
The member must grant my (third-party app) account permission. In my case I only needed the one Paypal labels "Process your customers credit or debit card payments." which should correspond to DIRECT_PAYMENT in API terminology.
Andrew's answer gave me some additional keywords to use in searches, and I appreciate the tip off to the Permission API. It did not directly answer the question, but that will be a nice feature to add to my app instead of making users go through their Paypal profile's to grant permission.
I'm looking to integrate paypal as a payment gateways for my customers.
I provide a software online to customer who sells products to users, so I'm developping paypal as a third party, so the money is directly transferred in my customer's paypal account, and not mine.
I have create my account in paypal so I have my credentials, and let my customer grant permission to my app manually as write here (https://developer.paypal.com/docs/classic/admin/third-party/ )
I'm using the merchantSDK and DoDirectPayment method which is only available in US, UK & Canada.
My question is about the location of my acccount. Do I also need an account in US/UK/Canada (DoDirectPayment Api can just be use in US/UK/Canada - as write here : http://go.developer.ebay.com/developers/paypal/forums/soap/dodirectpayment-merchant-country-not-supported), or the only requirement is that my customer must have a US/UK/Canada business paypal account ?
Thank your for your help.
Only the account actually running the DoDirectPayment call would need Pro enabled.