Mass Payment doesn't work over NVP API - paypal

I'm trying to make a pay out to my service's users. I'm using Node.js SDK and choose Mass Payments to make automatical pay outs, since looks like it's only possible choise for me (user presses "withdraw" button inside mobile application, application sends request to our server and then our server makes call to PayPal NVP API to transfer money from our paypal account to user's paypal account). I'm making requests through NVP API.
PayPal responses with this error:
{
"TIMESTAMP": "2015-02-17T20:20:29Z",
"CORRELATIONID": "5a949b0257755",
"ACK": "Failure",
"VERSION": "2.3",
"BUILD": "15295733",
"L_ERRORCODE0": "10329",
"L_SHORTMESSAGE0": "User is blocked",
"L_LONGMESSAGE0": "We're sorry, but your PayPal account isn't currently eligible to send mass payments. Please contact either PayPal Customer Service or your account manager.",
"L_SEVERITYCODE0": "Error"
}
What are possible reasons for such error? Maybe I'm using not appropriate type of account for making mass payments? What kind of account should I have? Or maybe I'm just using not appropriate API for making pay outs?
UPD this error occures when I'm trying to use live paypal servers. On sandbox servers mass payment works completely fine.

Related

Does "TMS Recurring Billing Solution" being enabled on a Merchant Account stop the SOAP API from working?

For some background, we had built an integration with the CyberSource so that users could process one time and recurring payments from within our application. We integrate with the REST API for one time payments, and the SOAP API for recurring payments.
A customer of ours has stated that they were asked by CyberSource to move to a new merchant account with the "TMS Billing Solution" enabled. After doing so, the REST API calls are still working as expected, but the SOAP API calls no longer work with this merchant.
Does "TMS Recurring Billing Solution" being enabled on a Merchant Account stop the SOAP API from working?
I advised them to regenerate the Transaction Key needed for the SOAP API, and try again. Still if anyone knows, some help would be greatly appreciated. We would like not to have to build a new integration because of this change if possible.
Enabling "TMS Recurring Billing Solution" does not stop the SOAP API from working.
Your Cybersource account is not enabled for recurring billing. See the screenshot with for the transaction with request ID 6330290020686535804276.
Screenshot of error

How do I get PayPal missing error codes in PayPal Manager?

PayPal Guest check out denying payments but not returning error codes to PayPal Manager. How how do I get data for denied transaction attempts moving forward? We need to track the code PayPal sends us when they reject a credit card. We are using PayPal Adaptive Payments API on a .NET platform.
manager.paypal.com will only show codes returned by the Payflow API (payflowpro.paypal.com) and the Payflow Link web application (payflowlink.paypal.com)
Adaptive Payments uses the endpoint svcs.paypal.com , and its API responses and web declines are not reported or tracked anywhere , much less in manager.paypal.com which is a separate system
If you are indeed using Adaptive Payments, you need to log your own API call responses.

PayPal Developer: Under "MyAccount" I want to enable payout ... but 'they' need more info?

Under Developer->MyAccound I want to enable payout (Payouts, Payout up to 500 recipients in one API Call).
When pressing "Enable", info "To process your request we need more information about you and your account." is displayed and link "Contact Us", taking me to https://www.paypal.com/cgi-bin/webscr?cmd=_contact-phone.
Finally I created a post for the community https://www.paypal-community.com/t5/Business/Developer-My-Account-gt-Payouts-gt-Activate-not-working/m-p/1431023, up to now w/o an answer.
We are currently evaluating a few payment providers for a marketplace-like service, where we need a checkout and a payout. The process is kind of special, as we usually do payouts only once per "person" (gift business, https://pres-it.com).
PayPal REST API Payout is available in few countries only, the rest of the countries can use PayPal Masspay for sending payments to their customers. In order to find REST API Payout availability in your country please contact PayPal Customer Service team or you can get in touch with PayPal support team by creating a ticket at https://www.paypal-techsupport.com.

Integration tests with PayPal

I would like to be able to test our integration with PayPal. We have sandbox accounts set up, etc, and I can even create payments. However, I'd like to be able to also issue refunds, query for refunds, and all the other APIs, all via integration tests and without human or even browser involvement. The difficult part seems to be that, of course, the PayPal flow requires someone to interact with a PayPal URL and approve the purchase.
Some more detail : We use the standard e-commerce flow on our site. User shows up, puts a product in a cart, proceeds to buy flow, selects a payment method, in this case PayPal. Of course, in PayPal's case, we create the Payment in PayPal and then simply show the embedded popup of palpal's flow where the user logs into their PayPal account and approves the purchase. PayPal does all this work. We simply get the response that 'yes, the purchase has been approved'.
So.. in an integration test environment, we can create the Payment entity in PayPal but.. how do we, in a sandbox environment integration test, get that payment approved? Is there a developer API available on the sandbox environment that says 'hey, this PayPal user approves this payment' or 'hey, this PayPal user rejects this payment', so that in test code we can simulate the buyer's flow. Or is there a way to set up a sandbox account to just 'auto approve' purchases or 'auto reject' purchases, simply for a test environment?
Yes, you can do anything in the sandbox that you can do on the live servers. This is a very broad question, though, so it's tough to answer.
For example, if you want to process payments without the need for any browser flow you'll need to have a billing agreement setup or a Pro transaction so you can run reference transactions. This would involve Express Checkout APIs and/or Payments Pro APIs, and reference transactions APIs. Depending on whether you're using Classic or REST, though, the API calls would be different.
In any case, once a transaction exists in the PayPal sandbox system you could then use the API to refund it. Same thing, though...you'd either be using REST APIs or Classic.
If you can provide more specifics in your question I can update this answer to be more specific as well.

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.