Engineering

We love the web, and care deeply about beautiful code, APIs, and documentation. This belief is as true today as it was when we first wrote this line on our website when we were ten people. Our engineering blog captures how, what, and why we code at Stripe.

Engineering

The ML flywheel: How we continually improve our models to reduce card testing

Ryan Drapeau Payment Intelligence
Inayat Khosla Advanced Attacks
Blog > The ML flywheel > Index image

Card testing is one of the most significant fraud threats to Stripe, its users, and the broader financial ecosystem. Stripe’s machine learning–based approach—based on rapid detection and retraining—has led to successful card testing attacks on Stripe decreasing by 80% over the last two years.

Read more 

Engineering

How Stripe builds interactive docs with Markdoc

Ryan Paul Docs Product
Makdoc Logo

Delivering a good user experience without compromising the authoring experience required us to develop an authoring format that enables writers to express interactivity and simple page logic without mixing code and content.

While developing Markdoc, we learned how to balance interactivity, customization, and authoring productivity while undertaking a major overhaul of our documentation platform.

Read more 

Engineering

Fast builds, secure builds. Choose two.

Sushain Cherivirala Software Engineer, Build Team

Stripe's continuous integration (CI) system is responsible for orchestrating build pipelines and executing the tens of thousands of test suites that our engineers depend on to validate their changes. We lean on a combination of open-source technologies and novel engineering to deliver a CI system that is performant, secure, and delivers a delightful developer experience.

Read more 

Engineering

Similarity clustering to catch fraud rings

Andrew Tausz Risk Intelligence

Stripe enables businesses in many countries worldwide to onboard easily so they can accept payments as quickly as possible. Stripe’s scale makes our platform a common target for payments fraud and cybercrime, so we’ve built a deep understanding of the patterns bad actors use. We take these threats seriously because they harm both our users and our ecosystem; every fraudulent transaction we circumvent keeps anyone impacted from having a bad day.

Read more 

Engineering

Introducing the Stripe CLI

Tomer Elmalem Engineering Manager, Developer Products
Stripe CLI index

Building and testing a Stripe integration can require frequent switching between the terminal, your code editor, and the Dashboard. Today, we’re excited to launch the Stripe command-line interface (CLI). It lets you interact with Stripe right from the terminal and makes it easier to build, test, and manage your integration.

Read more 

Engineering

Singapore engineering hub

Piruze Sabuncu Revenue & Growth

Stripe launched in Singapore in 2016. Since then, we’ve seen strong traction, and are proud to work with some of the fastest-growing companies in the region, including Grab, Mobike, and Carousell. Today, we’re increasing our investment: we’re very excited to announce that Singapore is joining Seattle, Dublin, and San Francisco to become Stripe’s fourth global engineering hub.

Read more 

Engineering

Fast and flexible observability with canonical log lines

Brandur Leach API Experience
API request durations

Logging is one of the oldest and most ubiquitous patterns in computing. We’ve found using a slight augmentation to traditional logging immensely useful at Stripe—an idea that we call canonical log lines. It’s a simple technique: in addition to their normal log traces, requests also emit one long log line at the end that includes many of their key characteristics. Having that data colocated in single information-dense lines makes queries and aggregations over it faster to write, and faster to run.

Read more 
  1. 1
  2. 2
  3. 3
Next

Like this post? Join our team.

Stripe builds financial tools and economic infrastructure for the internet.

Have any feedback or questions?

We’d love to hear from you.