2025-05-22

Business Purchase Option on Checkout

We’ve added a new “I’m purchasing as a business” checkbox to the Checkout flow. When selected, customers are required to provide their business billing name and complete billing address.

2025-05-19

We’ve added support for reference_id and UTM parameters (utm_source, utm_medium, utm_campaign, utm_content, utm_term) as query parameters for Checkout Links. These parameters are automatically stored in the Checkout metadata, allowing you to track the source of your traffic and conversions more effectively.

Read more

2025-05-15

Checkouts and payments insights

We’ve added a new Checkouts tab under the Sales, where you can review all the checkout sessions, successful or not. You can filter them by customer email, status, and product. You can also see the payment attempts for each checkout session, including the reason for any failed or declined payments.

The payment attempts information is also available on each order.

Besides, we’ve also added new analytics around checkouts: total number of checkouts, successful checkouts, and conversion rate.

2025-03-11

Zapier integration officially launched

We’re excited to announce the official launch of our Zapier integration! Get started now and connect Polar to 2,000+ other web services.

We’ve focused on triggers (webhooks) for now, so you can react to events in Polar and trigger actions in other apps.

Need to perform actions in Polar? Tell us about your use case here and we’ll consider adding more actions in the future.

2025-03-05

Customer State

Maybe one of our neatest features to date! Customer State is a concept allowing you to query for the current state of a customer, including their active subscriptions and granted benefits, in a single API call or single webhook event.

Combined with the External ID feature, you can get up-and-running in minutes.

Read more

2025-03-04

Better Auth Plugin

Integrating authentication and billing for your users has never been easier.

Better Auth is an open source authentication framework for TypeScript that is quickly becoming a favorite amongst developers. Today, we’re trilled to have shipped a Polar plugin for Better Auth - in collaboration with them.

Checkout our integration guide.

2025-02-27

Customer External ID

We’ve added support for an external_id field on Customers. We believe this will greatly simplify the reconciliation process between your system and Polar.

Previously, the recommended way to reconcile with your users was to use metadata. However, this was not always the most convenient method, especially if you needed to fetch a Customer from our API.

With external_id, you can now fetch a Customer directly by their external ID through dedicated GET, PATCH, and DELETE endpoints. You don’t even need to store Polar’s internal ID in your system anymore! Read more

Of course, you can also directly preset customer_external_id when creating a Checkout Session, and it will automatically be set on the newly created Customer after a successful checkout. Read more

2025-02-19

Polar’s take on Product variants

We’ve released big changes to how we handle products and pricing, allowing us to support a unique approach to what the industry typically calls variants 🔥

We believe having a single product with multiple pricing models and benefits adds unneccessary complexity to the user and to the API. Instead, we chose to treat everything as a product, giving you maximum flexibility about the pricing and benefits you want to offer.

Thus, we introduce support for multiple products at checkout, allowing customers to switch between them before purchasing. Typically, you can offer a monthly and a yearly product, with specific pricing and benefits for each.

This is available right now using the Checkout Session API and Checkout Links.

Depreciations

  • Products can no longer have both a monthly and yearly pricing. Existing products still work, but you’ll see a warning like this when trying to edit their pricing:

API changes

  • The product_id and product_price_id fields are deprecated in the Checkout Session API. You should now use the products field to specify the products you want to include in the checkout.
  • The type and recurring_interval fields on ProductPrice are deprecated. recurring_interval is now set directly on Product.
2025-02-14

New documentation platform. More improvements incoming.