Kill Bill FAQ
Last updated: October 2026
What is Kill Bill?
Kill Bill: open source, Apache 2.0, free
Aviate: enterprise features and Level 3 support
- License
- Apache 2.0, free
- Since
- 2010
- Hosting
- Self-hosted: Docker, Tomcat or Kubernetes
Docker
Tomcat
Kubernetes
- Databases
- MySQL, MariaDB, PostgreSQL
MySQL
MariaDB
PostgreSQL
- Payments
- Stripe, Adyen, Braintree, Hyperswitch plugins
Stripe
Braintree
- Tax
- AvaTax, Vertex, Kintsugi plugins
Kintsugi
- Admin UI
- Kaui (open source), Aviate
Kaui
Aviate
- Support
- Community, or Level 3 with Aviate

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

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.
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.


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

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


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.)
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.


Compliance & Security
PCI DSS, GDPR, taxes and how to secure an 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.
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.

Getting Started
Documentation, demo, installation and where to get help.
- Read What Is Kill Bill and watch the short overview video.
- Try the Aviate sandbox.
- Install Kill Bill and Kaui, then create a tenant, a catalog, an account and subscriptions, with Kaui or API calls.
- Use the guides and the API reference, and ask questions on the Kill Bill Community mailing list.

Technical FAQs
APIs, tests, languages, bundles, accounts and events.
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.
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.