When starting a new project, some clients may have specific needs that aren't covered by the Base Module being implemented. In such cases, a solution must be designed that applies to the Base Module to meet the client’s requirements. Often, a consultant has already faced a similar situation, and that past experience can be reused to solve the current issue.
One such case might be in POS, where the following scenarios arise:
- In a restaurant, a bill is issued before the customer proceeds to pay. Usually, the bill is given to the customer so they can decide how they want to pay.
- When there's a delivery route, invoices are taken along, but payment isn't known until delivery occurs and the customer decides how to pay.
- Sometimes a customer wants to pay multiple invoices, receipts, or POS cash movements at once. For example, if paying by credit card, they prefer not to swipe multiple times but to complete the payment in a single action.
- In general, at the time of invoicing, the payment method may be unknown, requiring a different approach from standard POS processing.
For cases like these, a feasible, quick, and elegant solution is to handle a special payment type: Pending Payment.
This would be a temporary payment method to be updated before the end of the day (during end-of-day or end-of-shift closing), ensuring proper accounting distribution and reporting using the correct, final payment method.
To implement this, the following adjustments could be made:
1. Include a flag in the payment type catalog to mark which types qualify as "Pending Payment."
2. In the "Payment Reception" screen, add validation: if "Pending Payment" is selected, no other payment methods can be used, and the total amount must be registered under "Pending Payment." Upon selecting this method, the Electronic Invoice can be sent with instructions on how to handle this type of payment.
3. Add a new screen called "Settle Pending Payment," showing all POS documents using the "Pending Payment" method. One or multiple documents can be selected. The total amount of these documents will be passed to the "Payment Reception" screen.
4. Create a pending payment settlement procedure, which distributes (using proper proration functions) the paid amount by payment method, change (if any), and discrepancies (if any) from the “Payment Reception” movement across the selected documents. If only one document is selected, that document is linked to the new cash movement, and the previous "Pending Payment" movement is removed.
5. Modify the POS end-of-day or end-of-shift process to validate that no documents with "Pending Payment" remain unsettled.

Each document is recorded in POS with "Pending Payment" as the payment method.
In the "Settle Pending Payment" screen, all four documents are selected. The "Payment Reception" screen is called for the total amount of 254,095.00. If the client chooses to pay:

The payment amount must be distributed across the documents accordingly.

When clients have specific needs, there is a knowledge base of past projects that can be leveraged to accelerate solution design. Currently, that knowledge is distributed among our team, but we are making progress to make it accessible via corporate tools. For now, we wanted to present an elegant solution to a specific case that may prove useful in scenarios like those outlined.



