Kill Bill plugin to provide business analytics and reporting capabilities. You can find the documentation here.
Release builds are available on Maven Central with coordinates org.kill-bill.billing.plugin.java:analytics-plugin
.
Plugin version | Kill Bill version |
---|---|
1.x.y | 0.14.z |
2.x.y | 0.15.z |
3.x.y | 0.16.z |
The plugin needs a database. The latest version of the schema can be found here.
Default dashboards rely on reports that need to be installed by running the seed_reports.sh script.
By default, the views will use the converted amount columns when applicable, which require the analytics_currency_conversion
table to be populated with currency conversion rates. If you are only using one currency, use the non-converted columns instead (next_mrr
instead of converted_next_mrr
for example).
To retrieve all data for a given account:
curl -u admin:password \
-H "X-Killbill-ApiKey:bob" \
-H "X-Killbill-ApiSecret:lazar" \
"http://127.0.0.1:8080/plugins/killbill-analytics/<ACCOUNT_ID>"
To force a refresh:
curl -v \
-X PUT \
-u admin:password \
-H "X-Killbill-ApiKey:bob" \
-H "X-Killbill-ApiSecret:lazar" \
"http://127.0.0.1:8080/plugins/killbill-analytics/<ACCOUNT_ID>"
To refresh all accounts:
curl -s \
-u admin:password \
-H "X-Killbill-ApiKey:bob" \
-H "X-Killbill-ApiSecret:lazar" \
"http://127.0.0.1:8080/1.0/kb/accounts/pagination" | \
ruby -r json -e 'JSON.parse(gets).map { |a| puts a["accountId"] }' | \
xargs -I accountId \
curl -v \
-X PUT \
-u admin:password \
-H "X-Killbill-ApiKey:bob" \
-H "X-Killbill-ApiSecret:lazar" \
"http://127.0.0.1:8080/plugins/killbill-analytics/accountId"