-
Notifications
You must be signed in to change notification settings - Fork 9.6k
[ADD] POS: customer credit as payment method #13700
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: 18.0
Are you sure you want to change the base?
Conversation
fa3edff
to
cade9f6
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice doc, @LoredanaLrpz , I added some suggestions to reduce the amount of pronouns and turn passive sentences into active ones. You could also harmonize your headers a bit, some contain nouns only (Configuration, Default credit limit) while others have active verbs (Settle due accounts).
content/applications/sales/point_of_sale/payment_methods/customer_credit.rst
Outdated
Show resolved
Hide resolved
content/applications/sales/point_of_sale/payment_methods/customer_credit.rst
Outdated
Show resolved
Hide resolved
content/applications/sales/point_of_sale/payment_methods/customer_credit.rst
Outdated
Show resolved
Hide resolved
content/applications/sales/point_of_sale/payment_methods/customer_credit.rst
Outdated
Show resolved
Hide resolved
content/applications/sales/point_of_sale/payment_methods/customer_credit.rst
Outdated
Show resolved
Hide resolved
content/applications/sales/point_of_sale/payment_methods/customer_credit.rst
Outdated
Show resolved
Hide resolved
content/applications/sales/point_of_sale/payment_methods/customer_credit.rst
Outdated
Show resolved
Hide resolved
content/applications/sales/point_of_sale/payment_methods/customer_credit.rst
Outdated
Show resolved
Hide resolved
content/applications/sales/point_of_sale/payment_methods/customer_credit.rst
Show resolved
Hide resolved
content/applications/sales/point_of_sale/payment_methods/customer_credit.rst
Outdated
Show resolved
Hide resolved
cade9f6
to
66d0259
Compare
66d0259
to
f397bcf
Compare
task-3090872
f397bcf
to
4fbece5
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @LoredanaLrpz , thank you for your work on this! I had a few notes and suggestions after reviewing and testing the instructions:
- The Payment methods doc page is outdated, and since it is a central part of this doc, I think it'd be a good idea to update it as well (we could create another task for this if you prefer, of course!).
- When I tested this in 18.0 with just the Invoicing app, I didn't have the Customer statements smart button on the customer form, nor the Settle due accounts option in the hamburger menu that you mention later on in this doc. Note that this changed somewhere along the way (it works in 18.4 with just Invoicing). Note that "Settle due accounts" becomes "Settle invoices" in 18.4 at least, I didn't check the other versions.
- I think we should clarify somewhere that allowing customers to "purchase on credit" really just means creating an invoice that they’ll pay later. When using the Customer Credit payment method, no payment is actually registered at the time, since the invoice hasn’t been paid yet. I would make that clear.
- I’d suggest grouping all the info about order processing, like selecting a customer, choosing a payment method, and enabling Invoice, in one section to make the workflow easier to follow.
Configuration | ||
============= | ||
|
||
To allow customers to pay on credit, follow these steps: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
To allow customers to pay on credit, follow these steps: | |
To allow customers to pay on credit, :doc:`create a payment method <../payment_methods>` and configure it as follows: |
I know you explain everything in the steps below, but this intro sentence makes me think we're just going to enable a feature somewhere so I think I'd clarify in this sentence that we need to configure a new payment method and configure it as explained below (and I think I'd have the two fields as bullet list items instead of numbered list items then).
Default credit limit | ||
-------------------- | ||
|
||
To set a maximum sales credit, follow these steps: | ||
|
||
#. Go to :menuselection:`Accounting --> Configuration --> Settings`. | ||
#. Scroll down to the :guilabel:`Customer Invoices` section. | ||
#. Check the :guilabel:`Sales Credit Limit` checkbox. | ||
#. Enter the desired maximum amount in the :guilabel:`Default Credit Limit` field. | ||
|
||
A warning appears next to the customer’s name if the cart value surpasses the established maximum | ||
limit or if the customer has already exceeded it. However, the warning does **not** prevent the sale | ||
from proceeding. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should actually be documented in the Accounting section, maybe on the Payments doc page. Dallas has asked that we create a task for this and he will take care of it; I know it's not super convenient because you'll probably want to refer to that doc here but let's go with that solution and create another PoS task to add the doc link when that's done.
You could of course keep the last two sentences here, maybe with the other 'order processing" info (customer - payment method - enable Invoice)
|
||
When a customer pays on credit, the purchase amount is considered a debt until the customer pays it | ||
off. To keep track of a customer’s debt, consult their customer statement in the backend or their | ||
profile in an open session. To access the **customer statements** report, follow these steps: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
profile in an open session. To access the **customer statements** report, follow these steps: | |
profile in an open session. To access the :guilabel:`Customer Statement` report, follow these steps: |
since it's the name of the report (and an UI element)
.. warning:: | ||
Without an invoice generated for the order, the :guilabel:`Customer Statements` report remains | ||
empty. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this should be moved to the top of the section since it's such an essential step in the order processing for this particular feature.
EDIT: Actually, it might be better to group all of the flow steps (select the payment method, select the customer, make sure to enable the Invoice check box) in one place to avoid confusion.
.. note:: | ||
To effectively monitor and manage the customer’s unpaid debt, either create an invoice for the | ||
order or activate the :doc:`Accounting application <../../../finance/accounting>`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In 18.0, I think you actually need both to be able to access a customer's customer statements (see my general comment)? so I would rephrase this sentence and maybe reorganize a bit.
I would also add a doc link to the Receipts and invoices doc page
|
||
Settlement can be made by paying the generated invoice, but also from an open POS session. To do so, | ||
|
||
#. Click :guilabel:`Customers`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
#. Click :guilabel:`Customers`. | |
#. Click :guilabel:`Customer` and search for the desired customer in the list. |
Settlement can be made by paying the generated invoice, but also from an open POS session. To do so, | ||
|
||
#. Click :guilabel:`Customers`. | ||
#. Click the :icon:`fa-bars` (:guilabel:`hamburger menu`) icon next to the desired customer. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
#. Click the :icon:`fa-bars` (:guilabel:`hamburger menu`) icon next to the desired customer. | |
#. Click the :icon:`fa-bars` (:guilabel:`hamburger menu`) icon next to the customer's name. |
(since we already said "desired customer" above)
#. Choose the payment method. | ||
#. Click :guilabel:`Validate`. | ||
|
||
Finally, click :guilabel:`Yes` to confirm the deposit of the payment received from the customer. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should this just be another step in the list (in which case, I'd remove "Finally")
#. Keep the :guilabel:`Journal` field blank, as there is no journal entry tied to a specific bank or | ||
cash journal created when using the payment method. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is confusing, especially given what you say about accounting entries below (see my comment about that also): If we don't set the journal, how can we decide if we're using outstanding accounts to create journal entries or not?
Once configured, a credit sale is completed by selecting this payment method after a customer's | ||
purchase. This action automatically generates the following accounting entries: | ||
|
||
- A debit in Accounts Receivable. | ||
- A credit in the Income account. | ||
|
||
Upon later settling the accounts (i.e., receiving payment from the customer), the following | ||
accounting entries are made: | ||
|
||
- A debit in an Outstanding Account. | ||
- A credit in Accounts Receivable. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Once configured, a credit sale is completed by selecting this payment method after a customer's | |
purchase. This action automatically generates the following accounting entries: | |
- A debit in Accounts Receivable. | |
- A credit in the Income account. | |
Upon later settling the accounts (i.e., receiving payment from the customer), the following | |
accounting entries are made: | |
- A debit in an Outstanding Account. | |
- A credit in Accounts Receivable. | |
Once configured and added to the list of guilabel:`Payment methods` field in the :ref:`POS settings <add ref>`, you can select the payment method to validate a customer's credit purchase. |
- I know the POS settings part is mentioned on the main Payment methods doc page but I think it's worth repeating here since it's so short.
- See also my general comment about grouping "order processing" steps in one place (select customer - select payment method, enable Invoice).
- Cf my comment above about leaving the Journal field blank
- Even after we've clarified this journal field thing, I think we should remove this info about journal entries: I really don't think we need to get into this topic in the PoS doc; this is a standard invoice/payment flow, which is documented in the Accounting section.
task-3090872