Update Brotherton Accounting

steffeydev 2025-02-10 13:54:20 +00:00
parent a65ff43636
commit 2670e5e956

@ -28,21 +28,27 @@ Company Structure:
### ERPNext Setup ### ERPNext Setup
- We need to create a "Customer Deposit" and "Undeposited Funds" account for each company - We need to create accounts for each company
- "Customer Deposit" under "Current Liabilities" of type "Receivable"
- "Undeposited Funds" under "Cash In Hand" of type "Cash"
- They can specify the default income account on an item, or by editing the item on the invoice to specify the income account for that item. If they do neither, the income account will be Sales by default. - They can specify the default income account on an item, or by editing the item on the invoice to specify the income account for that item. If they do neither, the income account will be Sales by default.
- For each company, we need to go to the company settings > Accounting and check "Book Advance Payments in Separate Party Account", then select "Customer Deposit" as the "Default Advance Received Account" - For each company, we need to go to the company settings > Accounting and check "Book Advance Payments in Separate Party Account", then select "Customer Deposit" as the "Default Advance Received Account"
### ERPNext Flow ### ERPNext Flow
- Staff creates sales order and specifies "Sales Taxes and Charges Template" based on customer address.
- Staff creates sales invoice from existing sales order or from scratch. They will specify the income account for each item, if it is not already set on the item.
- When payment entry comes in - When payment entry comes in
- They want to be able to lookup invoices by customer name, invoice number, invoice date, or invoice amount. If they start on the invoice list, they can find invoices by those criteria using the quick filters or full filter, and then once they pull up the invoice they can create the payment off of that - They want to be able to lookup invoices by customer name, invoice number, invoice date, or invoice amount. If they start on the invoice list, they can find invoices by those criteria using the quick filters or full filter, and then once they pull up the invoice they can create the payment off of that. They can do the same with sales orders.
- This could also be done by starting on the invoice and fetching outstanding orders and invoices, but that only links by customer, and doesn't allow searching by amount. This may be an area for future customizations, where we could build a custom form that allows them to search and then creates the payment draft linked to the correct sales order or invoice.
- If it can be attached to an invoice, it should go against AR and Undeposited Fund for the correct company - If it can be attached to an invoice, it should go against AR and Undeposited Fund for the correct company
- If the invoice hasn't been made yet (pre-payment), money should go against income and Customer Deposit account. Once invoice is made, it should move from Customer Deposit to Undeposited Funds. - If the invoice hasn't been made yet (pre-payment), money should go against income and Customer Deposit account. Once invoice is made, it should move from Customer Deposit to Undeposited Funds.
- The staff that creates the sales order or sales invoice will specify what income account the invoice should go to. If specified on sales order, it should copy to the sales invoice.
- At end of month, accounting staff need: - At end of month, accounting staff need:
- Trial balance report, so that journal entries can be added to QB - Trial balance report, so that journal entries can be added to QB
- Sales Tax Liability report, see spreadsheet for example of QB report equivalent. Should be done on cash basis. Data comes from the addresses of the customers on the invoices. - Sales Tax Liability report, see spreadsheet for example of QB report equivalent. Should be done on cash basis. Data comes from the addresses of the customers on the invoices.
### Pending questions / unknowns ### Pending questions / unknowns
- Who needs access to Payment Entry directly, which would mainly be used for entering cash and checks? How does the current ERPNext flow for entering cash/checks work for them when the customer pays more than they owe, thus resulting in a credit on the account? - Who needs access to Payment Entry directly, which would mainly be used for entering cash and checks? How does the current ERPNext flow for entering cash/checks work for them when the customer pays more than they owe, thus resulting in a credit on the account?
- How do we handle the Customer Deposit / prepay flow and move the funds once the invoice is made? In the prepayment we can have the money go to the Customer Deposit account, but I don't think there is a mechanism to move prepayment amount once it is attached to an invoice. We may be able to automate that via a journal entry created when an invoice is submitted with a pre-payment attached. Once challenge is that a payment entry want to be paid from an AR account to a bank or cash account, which doesn't support the current workflow of pre-payment crediting a liability account and debiting a cash account. - How do we handle the Customer Deposit / prepay flow and move the funds once the invoice is made? In the prepayment we can have the money go to the Customer Deposit account, but I don't think there is a mechanism to move prepayment amount once it is attached to an invoice. We may be able to automate that via a journal entry created when an invoice is submitted with a pre-payment attached. Once challenge is that a payment entry want to be paid from an AR account to a bank or cash account, which doesn't support the current workflow of pre-payment crediting a liability account and debiting a cash account.
- Are the parent accounts and types I chose for "Customer Deposit" and "Undeposited Funds" accounts correct?
- Is there ever payment that comes in that can't be linked to an existing sales order or invoice?