feat: add topup form to uccportal
This MR adds a top up form which members can use to add arbitrary amounts to their dispense accounts automatically.
We currently only allow usage of this while logged in, and we also pass the 2.2% Square fee onto them.
We store every topup in the database to cross reference with dispense
.
Failures to call `dispense` to add balance will cause the error to be logged and stored under the above object. Committee can then view it via the uccportal admin site and either:
- Refund the user, delete the topup
- Add the funds to the user, mark the topup as paid.
Screenshot:
The UI for the actual payment was reused from memberships. No changes there.
Edited by bird