Follow Stripe on Twitter

Photo of Christian Anderson

Decrement carbon: Stripe's negative emissions commitment

Christian Anderson on August 15, 2019

As part of Stripe’s environmental program, we fully offset our greenhouse gas emissions by purchasing verified carbon offsets. Starting this year, we’re going a step further. In addition to our offset program, we are committing to pay, at any available price, for the direct removal of carbon dioxide from the atmosphere and its sequestration in secure, long-term storage. We’re announcing this commitment to solicit technology partners and to urge other companies to follow suit.

Read more

August 15, 2019

Photo of Eduardo Serrano

Launching Stripe’s Mexico City office

Eduardo Serrano on August 10, 2019

We’re excited to announce that we’re launching our newest office in Mexico City. This office, our first in the region, will be home to teams focused on building products for the most ambitious technology companies in Latin America.

Internet penetration in Latin America is growing rapidly and the region will soon have more than 500 million internet users. Latin America’s e-commerce growth is outpacing any other region of the world. By the end of 2019, the number of Latin Americans buying online is expected to reach 155 million, up more than 23% since 2016.

Stripe is already working with some of Latin America’s most innovative technology companies, including Platzi, Rappi, Cornershop, Urbvan and Parafuzo. However, we’re just at the start of our journey here. With our office in Mexico City, we’re going to hire across a wide variety of roles, including engineering. Our initial focus will be expanding and adapting Stripe’s global payments and treasury network across the region. Over time, we expect teams in Mexico to build entirely new products in order to accelerate the growth of Latin America’s internet economy.

As a software industry, we’re still in the early stages of figuring out how global technology products should be built. Geographic concentration (especially on the West Coast of the US) has been the predominant mode. Mexico has a strong engineering culture and a lot of highly-trained local talent. By hiring in Mexico City, alongside the 14 other countries Stripe is hiring in today (including our remote hub), we plan to continue to adopt a truly global development model. Our aspiration is to build a world-class team here—tightly integrated with our global engineering organization to build products for entrepreneurs and businesses in Latin America and the rest of the world.

If you’re interested in working with us to help build Stripe’s Mexico City office, please get in touch.

Nos da mucho gusto anunciar el lanzamiento de nuestra oficina en la Ciudad de México. Esta oficina, la primera de desarrollo en la región, contará con equipos enfocados a crear productos para las compañías tecnológicas más ambiciosas de Latinoamérica.

La penetración del internet en Latinoamérica está creciendo rápidamente y la región pronto sobrepasará los 500 millones de usuarios. Así mismo, el crecimiento del comercio en internet es más alto que en cualquier otra región del mundo. Se espera que, para finales de 2019, el número de latinoamericanos que compren en línea alcanzará los 155 millones; es decir, aumentará un 23% en comparación con los 126 millones que compraron en línea en 2016.

Stripe ya trabaja con algunas de las compañías tecnológicas más innovadoras de Latinoamérica, incluyendo Platzi, Rappi, Cornershop, Urbvan y Parafuzo, y esto es sólo el comienzo. Desde nuestra oficina en la Ciudad de México contrataremos una gran variedad de roles, incluyendo desarrolladores de software. Nuestro enfoque inicial será expandir y adaptar la red global de pagos y tesorería de Stripe a la región. También esperamos que estos equipos creen productos completamente nuevos para favorecer el crecimiento de la economía de internet en Latinoamérica.

La industria desarrolladora de software, de la cual somos parte, apenas está descifrando cómo se deben desarrollar productos de tecnología globales. La concentración geográfica (especialmente en la costa oeste de los Estados Unidos) ha sido el modelo predominante. México tiene una fuerte cultura de ingeniería y amplio talento local, altamente capacitado. Al contratar en México, junto con los 14 otros países en los que contratamos hoy (incluyendo nuestra oficina remota), planeamos continuar adoptando un modelo de desarrollo verdaderamente global. Nuestro objetivo es construir un equipo de clase mundial aquí—integrado con nuestra organización global de ingeniería—y crear productos para emprendedores y empresas Latinoamericanas, y globales.

Si te interesa ayudarnos a crear y expandir nuestra huella en Latinoamérica desde nuestra oficina en la Ciudad de México, por favor ponte en contacto con nosotros.

August 10, 2019

Photo of Brandur Leach

Fast and flexible observability with canonical log lines

Brandur Leach on July 30, 2019 in Engineering

Logging is one of the oldest and most ubiquitous patterns in computing. Key to gaining insight into problems ranging from basic failures in test environments to the most tangled problems in production, it’s common practice across all software stacks and all types of infrastructure, and has been for decades.

Although logs are powerful and flexible, their sheer volume often makes it impractical to extract insight from them in an expedient way. Relevant information is spread across many individual log lines, and even with the most powerful log processing systems, searching for the right details can be slow and requires intricate query syntax.

We’ve found using a slight augmentation to traditional logging immensely useful at Stripe—an idea that we call canonical log lines. It’s quite 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.

Out of all the tools and techniques we deploy to help get insight into production, canonical log lines in particular have proven to be so useful for added operational visibility and incident response that we’ve put them in almost every service we run—not only are they used in our main API, but there’s one emitted every time a webhook is sent, a credit card is tokenized by our PCI vault, or a page is loaded in the Stripe Dashboard.

Read more

July 30, 2019

Photo of Ryan Orbuch

A new and improved onboarding flow for Express accounts

Ryan Orbuch on June 24, 2019

Platforms and marketplaces like RVshare, Lugg, and Qwick use Stripe Connect to onboard and pay their owners, movers, and hospitality professionals. Building a great experience for these people and businesses is key to a platform’s success, and we’ve consistently heard that user onboarding is one of the most difficult challenges platforms face. Based on user feedback and analysis of thousands of Express accounts, we made a number of updates to the Connect onboarding flow that drove a 5.3% average increase in conversion rates.

“With Express, signing up to get paid is really easy for our professionals. The new UI helped us increase onboarding conversion by 17% and improved the overall user experience.”
— Trevor Baker, Director of Product, Qwick

Design improvements

It’s now easier for a platform’s users to fill out the onboarding form. A new progress bar shows users where they are in the process, and bigger form fields make it easier to enter their information on mobile devices. The platform’s brand is also much more visible in the form.

The new, improved Connect onboarding flow for Express accounts on desktop and mobile.

Better user guidance

When a user enters invalid information, they’ll get immediate feedback as they fill out the form. Improvements to field validation help ensure that users submit valid information, while keeping the form user-friendly.

When a user enters invalid information (like an invalid address), they’re prompted to update their information.
When a user enters invalid information (like an invalid address), they’re prompted to update their information.

Accessibility upgrades

To provide the best experience for all users, including people who are blind or have low vision or motor impairments, we built the new onboarding flow and reporting dashboard for Express accounts to follow Web Content Accessibility Guidelines. Implementing the latest standards in semantic HTML, labeling controls, keyboard navigation, and focus management helps users onboard and manage their payouts with a keyboard and screen reader, without compromising functionality.

Users can enter information and navigate rich menus with a keyboard and screen reader.
Comprehensive labels and semantic HTML make our interfaces accessible to people who are blind or have low vision.
Comprehensive labels and semantic HTML make our interfaces accessible to people who are blind or have low vision.

Localized flows

Creating a UI that’s tailored to your users’ preferred language and region makes your platform feel like a local business. The onboarding flow has been rebuilt to dynamically update whenever local requirements, laws, or regulations change across the world. This helps platforms quickly expand to new markets outside the US, without having to build new onboarding flows or worry about ongoing maintenance costs or compliance. Express accounts are currently available in the US and Canada, and we’re working on bringing them to more countries soon.

To onboard a French-speaking user in Canada, you'd need to localize the form to handle changes in field structure and validation, business entity types, and compliance requirements (e.g., in Canada, you can’t require collection of a Social Insurance Number). The Connect onboarding flow for Express accounts handles all of these considerations.
To onboard a French-speaking user in Canada, you'd need to localize the form to handle changes in field structure and validation, business entity types, and compliance requirements (e.g., in Canada, you can’t require collection of a Social Insurance Number). The Connect onboarding flow for Express accounts handles all of these considerations.

These are the first of many improvements we’re making to the Connect onboarding flow to improve conversion and help platforms save time, money, and development resources. To try the new onboarding flow for Express accounts, check out the demo, or read the docs.

June 24, 2019

Photo of Devesh Senapati

Stripe Terminal is now generally available in the US

Devesh Senapati on June 11, 2019

Today we’re excited to make Stripe Terminal available to all users in the US. Terminal is a set of SDKs, APIs, and pre-certified card readers that lets you extend your Stripe integration to accept in-person payments.

Businesses of all types are already using Stripe Terminal to build their in-person payment experiences. Online-first retailers like Warby Parker are using Terminal to build a fully customized in-person checkout. Housecall Pro—a software platform that helps more than 50,000 home service professionals run their businesses—now lets its users manage online bookings and accept in-person payments with Stripe all from one app.

“We created a rich customer experience within our app to accept in-person payments, and it only took us a week of development time.”
— Troy Payne, Head of Engineering at Squire

Unify your payments stack

While we mostly focus on internet businesses, 90% of consumer spending still takes place in person. Businesses that operate both online and in person can find it challenging to create a consistent experience and track customers across channels. Stripe Terminal works seamlessly with your existing Stripe integration to create a single view of customers and sales across channels, which makes reporting and reconciliation easier.

“Terminal eliminated the need to manually record payments, saving us more than two hours each day.”
— Jame Mackson, Lead Engineer at The Wedding Shoppe Inc.

In-person payments, made for developers

With the JavaScript, iOS, and Android SDKs, you can integrate Stripe Terminal into your web, iOS, or Android app in a few days. You can customize every user-facing aspect of your point of sale, including the reader screen. And since Terminal is designed to work with your existing Stripe integration, you can set up in-person payments for subscription businesses using Stripe Billing, or for platforms and marketplaces using Stripe Connect.

Customized splash screens on Stripe Terminal readers
Customized splash screens on Stripe Terminal readers

Built for SaaS platforms and marketplaces

If you’re doing a wide deployment of in-person payments to third parties, Stripe Terminal is for you. Terminal helps Connect platforms extend their reach by letting connected accounts accept in-person payments from within their platform. Your platform’s users can receive a unified payout for payments accepted online or in person. You can manage your entire fleet of readers and can ship them directly to your connected accounts using your Stripe Dashboard.

“It took us two weeks to integrate Terminal and start offering it to 1,500 of our Pros. They’re now saving money on in-person payments, saving time with automated reconciliation, and getting their money fast with Instant Payouts.”
— Sean Devlin, Senior Director of Special Projects at Housecall Pro

Getting started with Stripe Terminal

Any Stripe user in the US can now start integrating Terminal in three steps:

  1. Build your mobile or web app interface for in-person sales
  2. Integrate the Terminal SDK to create a connection between your app and the card reader
  3. Pair the Stripe card reader with the SDK and take your first in-person payment

We currently support two types of card readers. You can explore which one is right for your business in the docs or get started by ordering from the Dashboard.

We’re still actively working on Terminal and have plenty of improvements in the works. If you have any feedback or questions, we’d love to hear from you. If you’re outside the US, you can get notified when Terminal is available in your country.

June 11, 2019

Photo of John Collison

Stripe Sessions

John Collison on June 10, 2019

One of our favorite things about working at Stripe is that we serve some of the most demanding customers: high-growth, technology businesses, rapidly expanding around the world, inventing new business models along the way. In some ways, that makes our job harder—it’s tough to stay ahead! But in other ways it makes things a lot simpler. As we think about the next few years of Stripe’s development, we don’t have to overcomplicate things. We can set our roadmap directly based on what we hear from our users.

That’s why we started hosting Stripe Sessions a few years ago. It’s an annual event to get together with our users, show them what’s new about Stripe, and hear their feedback. There are always dozens of engineers, product managers, domain experts, and all sorts of other folks from around Stripe there.

Last year was a record year: over a thousand people came to one of our Sessions events in San Francisco, New York, Paris, and London. In between demos and product announcements, we heard from the likes of Airbnb, Shopify, Xero, and Remitly; we received thousands of comment cards; and we asked Stewart Butterfield the tough questions.

This year, we’re excited to more than double the size of Sessions and hear from speakers like Nat Friedman, CEO of GitHub. But we also want to make sure it’s always a gathering that lets everyone spend meaningful time together. To that end, we’ll be capping attendance at 1,200 for our main event in San Francisco this year, with additional events to follow in Asia and Europe in the fall.

Thanks to those of you who joined us in SF or on the livestream on September 10. You can now watch the full keynote and breakout talks..

June 10, 2019

Photo of Jeff Jo

The secret life of DNS packets: investigating complex networks

Jeff Jo on May 21, 2019 in Engineering

DNS is a critical piece of infrastructure used to facilitate communication across networks. It’s often described as a phonebook: in its most basic form, DNS provides a way to look up a host’s address by an easy-to-remember name. For example, looking up the domain name will direct clients to the IP address, where one of Stripe’s servers is located. Before any communication can take place, one of the first things a host must do is query a DNS server for the address of the destination host. Since these lookups are a prerequisite for communication, maintaining a reliable DNS service is extremely important. DNS issues can quickly lead to crippling, widespread outages, and you could find yourself in a real bind.

It’s important to establish good observability practices for these systems so when things go wrong, you can clearly understand how they’re failing and act quickly to minimize any impact. Well-instrumented systems provide visibility into how they operate; establishing a monitoring system and gathering robust metrics are both essential to effectively respond to incidents. This is critical for post-incident analysis when you’re trying to understand the root cause and prevent recurrences in the future.

In this post, I’ll describe how we monitor our DNS systems and how we used an array of tools to investigate and fix an unexpected spike in DNS errors that we encountered recently.

Read more

May 21, 2019

You’re viewing our website for Sweden, but it looks like you’re in the United States. Switch to the United States site