FAQs

Kill Bill FAQ

Answers about Kill Bill, the open source billing platform, and Aviate, its enterprise offering.

Last updated: October 2026

Short answer

What is Kill Bill?

Kill Bill is an open source billing and payments platform, under the Apache 2.0 license, in production since 2010. You run it on your own infrastructure, with no license fee and no fee per transaction. It handles subscriptions, usage, invoices, payments through gateway plugins, taxes through tax plugins, and multi-tenancy. Aviate, the enterprise offering of Kill Bill, adds enterprise features and Level 3 support for a fixed annual fee, never a share of revenue.

Kill Bill: open source, Apache 2.0, freeAviate: enterprise features and Level 3 support

License
Apache 2.0, free
Since
2010
Hosting
Self-hosted: Docker, Tomcat or Kubernetes
Databases
MySQL, MariaDB, PostgreSQL
Payments
Stripe, Adyen, Braintree, Hyperswitch plugins
Tax
AvaTax, Vertex, Kintsugi plugins
Admin UI
Kaui (open source), Aviate
Support
Community, or Level 3 with Aviate

About Kill Bill

What Kill Bill and Aviate are, what they cost, and who uses them.

What is Kill Bill?
Kill Bill is an open source billing and payments platform, under the Apache 2.0 license. It gives you APIs to define pricing, manage subscriptions and usage, generate invoices and collect payments through gateway plugins.
Think of it as building blocks for your own billing system. Whether you sell a digital service for $10 a month or a multi-tier phone plan, Kill Bill provides the primitives, so you do not start from scratch. You run it on your own infrastructure, and it has run in production since 2010.
What is Aviate and how does it relate to Kill Bill?
Aviate is the enterprise offering of Kill Bill, built by the core team that created and maintains the open source project. Kill Bill stays free and open source. Aviate runs on top of it and adds enterprise features, such as a catalog UI, coupons, prepaid credits, metering, tax rates per country and health monitoring, plus Level 3 support from the engineers.
The Aviate catalog editor, showing the phases of a plan
The catalog editor in Aviate
How much does Kill Bill cost?
Kill Bill open source is free: no license fee and no fee per transaction. You pay for your own hosting, and the open source version comes without support or SLA.
Aviate is a fixed annual fee, never a share of revenue, so the cost does not grow with your sales. See Pricing.
Illustration: as billed revenue grows, a fee based on a percentage of revenue grows with it, while a fixed annual fee stays flat. No prices are shown.Revenue you bill each yearAnnual billing costShare of revenueFixed annual feebreak-even point
Illustration, not a quote: no vendor prices on this chart.
Who is Kill Bill for? What's the ideal customer profile?
Kill Bill fits companies whose billing has outgrown simple SaaS billing tools, and that want full control without a fee based on their revenue.
Common profiles include B2B SaaS platforms with complex pricing, consumer services with large customer bases, B2B2C and white-label platforms that run many tenants, and usage-based businesses (AI tokens, API calls) that need custom metering and billing logic.
It suits teams with engineers who can run a Java service. If you need a hosted tool that works the same day, a SaaS billing tool may be simpler.
Does Kill Bill support multi-tenant white-label billing?
Yes. One Kill Bill deployment can run many tenants, each with its own catalog, accounts, payment configuration and API credentials, and the data of each tenant is kept separate.
Examples include multi-tenant e-commerce platforms, vertical SaaS providers that offer branded billing to their customers, and payment layers that manage sub-merchants.
One Kill Bill deployment runs several tenants. Each tenant has its own catalog, accounts, payment configuration and API key, and shares the same database, where every row is tagged by tenant.One Kill Bill deploymentTenant AOwn catalogOwn accountsOwn payment configOwn API keyTenant BOwn catalogOwn accountsOwn payment configOwn API keyTenant COwn catalogOwn accountsOwn payment configOwn API keyOne database, with every row tagged by tenant
Each tenant is separate, inside one deployment
Who created Kill Bill?
Martin Westhead, Pierre-Alexandre Meyer and Stéphane Brossier designed and developed Kill Bill in 2010 as part of an open-source project at Ning.
How long has Kill Bill been around?
Since 2010. Kill Bill has run in production in private and public companies since then, and deployments on the platform have invoiced billions of dollars.
How is Kill Bill different from other billing software?

Compared with SaaS billing tools:

  • Kill Bill is open source: you can read and change the code. Read more: Why open source?
  • Kill Bill has a plugin architecture, so you can write custom code to extend or change default behaviors.
  • Kill Bill is event driven, not a batch system. Modules share and react to events. For example, when a new invoice is generated, the invoice module sends an event on the message bus, and the payment module reacts and triggers the payment. Plugins see the same events, so you can add custom logic the same way.
  • You host Kill Bill yourself, so your billing data stays in your database.
  • There is no fee based on your revenue.
How Kill Bill works: the invoice module publishes an invoice creation event on the event bus, the payment module reacts and calls the gateway through a payment plugin, and your plugins and push notification endpoints receive the same events.Invoice modulecreates an invoicePayment modulepays the invoicePayment plugincalls the gatewayEvent busYour pluginsreact to the same eventsPush notificationsHTTP POST to your systemsINVOICE_CREATION
Kill Bill modules share events on a bus, and your plugins and systems see the same events
Why should I choose Kill Bill over a SaaS alternative?
SaaS billing tools are quick to start. The trade-offs show up as you grow: your billing data lives in the vendor's systems, fees often grow with your revenue, and you are limited to the features and integrations the vendor offers.

Before you choose, compare:

  • Integrations with your accounting, CRM and other software
  • Your choice of payment, tax and fraud providers
  • The number and cost of test environments
  • Access to your own data for reporting
  • How the cost changes as your volume grows

Kill Bill runs on your infrastructure, with plugins for the providers you choose and a database you own. It needs a team to run it. To read more, see The Pitfalls of a SaaS Billing and Payments Solution.

Does Kill Bill work with [software name]?
Kill Bill has been connected, through plugins or additional logic, to many types of software, such as CRMs and accounting software. To explore this, contact our software development partner.
Can I contribute to Kill Bill?
Yes. The code is on GitHub and contributions are welcome. Please get in touch or start a discussion on the Kill Bill Community mailing list.
Why did you name your software after a famous Quentin Tarantino movie?
We were enamored with the idea of “killing the billing problem.” Secondly, we like the Kill Bill movie!
Why do you have a duck as a company mascot?
The Kill Bill duck mascot, named Killian, was inspired by the "Kill Bill" movie franchise and its iconic imagery. When the project needed a friendlier identity for an open-source billing platform, the team chose a duck as a playful, approachable counterpart to the name. Killian has been the project's mascot since the early days.
Kill Bill logo
P.S. His name is Killian!
Are there any rules for using Kill Bill (since it's open-source)?
The rules are those of the open source license. Kill Bill uses the Apache License, Version 2.0: you can use, change and distribute the software, including commercially, and you keep the copyright and license notices. We summarize it here: Why open source?.
I’m a software consultant/shop. Can I implement Kill Bill for my customers?
Yes. The Apache License 2.0 allows it, and integrators use Kill Bill for their clients, including as white-label software. For more information, please contact us.
What is Kaui?
Kaui is a browser-based application that enables back-office staff (in Finance, Marketing, Development, etc.) to perform Kill Bill-related tasks, such as creating customer accounts, subscriptions, adding plugins, and so forth. “Kaui” (KAUI) stands for Kill (Bill) Admin User Interface. For more information, see the Kaui User Guide.
Kaui, the open source Kill Bill admin UI, showing a demo customer account
Kaui, the open source admin UI of Kill Bill
Do you have customers in [country name] or in [specific industry] that are using Kill Bill? Can you put me in touch with them?
You can contact us to ask, but Kill Bill users often ask us not to disclose this information. You can also post the question on the Kill Bill Community mailing list.
Can I see a list of companies that use Kill Bill?
Many companies that use Kill Bill keep it private, because they see their billing system as a competitive advantage. Groupon is a long-time user. See the use cases for examples by industry.
How robust is Kill Bill?
Kill Bill has run in production since 2010, and Groupon has used it for many years to bill its customers and process payments. To read more, see our blog posts On Kill Bill performance and Performance Numbers.

Deployment

Where and how Kill Bill runs, and which databases it supports.

Is Kill Bill a Software-as-a-Service (SaaS)?
No. Kill Bill is open source software that you run in your own environment, in a private data center or in the cloud. To see Aviate without installing anything, use the free Aviate sandbox.
Can you run Kill Bill in the cloud?
Yes. Kill Bill runs in private data centers and in public clouds such as AWS and Azure, with Docker, in Tomcat or on Kubernetes. The nodes are stateless, so you add nodes behind a load balancer as the load grows. See Download.
Which databases does Kill Bill support?
The Kill Bill team uses MySQL and runs regression tests against MariaDB and PostgreSQL. Users have also deployed Kill Bill with Percona and Aurora.

Features

Billing, payments, catalog, currencies, notifications and analytics.

Does Kill Bill support recurring billing / usage billing / one-time billing?
Kill Bill supports recurring billing, usage billing, and one-time transactions. (See our Usage documentation to understand the various types of usage Kill Bill supports.)
Usage can be priced in tiers or blocks, for example per million AI tokens. Aviate adds a UI to set usage prices.
Aviate usage pricing: a tier billed at 2 USD per million input tokens, monthly
Usage pricing per million tokens in Aviate
Does Kill Bill handle proration?
Yes. When a customer changes plan in the middle of a billing period, Kill Bill credits the unused part of the old plan and charges the new plan for the rest of the period, following the billing policies in your catalog.
Example: a customer moves from a $49 plan to a $199 plan on October 6, in a billing period from October 2 to November 2. Kill Bill charges 27/31 of $199 ($173.32) and credits 27/31 of $49 ($42.68), for an invoice of $130.64.
A Kaui invoice for a plan upgrade: Growth monthly 173.32 USD, an adjustment of minus 42.68 USD, total 130.64 USD
The upgrade invoice in Kaui
How does Kill Bill handle payments?
Kill Bill is not a payment gateway. When a payment is triggered, Kill Bill calls a payment gateway through a plugin, and the gateway processes the payment. For more information, see our Payment Guide.
Open source payment plugins exist for several gateways. For another gateway, you can write your own plugin, or work with a partner that has built Kill Bill plugins before. See our Partners page.
What payment gateways can I use with Kill Bill?
Kill Bill connects to gateways through plugins, so you are not tied to one gateway. Open source plugins exist for Stripe, Adyen, Braintree and Hyperswitch, and you can write a plugin for any other gateway. See Plugins and integrations.
What types of payment methods does Kill Bill support?
Kill Bill supports the credit and debit cards your payment gateway supports. If your gateway supports ACH, you can accept ACH too.
You can also record external payments, such as checks, cash or Boleto Bancário. When you receive the money, record it in Kaui or through the API.
What happens when a payment fails?
For invoice payments, Kill Bill records the failure and retries the payment on a schedule you set per tenant. Plugin errors are retried separately. If the invoice stays unpaid, overdue (dunning) rules can move the account through states that block changes or pause the service.
Default retry schedule for a failed invoice payment in Kill Bill: the payment fails on day 0 and is retried on days 8, 16 and 24. If the invoice stays unpaid, overdue rules can block changes or pause the service. The schedule can be changed per tenant.Payment failsDay 0Retry 1Day 8Retry 2Day 16Retry 3Day 24Overdue rulesblock or pause
The default retry schedule: three retries, 8 days apart, which you can change per tenant
How does Kill Bill support international billing?
We designed the core of the billing platform to be internationalized. The catalog module has support for all currencies, including crypto-currencies (e.g. Bitcoin). The invoice module will understand these various currencies and respect localization rules. (For example, it will correctly round US dollars to two decimal places but Japanese Yen amounts will have no decimal portion.)
Accounts can have a designated locale (for example, $1,234.99 will be displayed as 1.234,99 $ for accounts with the French Canada locale) and a time zone (to generate invoices in their time zone instead of the merchant’s).
From a payment perspective, Kill Bill supports payment gateways via plugins. If your international gateway isn’t supported yet, you can write a plugin for it.
Note: If your organization or development team needs help writing a plugin, we can recommend partners that have created them before for Kill Bill users. Check out one at our Partners page.
Does Kill Bill include catalog functionality?

Kill Bill includes an XML catalog that supports these features (and more):

  • Real-time catalog with subscription plans and one-off products
  • Product tiers
  • Pricing lists
  • Different subscription types (main subscription, add-on subscriptions, etc.)
For more catalog information, see the Catalog section of our documentation.
If you have a very large catalog (e.g., thousands of products) and/or if it is highly dynamic, maintaining the catalog as an XML file may not be practical. Instead, you can use the CatalogPluginApi to write a plugin that would provide an alternative catalog implementation (such as integrating with your existing catalog system). See the documentation.
Here is a Java example.
Aviate adds a catalog UI to create and edit plans without editing XML.
Does Kill Bill support coupons and/or discounts?

There are several ways to handle coupons and discounts:

  • The simplest option is for your catalog to include discount plans (plans can additionally include discount phases)
  • An alternative is to use the PhasePriceOverride element when creating a subscription
  • Finally, to implement a fully fledged coupon functionality, use the EntitlementPluginApi to write your custom plugin (Kill Bill Coupon Plugin Demo is an example)

For more details, check this Moving Towards a Flexible Catalog post.

Aviate Coupons adds coupons out of the box.
Can Kill Bill send email notifications to customers?
Yes. The email notifications plugin sends emails about upcoming invoices, successful and failed payments, subscription cancellations and other events on a customer account.
Can Kill Bill accept cryptocurrency payments from my customers?
Yes. You need a plugin that talks to a payment gateway that supports the coins you want, such as Bitcoin or Ethereum.
Note: If your team needs help writing a plugin, we can recommend partners that have built them for Kill Bill users. See our Partners page.
What is a plugin?
A plugin is software that runs on top of the Kill Bill platform and interacts with it. You use a plugin to add a feature or a behavior that is not part of the Kill Bill core. See the Plugin Introduction.
Kill Bill plugins around the core: payment plugins for Stripe, Adyen, Braintree and Hyperswitch, tax plugins for AvaTax, Vertex and Kintsugi, notification plugins for emails, control plugins for your own payment rules, and catalog and analytics plugins.Kill Bill corebilling and paymentsPayment pluginsStripe, Adyen, Braintree, HyperswitchTax pluginsAvaTax, Vertex, KintsugiNotification pluginsemails to customersControl pluginsyour own payment rulesCatalog and analyticscustom catalog, reports
Plugins add features or integrations around the Kill Bill core
Does Kill Bill work with multiple currencies?
Yes. Define each currency in the catalog, and set a currency on customer accounts that do not use the default currency. For advanced currency topics, see the Analytics Guide and the Payment Control Plugin Guide.
Can I use Kill Bill to communicate with customers in their native language?
Kill Bill supports translations in the catalog, emails and invoices. To read more about its international features, including time zones and currencies, see the Internationalization Overview.
What kind of analytics can Kill Bill provide for my accountants and finance teams?
Use the Analytics plugin to create reports and view them in Kaui. The plugin can also create reports against external databases.
Kaui analytics: a chart of new subscriptions over time
The analytics dashboard in Kaui

Compliance & Security

PCI DSS, GDPR, taxes and how to secure an installation.

Is Kill Bill PCI compliant?
Kill Bill runs today in PCI DSS compliant companies, but certification is your responsibility. With client-side tokenization or a hosted payment page, card data goes to the payment gateway and Kill Bill keeps only the token, which leaves most of the PCI scope with the gateway. See the PCI Security Standards Council website for more information.
Is Kill Bill GDPR compliant?
Kill Bill stores customer data, such as names, emails and addresses, in your own database, on infrastructure you choose. You decide where that data lives and how long you keep it. GDPR compliance remains your responsibility.
Does Kill Bill support taxes?
Yes, through tax plugins. Open source plugins exist for Avalara AvaTax, Vertex and Kintsugi, and they compute tax on each invoice. Aviate Tax adds tax rates per country and per product. See Tax compliance.
Aviate Tax settings: a France VAT tax code at 20 percent, with the taxation time zone set to Europe/Paris
A tax code in Aviate Tax
How can I secure my Kill Bill installation?

Here are some general tips on securing your Kill Bill installation:

  • Install Kill Bill behind a firewall (it should not be exposed on the public internet).
  • Change the default username/password (admin/password) in your live environment.
  • Don’t store sensitive data in Kill Bill. While most plugins have support for directly saving card or bank account numbers, for instance, this should only be used for testing purposes or if you use a proxy tokenizer; if you don’t, use a third-party vault.
  • Encrypt username and passwords in configuration files.
  • Use TLS for all communication with your eCommerce application as well as with the payment providers.
  • Subscribe to our Community mailing list to receive security advisories.
  • Never store security codes (CCV, CVV, etc.) in your live environment.

In the end, it is your responsibility to make sure your Kill Bill installation is secure and compliant.

Customization

Configuration, plugins, partners and the source code.

Can I customize Kill Bill?

Yes. There are various ways to customize Kill Bill:

  • System properties: These let you configure the core platform. Most internal modules also have a second, more advanced layer of configuration, usually through XML files. You can use these settings to configure the dunning (overdue) policy, plans, billing policies, and more.
  • Plugins: If you need more advanced logic, billing or non-billing, Kill Bill supports plugins. You can write custom code to extend or override Kill Bill’s default behaviors. We can recommend development partners to help you, if necessary.
Can you develop customized Kill Bill logic or plugins for us?
The Kill Bill team does not build custom logic or plugins. A partner does, and has delivered many Kill Bill projects for our users. See our Partners page.
Where is the code?
All our code is on GitHub, in the killbill organization. The core of the Kill Bill platform is at github.com/killbill/killbill.

Getting Started

Documentation, demo, installation and where to get help.

Where is the documentation?
The documentation is at docs.killbill.io, and the API reference at apidocs.killbill.io.
How do I know that Kill Bill will work for my business?
Run a proof of concept against your business requirements. To install Kill Bill, follow the Getting Started tutorial, and to review the code, see GitHub. Ask your questions on the Kill Bill Community mailing list, which the team monitors.
Can you help us get up and running with Kill Bill?
Aviate includes Level 3 support from the engineers who build Kill Bill, on a dedicated Slack channel. For implementation work, our partner can help. See the Support page.
Is there a Kill Bill demo?
Yes. The free Aviate sandbox lets you click through Aviate in your browser. To run Kill Bill and Kaui yourself, follow the Docker quick start on the Download page. For a short overview, watch these videos on Kill Bill and Kaui.
How do I set up Kill Bill in my development environment?
I’ve tried to install Kill Bill and/or Kaui, but I got stuck. What should I do?
Check the installation instructions first. If you followed the steps and are still stuck, describe the problem on the Kill Bill Community mailing list. The team monitors it and can usually help.
How do I get up to speed faster with Kill Bill?

Technical FAQs

APIs, tests, languages, bundles, accounts and events.

How stable are your APIs?

We have two release trains:

  • The latest release with an even minor number (e.g., 0.22.x) is stable (APIs are backward compatible).
  • The development team uses odd minor numbers for developing new features (0.17.x, 0.19.x, 0.21.x, etc.). API and DDL changes are frequent.
What kind of tests do you perform?

Before each release, there are thousands of tests that we perform:

  • Unit tests
  • Functional tests
  • Java library integration tests
  • Server integration tests to check the REST APIs
  • Client APIs integration tests

However, note that Kill Bill is a platform to build billing systems. There are many combinations of configurations possible, and we cannot test them all. We provide a test framework to help you verify your system before going to production.

Also, take extra care when installing third-party plugins.

Only the plugins hosted on our killbill organization on GitHub are officially supported.

We are not a Java shop. Can we still use Kill Bill?
Yes. You can use Kill Bill as a service, through its REST API and client libraries. Native plugins can only be written in Java. For other languages, we recommend a small shim that calls a remote service, for example a Go application over gRPC.
What is a (subscription) bundle?
A bundle is a collection of subscriptions. A typical bundle has exactly one BASE subscription and a collection of ADD_ONs. Logically grouping these subscriptions makes it easier to automatically cancel all ADD_ONs when the BASE subscription is canceled, for example.
Can I create subscriptions without billing information?
Yes. If you are not ready to charge your customers, for example during an activation phase, give your plan an initial free phase. You can also set the AUTO_PAY_OFF tag on the customer account: Kill Bill then generates invoices but does not try to charge them. When you remove the tag, payments happen automatically.
Can I create an account without a subscription?
Yes. An account without a subscription is useful during onboarding, for example when the customer must exist in your CRM and databases before signing up.
What are the environment requirements?
It depends on the plugins you run and on your traffic. To start, you need Docker with at least 4 GiB of memory, or JDK 11, Tomcat 9.0.x and a MySQL, MariaDB or PostgreSQL database. For sizing, ask the Kill Bill Community mailing list and give your details.
How can I listen to Kill Bill events?
Write a plugin, since all Kill Bill events are visible to plugins, or register an endpoint that Kill Bill calls with an HTTP POST for each event. See the push notifications documentation.
Kill Bill logo app

Ready to Transform Your Billing?

Explore the enterprise sandbox, read the docs, or connect with the Kill Bill community.