PayPal Rest API - 401 when creating an invoice - node.js

I'm getting a 401 error when I try to create a PayPal invoice. I'm using the nodejs REST API:
https://github.com/paypal/rest-api-sdk-nodejs
I did a quick test with the create invoice sample, changing the id and secret in the configure.js to those my app in sandbox. I get the 401 when this happens as well. The app is setup to allow invoice actions (it's in the scope parameter when I request the token), is there something else I need to enable?
I contacted PayPal technical support, they said to contact PayPal MTS. When I contacted them they said to contact technical support... I'm assuming it's something account related as that's the only thing I changed in the sample.
Edit 2014-09-17
I can get a token with curl:
{"scope":"https://uri.paypal.com/services/applications/webhooks https://uri.paypal.com/services/invoicing openid https://api.paypal.com/v1/payments/.* https://api.paypal.com/v1/vault/credit-card/.* https://api.paypal.com/v1/vault/credit-card","access_token":"A015QDaSWWVrhK.FNSZVZd-vDGflSm.g1H.4PnDeXaYDFqo","token_type":"Bearer","app_id":"APP-80W284485P519543T","expires_in":28800}
I'm using the samples from github (configure.js and invoice/create.js specifically) the only thing I changed was the client and secret in configure.

The e-mail in the request was the issue. It worked with the sample because it was the e-mail associated with the app. Changing the config id and secret to mine wasn't enough, the e-mail needed to be changed to mine as well.

Just spent a couple of hours trying to solve this very issue. The answer Dave gave above led me on the right track.
The "merchant e-mail" in the request has to be the Paypal Sandbox Developer Account associated with the REST API app in question. I hope this helps someone.
Below is a screenshot highlighting the property in Visual Studios and PostMan.

Related

ENVELOPE_ALLOWANCE_EXCEEDED error on demo API call

I have a basic plan of docusign which gives me 5 envelop per month. I am testing my integration key on demo api before going live. It needs 20+ api test calls before upgrading demo integration key to live. But after 5 demo api calls it is giving me following error:
Exception: ENVELOPE_ALLOWANCE_EXCEEDED The envelope allowance for the account has been exceeded.
Can someone please help as I am new to docusign.
Demo accounts should not have such a strict envelope limit. First, I would recommend confirming your calls we're actually hitting your Sandbox. To do so, log in to the demo environment: from https://developers.docusign.com/ click on Go to Sandbox. If you log in through that method, do you see the envelopes you created using your integration?
If so, your Sandbox may have been incorrectly provisioned. Please send an email to go-live#docusign.com with your Production account ID and your Demo account ID.

Instagram webhook not activating

My goal is to use the Facebook webhooks to get a notification whenever an IG user mentions my IG account. For that I have followed these steps:
I have created a Facebook page and connected it with an Instagram business account.
I have created a Facebook app (which is now live) and added the product "webhooks".
I have connected my app with my page.
I have created a webhook and subscribed to the mentions event.
I have tested the webhook, using the tools provided by Facebook and it works.
The problem I'm facing is that I can't get my app to work with real data. I have tried to mention my business IG account from my IG personal account, but nothing happens. My callback url is not getting called.
My app doesn't need users to login, so I'm not sure if I need to send my app for review. Do I need a special permission?
I had the same problem. For my case, when I installed the app via graph api explorer, the page token I was using didn't have the instagram_manage_insights permission. So I granted that permission, got a new token, re did the POST request to the {page-id}/subscribed_apps again with the new token and that fixed the problem. Just for the record, I used a system user token from the business manager.
Did you verified your Facebook app via app review? If not, you won't get production data via a webhook callback for the Instagram. I had the same issue and asked the Facebook support and got following response:
However, this is not the same for instagram or pages. This is just how the product teams have decided to implement it. For app review, you can show a mock process of the flow, using either the test webhook or your own process. The app review is less about technical implementation steps, but just a way to make sure that your app is going to use the permission in a way that follows our guidelines, so mocking the procedure should be fine. The reviewers understand that you do not receive webhooks in dev mode and should take this into consideration.
For more information check out following links:
Why is the Instagram Graph API webhook not working
https://developers.facebook.com/support/bugs/495933900986533/
I just figure it out of this problem.
There is a mistake in the official Instagram webhook guide:
With Graph API version 3.2, the /{page-id}/subscribed_apps edge now requires the subscribed_fields parameter, which currently does not support Instagram webhooks fields. To get around this, use your app's dashboard to subscribe.
https://developers.facebook.com/docs/instagram-api/guides/webhooks/#install-app
However, the app's dashboard subscribe is another function. You need your page to subscribe to some field to receive webhooks
Just POST /{your-instagram-connected-page-id}/subscribed_apps?subscribed_fields=feed&access_token={your-instagram-connected-page-token}
Then you will receive webhooks in live mode.

Paypal REST integration - no error, but payment not processed

After some other issues we managed to go live with the PayPal REST integration. Sandbox works fine, by the way, so we assume that the code is o.k.
Well this is what happened on live System:
My first customer initiated her first payment via paypal.
The payment request shows as successfully executed on the Paypal Dashboard. No error!
But the customer always got the message that something is wrong with their creditcard.
According to Paypal customer support the credit Card is fine (and the customer successfully made other payments using the same credit Card with Paypal) but that somthing must be wrong with the payment request.
But as mentioned above I cannot see an error in the dashboard nor in the logfile.
Paypal Tech Support is not responding (since over a week), so maybe somebody here has seen this before and can advise?
Thanks a lot
Christoph

PayPal Sandbox: Your session has ended

Even though I am using my buyer test account, when I run the paypal.billingAgreement.create, I am redirected to a page that states:
"This transaction has expired. Please return to the recipient's website to complete your transaction using their regular checkout flow."
My logs show no exceptions (partially shown below):
Billing Plan state changed to CREATED
For approving subscription via Paypal, first redirect user to: https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=EC-7TT13145TK360674X
Payment token is: EC-7TT13145TK360674X
Sequence of my code is:
paypal.billingPlan.create
paypal.billingPlan.update
paypal.billingAgreement.create
Does anyone know why this could be happening?
Thanks in advance.
I had this problem when using Cloud9 online IDE.
My best guess is that C9 is rotating IP addresses for each call, and PayPal is validating not only on the token but also the IP Address.

Amazon Marketplace FBA API connection issue - returns error 'Seller is not registered for basic fulfillment'

We are trying to build a custom in house solution to MWS so that we can use Amazon FBA. We have professional accounts setup in both US and EU and we have triple checked that the accounts are registered for FBA. For some reason when we try the 'GetFulfillmentPreview' operation (or any other for that matter) we get the below error:
<ErrorResponse xmlns="http://mws.amazonaws.com/FulfillmentOutboundShipment/2010-10-01/">
<Error>
<Type>Sender</Type>
<Code>InvalidRequestException</Code>
<Message>Seller is not registered for Basic fulfillment.</Message>
</Error>
<RequestId>77690464-3c8f-4b5c-964e-3a89046fae7c</RequestId>
</ErrorResponse>
We have contacted Amazon who are looking into the issue, but were wondering if anyone here has had a similar issue? I would love to be made to look stupid with a simple solution but we have triple checked access codes, seller ID codes, registration tickboxes in our account, different APIs and operations etc, all with no joy.
Thanks in advance!
For same parts of the API to work, you’ll have to provide tax information in your MWS Pro account. Otherwise you’ll get a
Seller is not registered for Basic fulfillment.
error message back.
Found in https://media.readthedocs.org/pdf/django-oscar-mws/latest/django-oscar-mws.pdf

Resources