I created a Facebook app and integrated Credits. However, about every second time I call the credits API, I get the following error:
There Was a Problem Processing Your Payment / Sorry, but we're having trouble processing your payment. You have not been charged for this transaction. Please try again later.
Everything on my end looks good. On success, the callback is called 3 times:
payments_get_items
payments_status_update, status "placed"
payments_status_update, status "settled"
When it fails and the above error dialog is shown, I can see that only the first call is performed (payments_get_items).
I can see that the response back to Facebook is the same in both cases:
{ "content":[ { "item_id":"1", "title":"[title]", "description":"[description]", "image_url":"[url]", "product_url":"[url]", "price":30 } ], "method":"payments_get_items" }
Has anyone experienced this or can imagine what the reason for the behaviour is?
Thank you!
Bw
I just had similar issue.
Error message is generic and it doesn't give you exact cause of the problem.
In my case the problem was that my image url was misspelled so check your payments_get_items response very carefully.
Beside checking image url validity also check that length of your title and description is ok.
check "Developers response" section on this url for info on boundaries :
https://developers.facebook.com/docs/payments/callback/#payments_get_items
BTW, I think they mistakenly marked product url as required, however you can put same value as for image url just to be sure.
Related
PayPal is ignoring the response to my instant update callback.
I'm on sandbox
I'm getting the callback
I'm returning the exact example result in the documentation
...and PayPal continues to show my default shipping fee
Here's what I return from the callback (the example response at the end of this page):
METHOD=CallbackResponse&OFFERINSURANCEOPTION=true&L_SHIPPINGOPTIONNAME0=UPS Next Day Air&L_SHIPPINGOPTIONAMOUNT0=20.00&L_TAXAMT0=2.20&L_INSURANCEAMOUNT0=1.51&L_SHIPPINGOPTIONISDEFAULT0=false&L_SHIPPINGOPTIONNAME1=UPS Express 2 Days&L_SHIPPINGOPTIONAMOUNT1=10.00&L_TAXAMT1=2.00&L_INSURANCEAMOUNT1=1.35&L_SHIPPINGOPTIONISDEFAULT1=true&L_SHIPPINGOPTIONNAME2=UPS Ground2 to 7 Days&L_SHIPPINGOPTIONAMOUNT2=9.99&L_TAXAMT2=1.99&L_INSURANCEAMOUNT2=1.28&L_SHIPPINGOPTIONISDEFAULT2=false
I've also tried a much simpler response with no change in effect:
L_SHIPPINGOPTIONAMOUNT0=20.00&OFFERINSURANCEOPTION=false&L_SHIPPINGOPTIONISDEFAULT0=true&L_SHIPPINGOPTIONNAME0=Standard+Domestic&METHOD=CallbackResponse
What could I possibly be doing wrong? I see the callback in my server log. This is baffling.
It seems like in the response from the above url one parameter is missing which is "L_SHIPPINGOPTIONLABEL0=somenamehere" .
Try updating your callback script to send the above variable also in the response to the PayPal and see if that works for you .
For everyone interested, here is the documentation of the "Callback Response Message". I was also searching for the documentation because of a missing parameter.
https://developer.paypal.com/docs/classic/api/merchant/Callback_API_Operation_NVP/
I'm developing Facebook payment interface for my game. I did everything as described in documentation. And I came to the strange situation where "Asynchronous Payment Method" works just fine (I see callback calls to my server) but immediate "Test Payment Method" doesn't work (I do not see callback call to my server). Instead FB.ui call returns this error:
{
error_code: 1383066,
error_message: "Something went wrong while processing your payment…harged for this transaction, so please try again."
}
Here is a screenshot with error: http://monosnap.com/image/DetZ1VqEy1d7yuiVXdJLUZdL1Ukl45
Can anyone help?
p.s. I searched in Internet ant there is no information about FB API Error 1383066
Problem just gone by itself. I think that it was an issue on FB side and they just fixed it.
I've create an facebook app and it run smoothly at
https://apps.facebook.com/icoloringstar/
But the problem is: when I search my app name "icoloring star" in facebook, it link to the app at url:
https://apps.facebook.com/icoloringstar/?fb_source=search&ref=ts
Then facebook said that:
App "iColoring Star" is unavailable
The app "iColoring Star" is temporarily unavailable due to an issue with its third-party developer. We are investigating the situation and apologize for any inconvenience.
We found that url part "ref=ts" cause above problem, but really do not know why?
Could you explain me why and how to resolve this problem?
Thank you very much.
It sounds like your code is failing when the ref parameter is supplied in the request path.
I was able to repro this with any arbitrary value in the ref parameter when accessing your app
Check your server logs and and see if you're returning a 500 error to facebook when the request comes in
See if you have any code that parses a ref parameter and check it's not throwing exceptions
Make sure your callback URL in the app settings doesn't also specify a ref parameter or your app may receive two values and/or fail entirely
It means 'Top Search'. User enter a query into the top of search.
There are some ref parameters.. ref=bookmarks for example. I dont know the full list.
Did you put your app on Facebook App Center?
I doing paypal express checkout in jsp on sandbox with out using the sdk I am getting the ACK as sucess when generating the token after that when i redirected to sandbox now it shows error message on sandbox as
You have requested an outdated version of PayPal. This error often results from the use of bookmarks.
This is the Ack response i got
TOKEN=EC%2d5PT30649GD612951T&TIMESTAMP=2012%2d03%2d04T16%3a44%3a18Z&CORRELATIONID=4ed0e9de9ec8a&ACK=Success&VERSION=84%2e0&BUILD=2571254
I decoded the response using URLDecoder and redirected to the sandbox
if (ack.equals("Success")) { String logurl = "https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=express-checkout&token="+token;
response.sendRedirect(logurl);
}
Thanks in advance for any suggestions and answers
If you are receiving this error, it is best to check the url you are redirecting.
Documentation says that the URL is
https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout
Careful with the _express-checkout part. If you are using an ide (like Visual Studio) that marks the urls as links, you might think that it is a space (as it becomes invisible) and at the first error you encounter, you might delete the underscore char.
I got it working and I am answering because i found many one have same error This error occurs mainly due to any of the samll errors or changes in your NVP if you are using it.
I think This link will be helps , deals with "You have requested an outdated version of PayPal"
I have a problem getting facebook to call my credits callback script. I've setup a company and the callback url. I used the example script for it. But nonetheless I always get this error when I try to access the payment window using the JS sdk.
var obj = {
method: 'pay',
order_info: order_info,
purchase_type: 'item'
// dev_purchase_params: {'oscif': true}
};
FB.ui(obj, getCashCB);
Error:
There Was a Problem Processing Your Payment
Sorry, but we're having trouble processing your payment. You have not been charged for this transaction. Please try again.
error code from console: 1383046
meaning:
1383046 AppInvalidDecodedResponse The application return value was invalid after json_decoding the return value.
No matter if I'm in sandbox mode, set the callback url to something completely different.
The callback script is never called.
I've searched far and long for anybody else with this problem, but found nothing meaningful. There was something about the server accepting curl requests from facebook but I don't know what that means or how to test for it.
Solved! Whilst looking for the cause I noticed that this error can pop up from a lot of things. But this case is rather specific:
Because the facebook app is still in development, we hid it behind a .htaccess file. So when you visit the site, you login, and the app loads etc. BUT this doesn't work for the credits callback file. Since the request then comes from facebook, it would have to login with user:pass. I tried putting that in the callback URL, but that doesn't seem to work.
So I only need to put the callback file somewhere where you can reach it without .htaccess and Tadaaa it works!
Basically this happens when Facebook doesn't understand the response it gets from calling your payment callback URL. Thew most likely reasons are:
The callback URL is wrong
Facebook gets an error response because the server or some app-level firewall won't let it access the URL (Jon's problem)
Facebook gets an error response because the callback script runs into an exception.
The callback script's response is malformed.