Payments, Deposits & Bank#
Cash management — banks, deposits (money in), payments (money out), and recurring payments.
Banks#
BankSetupHelper manages bank accounts, their currencies, and the GL accounts they map to. Every deposit and every payment picks a bank; that choice drives the cash GL account.
Deposits#
Deposits are cash-in — customer payments, refunds, misc receipts. A deposit slip groups payments landing in the same bank on the same date. DepositHelper builds the slip and applies the constituent payments to open AR invoices; unapplied amounts land in an on-account balance.
Payments#
Payments are cash-out — supplier disbursements. Selection is by payment type (MnxPaymentTypeHelper, PaymentType) and driven by the AP aging + terms — pay what’s due, take discounts where date permits.
PaymentTypeController/MnxPaymentTypeHelper— payment methods (check, ACH, wire, credit card).RecurringPaymentsController— schedule of standing payments; theManExServiceCalenderTriggergenerates the actual payment records on schedule.PmtTermsController— payment terms master (Net 30, 2/10 Net 30, etc.).
Business rules#
- A payment can only draw on a bank whose currency matches the invoice currency, unless a cross-currency payment rate is captured.
- Voiding a payment posts a reversing journal — never a delete.
- Deposits can be re-opened only if no bank reconciliation has consumed them.
- Recurring payments are generated in an unreleased state so a human can review before release.
Where it lives#
| Layer | File |
|---|---|
| Controller | BankSetupController, DepositsController, PaymentsController, PaymentTypeController, PmtTermsController, RecurringPaymentsController |
| Helper | MnxEFModel/Helper/BankSetup/BankSetupHelper.cs, DepositHelper.cs, MnxPaymentTypeHelper.cs |
| Related | AP, AR, GL |