Hacker News new | ask | show | jobs
by Silhouette 2004 days ago
I know of no payment service provider that offers support for testing that is good for fairly normal 2020 software development processes. The standard seems to be offering one separate sandbox environment along with your production one, which you can use to experiment without literally making charges/refunds/etc, and possibly a set of specific credentials you can use to simulate various outcomes such as a declined card or insufficient funds. I know of none that offers enough for stronger safeguards such as automated integration testing as part of a CI system, nor additional sandbox environments so you can for example test a new integration independently without disrupting your main test/staging system that is integrated with the sandbox you get automatically.

Just to extend the OP's anecdote, we also have someone signed up for real with every payment method we offer, though more recently we've been looking at moving away from these kinds of payment service entirely for this among other reasons.

1 comments

In my experience, some (maybe not Stripe) payment vendors sandbox environments acts slightly different, and these minor issues can break things in production. A payment provider I worked with didn't have a proper way of "storing" cards. But you could create a subscription and bill it whenever you wanted. We didn't want to risk that the subscription stopped working, so we hard coded the subscription to be valid until 9999-12-32 (why not?). This worked fine in the sandbox, but when it was pushed out to production, it didn't work at all, because here in Europe, with the SCA that is enforced by the banks, they refused to create subscriptions that exceeded an unknown amount of time.
> they refused to create subscriptions that exceeded an unknown amount of time

I don’t know anything about payments or the EU regulations but it feels kind of stupid to not specify the maximum amount of time allowed? Is it just bad documentation or does that date/interval have to be secret for some reason?

With that, I suppose we now can look forward to a Y10K problem. :)