💰 Kill Bill

For subscriptions management try out Kill Bill. It's got great documentation, video guides, and integrations to make sure billing/subscriptions/payments work great for your business.

Open-Source Billing and Payment Platform
Kill Bill is the leading open-source billing and payment platform, trusted by organizations across the globe, from startups to public companies.

Managing payments, billing, and subscriptions is complex, high impact, and high risk for any business  – Kill Bill (code) can help. Licensed with Apache v2, Kill Bill is F/OSS software that is massively useful to businesses large and small.

In addition to not having to worry so much about your payments, you get a nice web interface (called Kaui):

Kill Bill web UI (source: https://killbill.io/overview)

Kill bill has extensive documentation along with a suite of Youtube videos showing you how to properly use Kill Bill, so it's easy to get familiar with the software. This amount of polish in onboarding is rare with open source projects.

Along with the core functionality Kill Bill has open source plugins that you can use to get more work done.

Running Kill Bill

Kill Bill has an official docker image, and a getting started guide specifically for Docker so it's easy to get started locally using something like docker-compose :

version: '3.2'
volumes:
  db:
services:
  killbill:
    image: killbill/killbill:0.22.26
    ports:
      - "8080:8080"
    environment:
      - KILLBILL_DAO_URL=jdbc:mysql://db:3306/killbill
      - KILLBILL_DAO_USER=root
      - KILLBILL_DAO_PASSWORD=killbill
      - KILLBILL_CATALOG_URI=SpyCarAdvanced.xml
  kaui:
    image: killbill/kaui:2.0.9
    ports:
      - "9090:8080"
    environment:
      - KAUI_CONFIG_DAO_URL=jdbc:mysql://db:3306/kaui
      - KAUI_CONFIG_DAO_USER=root
      - KAUI_CONFIG_DAO_PASSWORD=killbill
      - KAUI_KILLBILL_URL=http://killbill:8080
  db:
    image: killbill/mariadb:0.22
    volumes:
      - type: volume
        source: db
        target: /var/lib/mysql
    expose:
      - "3306"
    environment:
      - MYSQL_ROOT_PASSWORD=killbill

By default KillBill's docker-compose configuration uses MySQL, but there is Postgres setup documentation as well, so fear not Postgres enthusiasts!