Skip to content
This repository has been archived by the owner on Jan 2, 2024. It is now read-only.

Stripe Glossary

Jevon MacDonald edited this page Dec 12, 2022 · 17 revisions

3D Secure Good-better-best PriceOps Subscription Events
Aggregate Metered Usage Graduated Pricing Product Catalog Subscription Lifecycle.
Aggregation Mode Inclusive (Tax Behavior) Provision Subscription Phases
Australian Business Numbers Inline Pricing Quotes Subscription Schedules
Billing Cycle Anchor Landing Page Revenue Recognition Tax Exempt
Billing Threshold Licensed Usage Reverse Charge Tax Rates
Client Platform Metered Billing Roll Ups Tiered Pricing
Create a Session Metered Usage SetupIntents Trials
Custom Accounts Multi-currency Prices Sigma (queries) Usage-based Pricing
Customer Portal (session) Package Pricing Smart Retries Variable Pricing
Dashboard Pay-what-you-want Pricing Standard Account Volume Based Billing
Destination Charge Pause (Payment Collection) Standard Pricing Upsell
Direct Charge PaymentIntent Stripe Webhook
Dunning Email Payment Form Stripe CLI Webhook Endpoint
European VAT Numbers Payment Status Stripe-hosted UI Webhook Events
Exclusive (Tax behavior) Payment Window. Stripe Ruby Library
Express Account Per-seat Stripe Tax
Freemium Pricing Page Subscription

3D Secure

This is an additional layer of authentication that is used by Stripe at checkout, to ensure a purchase is from a legitimate cardholder. It can take the form of showing the cardholder an authentication page on their bank’s website, where they’re prompted to enter a verification code sent to their phone or email.

3D Secure is used by Visa and Mastercard and other issuers to add an extra layer of security to online credit and debit card transactions. It works by requiring the cardholder to enter a one-time code (usually sent via SMS to their phone) during the checkout process, in addition to their regular card details. This helps to prevent fraud and protect both the cardholder and the merchant. Stripe, a company that provides payment processing services, supports 3D Secure as a way to improve the security of transactions made through its platform.

3D Secure is known as "Verified by Visa", "SecureCode" by Mastercard, and "American Express SafeKey" by American Express.

Aggregate Metered Usage

Aggregated Metered Usage refers to the summed amount of usage of a particular resource or service, typically measured over a specific period of time, and often presented in aggregate form for the purpose of billing or analysis. This can refer to any type of resource or service that can be measured and tracked, such as data, storage, internet usage, or even things like electrical consumption.

This data is typically collected using specialized meters that are added at the point of consumption.

The meters are connected to a central system that collects the data in real-time. This data is then processed and analyzed to determine the overall consumption of the resource, as well as any patterns or trends that may be present. The collected data can also be used to identify areas where consumption is particularly high, and to develop strategies for reducing consumption and improving efficiency.

One of the key benefits of aggregated metered usage is that it allows for more accurate billing and pricing of the resource, as it provides a more detailed and precise picture of how the resource is being used. It can also help to identify and address any potential issues with the distribution or supply of the resource, and can be used to support sustainability efforts by providing information on resource consumption patterns.

See Roll Ups.

See Aggregation Mode.

Aggregation Mode

Customer usage information needs to be recorded for certain Stripe Subscriptions, for example, those that use metered billing. Stripe expects that you enhance your own system for recording customer usage, and that this information should be conveyed to Stripe. Stripe aggregates this information, a process known as Aggregation Mode. Allowed values are sum for summing up all usage during a period, last_ever for using the last usage record ever or max which uses the usage record with the maximum reported usage during a period.

See Mapping to Stripe.

Australian Business Numbers

Stripe automatically validates all Australian Business Numbers (ABNs) with the Australian Business Register (ABR).

Billing Cycle Anchor

This is used to determine the date of the first full invoice, and, for plans with month or year intervals, the day of the month on which invoices will be issued.

Billing Threshold

Billing Thresholds are used to define when an invoice should be generated and sent. This is used in metered billing. Think of these as interim invoices which are charged based on the amount of usage, but before the billing period ends. It's a way to make many smaller charges rather than one large one at the end of the period.

A billing threshold can be set as:

  • an integer value(s)
  • a monetary value

In either case, when the threshold is reached an invoice will be generated and sent. The meter count will also be reset.

⚠️ You do need to maintain some logic on your side to handle certain scenarios and you must be aware of the impact of your setting of billing_thresholds on how invoices are calculated. ⚠️

As an example: If billing_thresholds is set at 10 and you report usage of 15, then:

  1. An invoice for 10 units of consumption will be issued.
  2. A new billing period will or will not be set depending on how you set reset_billing_cycle_anchor (see below).
  3. The next period will now be active and it will start counting with 0 units.
  4. You must add 5 (15-10=5) units to your own counter to keep track of the 5 units of consumption that were "lost" when you reports 15 units, which was 5 more than the billing_thresholds of 10 you had set.

The attribute reset_billing_cycle_anchor will decide what happens next.

  • If reset_billing_cycle_anchor = FALSE then the billing period will not be reset
  • If reset_billing_cycle_anchor = TRUE then a new billing period will be set. The billing period will be set to the time that the billings_thresholds was triggered.

Setting a Billing threshold is a good precautionary measure that will limit the amount owed by the customer or limit the amount of consumption before the billing period ends. When the billing period ends, the remaining amount of counted usage is charged.

Client Platform

The front-end application, owned by the Client, that makes use of Stripe, via API calls, for all Billing and Payment processing for Subscriptions on the Client Platform.

Create a Session

Sessions are created when client platforms need to connect to Stripe services, for example, the ‘Checkout’ service. On the backend of the client application, define an endpoint that creates the session. This is then called by the frontend.

Custom Accounts

A Stripe Custom Account is one where the client platform is responsible for all user interactions and the collection of the information needed to verify the account. The Custom account details and settings are communicated to Stripe through the API, including user bank account details and the pay-out schedule. Custom account holders can’t log into Stripe, thus it’s up to the Client platform to build the onboarding flow, user dashboard, reporting functionality, and communication channels.

Customer Portal (session)

The Customer Portal is a secure, Stripe-hosted page that lets Client Platform customers manage their subscriptions and billing details. (A session creates an instance of the portal for a specific customer).

Dashboard

The Stripe Dashboard is a user interface that lets Clients manage and configure their account. The organization of the dashboard should emulate the most common workflows used to manage your business. For example, the Payments tab includes everything needed to manage the flow of money in and out of your account. You can use the Dashboard to perform specific actions, such as refunding a payment or canceling a subscription.

Destination Charge

This is one of the available Stripe charge types. It is recommended when you want your platform to be directly responsible for Stripe fees, refunds, and chargebacks.

Direct Charge

This is one of the available Stripe charge types. If you want the connected account to be responsible for Stripe fees, refunds, and chargebacks, use direct charges. With this approach, customers won’t be aware of your platform’s existence.

Dunning Email

A Dunning email can be sent to the customers with their account and invoice information to remind them about their due payments.

European VAT Numbers

Stripe validates all European Value-Added-Tax (EU VAT) numbers with the European Commission’s VAT Information Exchange System (VIES).

Exclusive (Tax behavior)

The tax behavior on a price can be set to either inclusive or exclusive. When tax behavior is set to exclusive, tax is added to the subtotal amount specified on your price.

Express Account

An express account enables the platform to manage pay-out schedules, customize the flow of funds, and control the branding. Stripe will handle onboarding, account management, and identity verification for the platform.

Freemium

This Stripe model allows users to access your service without being asked for payment information.

Good-better-best

Good-better-best is Stripe's nomeclature for describing a typical SaaS pricing model with 3 (or some number) plans. Stripe's examples of Good-better-best are for Flat Rate pricing models.

Good Better Best
Price $10/month $20/month $150/month

Because Stripe does not handle the tracking of features which are not billable, you will not keep track of feature packaging directly in Stripe.

For example, if you wanted a Good-better-best plan like this:

Good Better Best
Price $10/month $20/month $150/month
Feature A
Feature B
Feature C

You would need to keep track of Feature A, Feature B, and Feature C within your own code.

If you want to achieve this without writing one-offs and custom logic, a tool like Tier should be used to model Pricing.

Graduated Pricing

Graduated pricing charges for the quantity of service or product used in each pricing tier instead of applying a single price to all usage. See Tiered Pricing

Inclusive (Tax Behavior)

The tax behavior on a price can be set to either inclusive or exclusive. When set to inclusive the amount your buyer pays never changes, even if the tax rate varies.

Inline Pricing

In certain circumstances, you might want to use a custom price that hasn’t been preconfigured. For example, you might want to use inline prices when you manage your product catalog outside of Stripe. The price is defined for a customer when you create a subscription, invoice, or Checkout Session.

Landing Page

The Stripe Landing page can be rendered on the platform’s front end. It collects customer-specific information that you may require, like a username or address, email, etc.

Licensed Usage

This is one of the Usage types offered by Stripe. With licensed usage, you set the quantity for a subscription item when you create or update the subscription. The quantity persists until you or your customer changes it. Every billing interval, the subscription charges the amount × quantity for the item.

Metered Billing

Stripe offers metered Billing as a usage-based, pricing model. Your customers will be charged based on how much of your service they use during the billing cycle. This is an alternative to explicitly setting usage quantities.

Metered Usage

This is part of the Metered Billing pricing model, where the quantity of the provided service consumed by the Customer is measured.

Multi-currency Prices

Stripe offers the capability to support multiple currencies. This helps to manage localized pricing when selling internationally. Implementation of this varies, but a single Price can be used to support multiple currencies.

Package Pricing

This pricing model automatically bills the number of units set when the Customer subscription is created. The default quantity is 2 or more. This means that the Customer’s quantity purchased will be set to the number of units specified in the subscription. An alternative is to use Standard pricing where the default number of units is 1.

Pay-what-you-want Pricing

With this type of pricing, you can let the customer define their own price when they select a product or service.

Pause (Payment Collection)

Pausing payment collection can be used as a means of (temporarily) offering your services for free. It can also be used to stop payments if you are not able to provide your services. Payment collection can be paused or resumed in the Stripe Dashboard or by using the API.

PaymentIntent

A Payment Intent tracks the lifecycle of every payment. Whenever payments are due for a subscription, Stripe generates invoices and Payment Intents. PaymentIntent APIs are available to build an integration that can handle complex payment flows. Payments will be tracked from creation through checkout, and additional authentication steps can be triggered when required. Some of the features of the Payment Intents API are:

  • Automatic authentication handling
  • No double charges
  • Support for Strong Customer Authentication (SCA) and similar regulatory changes.

Payment Form

The payment form is provided by Stripe if you use Checkout. It is used to collect name and payment card information. It’s an important feature in payment collection and ensuring PCI compliance.

Payment Status

Payment Status provides an overall view of the various outcomes that a payment can have during its Life Cycle. It includes:

  • Payment Outcome
  • PaymentIntent Status
  • Invoice Status
  • Subscription status

Payment Window.

Customers have a window of 23 hours to make a successful payment. Before payment, the subscription status remains incomplete, and the invoice is open. When the customer pays the invoice, the subscription is updated to active, and the invoice to paid. If no payment is made during the window period, the subscription updates to incomplete expired and the invoice becomes void. Usually, the customer makes the first payment for a subscription while on-session, but the Payment Window provides some flexibility. If the customer returns to your application after 23 hours, create a new subscription for them.

Per-seat

A Stripe pricing model in which the monthly rates change based on the number of people who will utilize the software. When a subscription is created, the customer specifies the number of users for that subscription.

Pricing Page

The Stripe pricing page displays the prices you created, allowing customers to choose the option they want.

PriceOps

PriceOps is a methodology for implementing a pricing model that enables flexibility and iteration. It is composed of five pillars: pricing model definition, customer schedule, metering, entitlement checking, and PriceOps tooling. By following the 5 Pillars, organizations can avoid the common pitfalls of mismanaged pricing models, and instead enable responsive and agile iteration. Read more here

Product Catalog

This allows the use of a custom price that hasn’t been preconfigured in Stripe. For example, platforms that manage their product catalog outside of Stripe will make use of their own Custom catalog. See also Inline Pricing.

Provision

This refers to the provision (commencement) of the service, which starts on receipt of a payment.

Quotes

Quotes can be used to provide customers with a price estimate, including any discounts or taxes, before starting a subscription or invoice. The quote can be converted into a subscription or a one-time invoice after the customer accepts the quote.

Revenue Recognition

Revenue recognition is a base component of accrual accounting. Stripe Revenue Recognition helps you simplify the process of recognizing revenue for your accounting process without the need for additional configurations and reporting structures. It provides:

  • Recognized and deferred revenue summaries at-a-glance
  • Downloadable accounting reports and waterfall charts
  • Interactive revenue numbers for full audit transparency
  • Configurable revenue recognition rules and accounting period controls.

Reverse Charge

Within Stripe the exemption status for a customer can be set to either Exempt or Reverse. In both cases, no tax is calculated on the invoice. In the case where the customer is liable for the tax, set the exemption status to reverse. The invoice and receipt will then include the text “Reverse charge”.

Roll Ups

A roll up refers to the process of summarizing data from multiple records or rows into a single record. This can be used to consolidate data and reduce the size of a dataset, or to make it easier to perform certain types of analysis. For example, a company might use roll up to summarize usage data from multiple stores into a single record for each region, or to calculate the total usage for a particular product across all stores.

SetupIntents

A SetupIntent is an important part of onboarding a new Customer. It guides you through the process of setting up and saving a customer's payment credentials for future payments. They are created when you're ready to collect your customer's payment details. The SetupIntent then transitions through multiple statuses as you move through the setup process.

Sigma (queries)

A scheduler used by Stripe that allows queries to be run automatically, according to the schedule in the Customer’s subscription.

Smart Retries

When payments fail, Stripe retries them using the Smart Retries feature. This automatically re-attempts payment when cards are declined, according to your Dashboard settings.

Standard Account

A Standard Stripe account is a conventional Stripe account where the account holder (that is, your platform’s user) has a relationship with Stripe, can log in to the Dashboard, and can process charges on their own.

Standard Pricing

This pricing model automatically bills the number of units set when the Customer subscription is created. The default quantity is 1. This means that the Customer’s quantity purchased will be set to the number of units specified in the subscription. An alternative is to use Packaged pricing where the default number of units needs to be greater than 1.

Stripe

Stripe is a suite of APIs powering online payment processing and commerce solutions for internet businesses of all sizes.

Stripe CLI

The Stripe CLI is a development tool to help you build, test, and manage your integration with Stripe directly from the command line. It works on macOS, Windows, and Linux, and offers functionality to enhance your development experience with Stripe. You can use the CLI to:

  • Create, retrieve, update, or delete any of your Stripe resources in test mode (for example, create and update a product)
  • Stream real-time API requests and events happening in your account
  • Trigger events while testing your webhooks integration.

Stripe-hosted UI

If required, Stripe will host pages on behalf of your platform. By adding buttons, you can redirect your customer to various Stripe pages, for example, the Customer page, the Payments page, the Checkout page.

Stripe Ruby Library

A Stripe code library for inclusion in your code. It is used mainly for back-end development of endpoints.

Stripe Tax

A Stripe feature that automates tax collection on your transactions. Stripe Tax lets you easily calculate and collect sales tax, VAT, and GST.
It will help you to automatically collect the right amount of tax and access the reports you need to file returns.

Subscription

A subscription represents the product details associated with the plan that a customer subscribes to. It allows you to charge the customer on a regular basis. For example, if ‘myCompany’ offers a Diagramming Tool as a product, there could be two different plans associated with the product, ‘Basic Plan’ and ‘Premium Plan’. Each will be priced accordingly. When a new customer subscribes to myCompany’s diagramming tool, they will select the Plan and will specify Customer and payment details, and perhaps the number of users that will access it. A subscription is created accordingly, and billing takes place as per the pricing structure. Once the Subscription fee has been paid, the subscription is set to active, and provision will be made. (The customer will be able to access the product). Interval Billing will then take place as per the terms of the subscription, which has many options, including usage or flat fee models.

Subscription Events

This is a set of events related to subscriptions, triggered by Stripe. They are triggered every time a subscription is created or changed. Some events are sent immediately when a subscription is created. Others occur on regular billing intervals. Webhook endpoints can be developed for listening for events.

Subscription Lifecycle.

See Subscription

Subscription Phases

Subscription phases are a way of building phased changes into a subscription and specifying what properties of the subscription will change in each phase. For example, you could offer a special price for the first four months of a subscription. In this example, the first phase of the subscription is four months long. In the second phase, the subscription could be reverted to the normal cost.

Subscription Schedules

Subscription Schedules are used by Stripe to automate changes to subscriptions over time e.g., Starting a subscription on a future date or managing Subscription Phases.

Tax Exempt

Stripe provides an exemption status that can be used to set the tax for a customer to either exempt or reverse. In both cases, no tax is calculated on the invoice.

Tax Rates

Stripe allows you to define any number of tax rates and apply them to invoices, subscriptions, and one-time payments when using Checkout. See Inclusive / Exclusive.

Tiered Pricing

Tiered pricing is a non-linear pricing structure. Prices in Stripe can be represented in tiers, or layers, which allows the unit cost to change with quantity or usage. For example, lower rates can be offered to customers who buy more products or services. Stripe offers two different ways to adjust pricing as usage increases:

  • volume-based pricing
  • graduated pricing.

Trials

Stripe customer subscriptions can start with a free trial period. This is done by providing a trial end argument when creating the subscription. Payments can be delayed on active subscriptions by using trial periods Stripe automatically validates all UK Value-Added-Tax (GB VAT) numbers with the United Kingdom’s Revenue & Customs (HMRC). HMRC validation usually takes only a few seconds, but depending on the availability, may take longer. Stripe automatically handles HMRC downtime and attempts retries for you.

Usage-based Pricing

With the usage-based model, customers are charged based on how much of your service they use during the billing cycle, instead of explicitly setting quantities, as in the per-seat and flat-rate pricing models. With this form of metered billing, payment has to be collected in arrears, since it is dependent on usage.

Variable Pricing

With variable pricing, pricing is not derived from the product pricing page. It is based on one of the following pricing models:

  • Inline pricing – the price is defined for the Customer at the time the subscription is created
  • Pay-what-you-want pricing - You allow the customer to define the price when they select a product or service.

Volume Based Billing

The item is billed at the tier corresponding to the amount of usage at the end of the period. In contrast, Graduated Billing, bills for the usage within each tier.

Upsell

A Stripe Capability to Upsell customers to longer billing intervals. This can lead to collecting more revenue. See Pricing (Usage-Based).

Webhook

Webhook is a feature in Stripe that generates Webhook notifications. These notifications provide a reliable way for Stripe to notify customer applications of events within Stripe. E.g., payment success on subscription invoices Webhooks are essential in places where most activity occurs asynchronously. It is especially useful to use webhooks with your subscriptions:

  • Create a webhook endpoint in your app.
  • Add logic to handle Stripe events. For subscriptions, these include payment failures and subscription state changes.

Webhook Endpoint

This is a ‘listener’ within the customer application that receives webhook notifications from Stripe, enabling it to take appropriate action based on the notification.

Webhook Events

These are events that can be generated within any of the Stripe processing cycles and should be picked up by back-end listeners within customer applications. They are commonly used to drive status changes in Subscriptions, Billing, and Payments.


(c) 2022 Tier.run Inc.