They have tons of friendly APIs, use JSON for everything, and it's the top solution right now for friendly UX, anti fraud (customizable), and scalability.
They also have "connect" apps -- so you can even make a plugin that you 1-click connect to your playfab account (like from your plugin dashboard)
On top of that, Star Citizen uses it, as a prime example.
We use it, too -- you can check out the flow (without actually finishing) @ https://www.ThroneOfLies.com
____________________________________
In my setup, the client pays >>
goes to my node API before it's officially approved >>
I add a steam key to metadata and description (so the key is delivered via a reliable Stripe email) >>
delete key as soon as I grab it from my mongoDB (add back if err/failed) >>
Show a thank you page if success, or err page if err.
____________________________________
My open-source implementation (meant for snippets or ideas -- probably won't work if you just clone it):
https://github.com/dylanh724/tol-node-public/blob/master/tol2/routes/stripe.js#L492-L607
____________________________________
There's also a "simple mode" too, where you just paste some client code and you don't even need a server.