improved

Weekly Changelog: Monday, August 25

Today is Monday, August 25. Last Monday (August 18) was Never Give Up Day, and Tuesday (August 19) was National Potato Day. If you've ever seen a potato trying to sprout in a kitchen cabinet, with no possible hope of reaching soil or water, you know that celebrating one is very much a celebration of the other.

Last week was an engineering onsite week, where we had the whole team out to SF to work together for five days. Highlights included all-you-can-eat sushi; stumbling upon the excellent Argonaut bookstore in Nob Hill, where Rohan got to hold a book of Gregorian chant published in 1661, and Elangeni purchased a terrifying clown painting; and team bonding over tea tree face masks.

We also spent last week planning out some major pieces of work, including a redesign of our checkout, that'll be dropping in the next 2-4 weeks. As a result, the changelog is a little shorter this week.

We made a few changes to our external APIs and reporting to give our users more access, more easily:

  • Julia added purchase metadata (passed in via externalMetadata to POST /checkout) to the payout report
  • Elangeni added a contact[email] field to the POST /checkout endpoint to allow prefilling the user's email
  • Julia added information about the payment method and processor to our purchase and refund webhooks and APIs
  • Jinting added a new webhook, payment.failed, that fires when a payment fails, so you can be alerted in real time

We cleaned up our direct-checkout flow to make checking out with Neon from in game even faster:

  • Shreyas removed the email field from the Apple and Google Pay forms, instead pulling it from the wallets directly

And, as always, a grab bag of other miscellania:

  • Shreyas updated our handling of a few Razorpay errors to show the appropriate error to the user where relevant
  • Elangeni continued her work on improving our processing of longer-running asynchronous payments from last week
  • Jinting updated our fraud model to take into account more user-level information for better analysis