payment: note that Stripe has instituted an additional 1% fee for non-US cards
[hcoop/portal.git] / balance.sig
1 signature BALANCE =
2 sig
3 type balance = {id : int, name : string, amount : real}
4
5 val addBalance : string -> int
6 val lookupBalance : int -> balance
7 val modBalance : balance -> unit
8 val deleteBalance : int -> unit
9 val listBalances : unit -> balance list
10 val listOwnedBalances : unit -> balance list
11 val listUnownedBalances : unit -> balance list
12 val listBalanceUsers : int -> Init.user list
13 val listNegativeOwnedBalances : unit -> balance list
14
15 val validBalanceName : string -> bool
16 val balanceNameToId : string -> int option
17
18 val sumOwnedBalances : unit -> real
19 val isNegative : balance -> bool
20
21 val depositAmount : int -> real
22 end