Follow Stripe on Twitter

More flexibility with Stripe Billing

Arne Roomann-Kurrik on May 6, 2020

Stripe Billing is designed to be the fastest way for ambitious businesses to set up recurring subscriptions or one-off invoices. Companies such as Slack, The Atlantic, Notion, and Postmates use Billing so they can focus their engineering resources on their core business instead of building and maintaining a subscription-management system. And they get key advantages because Billing is deeply integrated into the Stripe payments stack—for example, our customers recovered 41% of failed payments last year through automatic card updates, smart retries, and other included capabilities.

Over the past few months, we’ve added several new features to Stripe Billing to help you support more business models, shave time off of your operations, and let you bill customers globally with advanced invoicing features:

More flexible billing logic

  • Subscription schedules: With subscription schedules, you can more easily configure changes to subscriptions, including starting a subscription on a future date, backdating a subscription, or upgrading or downgrading a subscription on a future date.

    Subscription schedules in the Dashboard.
  • Sub-cent billing: Decimal amounts for pricing let you charge unit prices of a fraction of a cent for a subscription or invoice. For example, a cloud storage SaaS business might want to charge $0.0005 per MB used.

  • Subscription pending updates: Pending updates let you make a change to a subscription only when a payment succeeds. For example, if your customers add a seat or upgrade to a more expensive plan, you can now charge them a prorated amount right away (or restrict access to your service if the payment fails).

Shortcuts to save you time

  • MRR by product and plan: The Billing analytics dashboard provides time-saving charts and analytics right out of the box so you don’t have to spend time building them yourself. You can now view monthly recurring revenue (MRR) by specific products and plans to measure the health and trajectory of distinct parts of your business.

    MRR by product and plan.
  • and Does your team create a lot of invoices or subscriptions from the Dashboard? We added some shortcuts. You can just type or in any browser to save a few clicks.

    And once you’re there, Billing’s new invoice and subscription editors are faster to use and let you create customer records in-line. Saving just a few seconds for each transaction adds up fast for your operational teams.

Customized and compliant invoicing

  • Send invoices from your own domain: Your business might send a lot of invoices, receipts, and other emails via Stripe. In order to maintain a consistent brand experience, you can now send these from your own custom domain.

  • Line item credit notes: We’ve improved our credit notes functionality to make it fast and easy to adjust specific line items on a finalized invoice via the Dashboard or the API. This helps keep your records accurate and gives you an easy way to issue refunds or credit customers when an invoice changes.

    Line item credit notes can be adjusted.
  • Flexible invoice numbering: Invoices can now be numbered sequentially across your entire account—this is particularly useful for businesses that have to stay compliant with local invoicing regulations in Europe. If you’re migrating from an older invoicing system, you can start with any arbitrary invoice number to continue an existing sequence.

    Invoices can be numbered sequentially.

We’ll continue to add features to Stripe Billing that give your business flexibility as it grows. To get started with Billing, visit the overview—you can use all of these new features either from the Dashboard or via the API. As always, please let us know if you have any questions or feedback—we’d love to hear from you.

May 6, 2020

Updates to Stripe's advanced fraud detection

Leela Senthil Nathan on April 28, 2020

Millions of businesses rely on Stripe to accept payments safely. Our goal is to help those businesses maximize payments from legitimate customers, while minimizing their losses to fraud.

Online fraud causes unnecessary losses for most online businesses; for some, it can be so expensive that it threatens their viability. Accordingly, Stripe has been investing in industry-leading fraud prevention technology since 2015. Radar uses advanced machine learning (optionally augmented by human-supplied rules) to shield Stripe users from hundreds of millions of dollars of fraudulent transactions every month.

As the online economy grows, online fraud is becoming more sophisticated, and Stripe dedicates large teams to improving Radar’s accuracy and building defenses that better-protect Stripe users.

As part of Stripe’s fraud prevention, we use fraud signals detected by Stripe.js and our mobile SDKs. These signals are most commonly used to identify “bots”—scripted web browsers that make fraudulent transactions. Signals we pay attention to include things like screen resolution and browsing patterns. Stripe’s ability to use these real-time signals is part of why Radar is so effective: in a domain where even small improvements can be a big deal, they reduce the expected number of fraud-driven chargebacks a business will receive by 11%.

In response to some recent questions about how we use signals gathered via Stripe.js and our mobile SDKs, we have made some updates to provide additional clarity:

  • We updated our privacy and cookie policies to make it clear that our advanced fraud detection signals are used only for security and anti-fraud purposes. Stripe doesn’t—and won’t—share or sell this data to advertisers.
  • We put up a page with more details about the advanced fraud detection signals we collect.
  • We’ve added the ability for site and app owners to disable advanced fraud detection signals.

We hope these updates make our commitment to our users even clearer. If you have any questions, please don’t hesitate to reach out.

April 28, 2020

Stripe Issuing is now open to all US businesses

John Haddock on April 23, 2020

Stripe Issuing is an API that allows you to create and control virtual and physical cards. Today, we’re opening access to all businesses in the US, so you can sign up and start creating cards instantly.

We built Issuing to help businesses manage how funds get spent. Companies like Zipcar want to help renters fill up the gas tank without using their personal cards. Companies like Postmates want to help couriers pay for orders without allowing unapproved purchases. These businesses couldn’t just hand out corporate expense cards—they needed to create their own cards.

Postmates, Zipcar, and Carrot designed cards on Stripe Issuing.

The card issuance industry today looks a lot like what the payments industry did a decade ago—it can take months to integrate to a provider and manufacture cards, only to get rigid capabilities on a legacy stack. We set out to launch the first issuance platform built for developers. Our self-serve APIs and public docs give developers the tools to build the unexpected. We even created a new manufacturing process so businesses can customize physical cards from Day 1.

Now, any US business can instantly launch a commercial card program, right from their Dashboard, at no cost to get started. And Issuing comes packed with capabilities that ensure that any business—from a new startup to a tech giant—can build flexible cards with our APIs.

NewOn-demand branded cards

You can now get customized cards in your hands in two business days. Just select a card design in the Dashboard, upload your logo, and place new orders at any time. We’ll handle the card production, printing, and shipping.

Customize and order branded cards from the Stripe Dashboard

NewSpending limits

Set fine-grained spending limits on every card. You can create preset spending rules (e.g. “you’ve hit your $100 weekly food budget”) or tell us in real-time whether to approve each charge you see on your cards (e.g. “This courier’s charge is not recognized”).

NewPush provisioning to mobile wallets

Digital wallets are a convenient way to enable instant and secure access to funds any way you choose to pay—online, in-app, or in-store. With push provisioning, cardholders can now add their card to Apple Pay or Google Pay with just one tap, eliminating the need to manually enter their card number and the burden of handling sensitive data.


Issuing has everything you need to create a card program, with no setup or monthly fees. Create virtual cards for 10¢ per card and get branded physical cards shipped to your door for just $3 per card. We’ll waive transaction fees for the first $500K in transaction volume—after that, each card transaction costs 0.2% + 20¢. For companies with large volume or unique business models, custom economics are available.

Any business in the US can now activate Issuing from the Dashboard to instantly launch a commercial card program. If you’re outside the US, you can get notified when Issuing is available in your country. If you have any feedback or questions, we’d love to hear from you.

Stripe Issuing cards offered under this program are issued by Regions Bank, an Alabama FDIC-insured state bank.

Card Issuing services may require approval and are subject to terms and conditions.

April 23, 2020

Similarity clustering to catch fraud rings

Andrew Tausz on February 20, 2020 in Engineering

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.

We provide our risk analysts with automated tools to make informed decisions while sifting legitimate users from potentially fraudulent accounts. One of the most useful tools we’ve developed uses machine learning to identify similar clusters of accounts created by fraudsters trying to scale their operations. Many of these attempts are easy to detect and we can reverse engineer the fingerprints they leave behind to shut them down in real-time. In turn, this allows our analysts to spend more time on sophisticated cases that have the potential to do more harm to our users.

Read more

February 20, 2020

Introducing Increment subscriptions

Sid Orlando on January 7, 2020

Increment magazine stack

In April 2017, Stripe launched Increment, a quarterly print and digital magazine about how teams build and operate software systems at scale. Its mission? To act as a dependable resource, offering stories, insights, and advice to inspire and support developers—with valuable learnings from some of the tech industry’s most effective software teams.

As a software company building economic infrastructure, creating a physical print magazine was, perhaps, a non-obvious choice. But two and a half years in, we’ve published 11 issues and over 100 stories, representing the work of many dozens of editorial contributors and illustrators. We’ve shared Nadia Eghbal’s take on future expectations for open-source, Alvaro Videla’s analogy of programming as translation, Glenn Fleishman’s exploration of COBOL’s many-decade journey, and Juan Pablo Buriticá and Katie Womersley’s guide to distributed engineering teams. We’ve talked about cloud capacity planning, testing in production, on-call best practices, and mental health. And while we had full-color copies on hand—on actual, touchable paper—at conferences and events we attended, Increment in print was not yet for sale.

Our readers have regularly asked us when we would make it easier to get print copies of Increment. Today, we’re excited to share that print subscriptions are here. (You can purchase issues from our complete back catalog, too.)

We’re thankful for the readers and community—you are the reason we publish Increment. If you have ideas for future issues or authors we should feature, please reach out—we’d love to hear from you. Happy reading.

January 7, 2020

Stripe CLI

Tomer Elmalem on November 5, 2019

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.

To start, the CLI will let you test webhooks, tail real-time API logs, and create or update API objects. Here’s a preview of some of the features:

Simplify webhook setup and testing

Stripe sends a variety of webhooks, which let you listen and respond to specific events programmatically. Run stripe listen with the CLI to forward webhooks to your local web server during development—no third-party tunneling tools required. You can also trigger and test specific webhook events with stripe trigger.

Debug faster with real-time logs

While integrating, it can be useful to look at logs to fix any issues. You can now use stripe logs tail to stream API request logs in real time in the terminal in addition to viewing these logs from the Dashboard. Quickly inspect parameters or JSON responses and debug errors as they happen.

Speed up common tasks and workflows

You can now create, retrieve, update, or delete any Stripe object directly from the CLI in both test and live mode. For example, you can use stripe customers create and specify parameters for properties inline.

Since you can pipe results into other commands, this can be a simple and powerful way to automate tasks. Here’s an example:

$ stripe subscriptions list \
    --live \
    --status past_due \
    --expand data.customer | \
  jq -r ".data[] | [,] | @csv"

The above command uses the CLI to list live subscriptions that are past due, pipes the JSON response to jq to extract the customer name and email, and exports the data in CSV format.

To see a full list of supported commands, run stripe help or visit the docs to learn more.

Getting started

The Stripe CLI natively supports macOS, Windows, and Linux. You can also pull our Docker image to use in automated testing or a continuous integration setup.

We’re just getting started and we’ll be adding a lot more features to the CLI. If you have feedback or feature requests, join the conversation on GitHub. You can also run stripe feedback to share your ideas for which use cases we should tackle next.

November 5, 2019

Stripe launches in Mexico

Eduardo Serrano on October 24, 2019

Following the recent opening of our Mexico City office, we’re excited to share that Stripe is now fully available in Mexico, the first country we’ve launched in Latin America.

Mexico is the second-largest economy in Latin America, but online commerce only represents around 2% of its GDP. This is rapidly changing: retail e-commerce in Mexico is expected to grow by 35% in 2019.

We want to help accelerate that growth. With today’s launch, Mexican entrepreneurs and businesses can start accepting payments from around the world in a matter of minutes, and access Stripe’s suite of products including Connect, Radar, Billing, and Sigma.

We’ve been tailoring Stripe’s products in close coordination with the innovative companies driving that growth in Mexico, such as Homely, Cornershop, mienvío, Rappi, and Unitips. Thanks to their feedback, we’ve built features and products that will benefit Mexican businesses:

  • The Payment Intents API now supports up to 18 installments (“meses sin intereses”) on major card networks, and can dynamically inform you in real-time if the functionality is available on your individual customer’s card.
  • Stripe now accepts payments via OXXO, allowing customers to pay for online purchases in cash at convenience stores around the country.
  • Transactions can be processed in over 135 currencies, making it easier to sell and export to customers around the world.

Mexican businesses can get started right away by creating a Stripe account. And if you have feedback, don’t be shy!

Después de la reciente apertura de nuestra oficina en la Ciudad de México, nos complace compartir que Stripe ahora está totalmente disponible en México, el primer país que lanzamos en América Latina.

México es la segunda economía más grande de América Latina, pero el comercio en línea solo representa alrededor del 2% de su PIB. Esto está cambiando rápidamente: se espera que el comercio electrónico en México crezca un 35% en 2019.

Queremos ayudar a acelerar ese crecimiento. Con el lanzamiento de hoy, emprendedores y empresas mexicanas pueden comenzar a aceptar pagos de todo el mundo en minutos y utilizar el conjunto de productos de Stripe, incluidos Connect, Radar, Billing y Sigma.

Hemos adaptado los productos de Stripe trabajando de la mano con empresas innovadoras que están liderando este crecimiento en México como Homely, Cornershop, mienvío, Rappi y Unitips. Gracias a su retroalimentación, hoy también lanzamos los siguientes productos que sabemos beneficiarán a las empresas mexicanas:

  • Con nuestro “Payment Intents API” ahora puedes procesar pagos con hasta 18 meses sin intereses, y te informamos dinámicamente en tiempo real si la funcionalidad está disponible con la tarjeta de tu cliente.
  • Stripe ahora acepta pagos a través de OXXO, lo que permite a tus clientes pagar por sus compras en línea en efectivo alrededor del país.
  • Las transacciones se pueden procesar en más de 135 monedas, lo que facilita la venta y exportación a clientes de todo el mundo.

Cualquier emprendedor o empresa mexicana puede empezar de inmediato y crear una cuenta de Stripe. Si necesitas ayuda o tienes cualquier comentario, ¡contáctanos!

October 24, 2019

Designing accessible color systems

Daryl Koopersmith and Wilson Miner on October 15, 2019 in Engineering

Color contrast is an important aspect of accessibility. Good contrast makes it easier for people with visual impairments to use products, and helps in imperfect conditions like low-light environments or older screens. With this in mind, we recently updated the colors in our user interfaces to be more accessible. Text and icon colors now reliably have legible contrast throughout the Stripe Dashboard and all other products built with our internal interface library.

Achieving the right contrast with color is challenging, especially because color is incredibly subjective and has a big effect on the aesthetics of a product. We wanted to create a color system with hand-picked, vibrant colors that also met standards for accessibility and contrast.

Read more

October 15, 2019