An introduction to designing the flow of funds in your organization.
@pay-in
represents “outside” for deposits, and @pay-out
represents “outside” for payouts.
Let’s add some more details.
When a customer deposits money in their wallet, your pay-in provider charges you a processing fee, but you don’t pass it to the customer. You pay this fee from your company account.
When a customer initiates a payout or withdrawal, you charge a fee and your payout provider charges you a processing fee as well. You pass these fees to the customer.
You also charge no fees when they transact with other wallets in your app.
Now your map looks like this:
Note that:
@fees
balance. This keeps the map focused while still accounting for the expense.
@pay-in
and @pay-out
only represents source and destination when money is coming into and going out of our system respectively.
@fees
).@fees
.Ledger | Balances |
---|---|
General Ledger | @pay-in @pay-out @fees @revenue |
Customer Wallets Ledger | customer-wallet-1 customer-wallet-2 customer-wallet-3 customer-wallet-n |
@pay-in
and customer balances.@pay-out
.