I think sometimes you are trying hard to resolve issue and at the end you found oops this was the problem. It happened again with me .
Everything working fine and suddenly oops “Facebook payment API not working” .
I checked my code somehow trapped the error code.Google it and found that the callback page not working properly.
so I tried to call it explicitly as I do and found it was working spent few hours wrote whole new code to make sure everything should work as is but not got any success.
Then by god grace an idea came to my mind to check actual call back page define Facebook app setting.
Dam, this was the reason actually in payment callback URL by mistake it was https while there was no certificate installed on site .
I just turned it to http and you know what miracle again. Now Facebook payment API working.
This is surely a learning lesson for me to check the basic first and if someone struggling same problem I urge you to check the callback URL first.
I puzzled lot but ultimately going for sleep with happy ending.