Stay up to date with the latest changes and improvements to Polar.
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.
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.
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.
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.
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.
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 thrilled to have shipped a Polar plugin for Better Auth - in collaboration with them.
Checkout our integration guide.
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 external_customer_id
when creating a Checkout Session, and it will automatically be set on the newly created Customer after a successful checkout. Read more
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.
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.type
and recurring_interval
fields on ProductPrice
are deprecated. recurring_interval
is now set directly on Product
.New documentation platform. More improvements incoming.