ref: e1cb44d0d4156efcd543b661ee937ca876395b7b jmp-pay/bin/billing_monthly_cronjob -rwxr-xr-x 5.0 KiB
Merge branch 'do-not-bill-unregistered'

* do-not-bill-unregistered:
  Query sgx-jmp for every expired user
  Show backtrace and bail out hard on panic
Merge branch 'rubocop'

* rubocop:
  Update rubocop
Query sgx-jmp for every expired user

If they have no assigned tel, do not bill them or notify them.
Update rubocop

And use settings from sgx-jmp
Better error on no JID
Remove healthchecks integration

We use runitor in prod now
If expired with auto top up, NOTIFY for a week before sending expiry notice
Include BTC addresses in notification, if there are any
If a user has no balance, then their balance is 0
Only notify expired users once a week
Fix Dhall signature

The config got updated, but the signature was missed.
Update schema and INSERT to plan_log using new range type

plan_log has been updated to use a range type, so our INSERTs need to be
updated as well.
Send notifications using Cheogram whispers

This way they don't need an assigned tel to work.
Notify customer when renewal fails due to low balance

This is done by sending from a configured JID to <tel>@cheogram.com in order to
have them receive a message from support.
Create initial monthly billing cronjob

Renews all expired plans where there is enough balance to do so.

Sets expires_at on all renewed plans to one month from today, so even if they
were very expired they are up to date the moment they pay.