Advanced Payments – Functional Specifications
Overview and Justification
This document contains the functional specifications for the Advanced Payment functionality, which is intended to deliver capabilities to support a practice among trading partners where the seller organization collects an advanced payment at the beginning of a period, provides goods or services during the period, and at the end of the period invoices the buyer for the difference between the advanced payment and the value of the goods and services actually provided.
This functionality is intended to support this flow in generic terms. However, it is also designed to support the case where the business partners are subsidiaries of the same business group; in particular, it is intended to support the case where the holding company collects the advanced payments from a number of subsidiaries at the same time. This last scenario requires the support of mass transaction capabilities.
This project is the umbrella project required to support the overall flow. To fulfill this functionality a number of discrete requirements need to be satisfied and these are fulfilled by a number of different modules:
- Mass Advanced Payment: this process enables the creation of payments in advance in bulk for a number of business partners. If the business partner is an internal organization, this process can optionally create the corresponding transaction in the business partner organization.
- Direct Debit Form of Payment: when a payment with this rule is created, the payment transaction is automatically executed and the amount is automatically transferred to or from the payee bank account.
- Mass Invoicing: this process enables the creation of sales invoices during the period to a number of business partners.
- Inter-company Invoicing: ability to automatically create purchase invoices in the buying organization from sales invoices in the selling organization.
- Business Partner Debt Consolidation: a process that collects all the payment received and the payment dues and creates a single invoice for the difference closing all intermediate documents.
This document focuses on the overall business flow and delegates to the project of the corresponding modules the specifications of the details.
Inter-company invoicing and, to a less extent, mass document creation is a very common business practice that has been requested by many users..
Business Partner Debt Consolidation is needed to support advanced payments of a large number of business partners at a time.
New definitions and acronyms
None in this document. See the specifications of the individual modules.
Design and technical considerations
All the features required by this project will be delivered as separate modules. Some of them will require Openbravo ERP Core changes that will be delivered as part of standard maintenance packs.
Users & business process description
The features covered by this specifications enable users to trade with regular business partners on product and services provided routinely (i.e. every period, the same services and products are provided) with minimal overhead.
It is therefore essential for the success of this project that the user interface enables users to create mass transactions with minimal overhead.
User roles and personas
This project involves primarily staff from the payable and receivables departments of both the buying and selling organizations.
Specifically the impacted roles are:
- AR Staff: back office staff members that belong to the Finance function of the enterprise and that specialize in managing the receivables documents.
- AP Staff: back office staff members that belong to the Finance function of the enterprise and that specialize in managing the payables documents.
Business process definition
The overall business process is described in the following BPMN diagram.
The overall process composed by three independent processes. It is initiated in the selling organization that collects an advanced payment at the beginning of a period. This corresponds to a disbursement in the buying organization.
During the period, the selling organization sells goods and services creating invoices. This corresponds to purchase invoices in the buying organization.
At the end of the period, the selling organization consolidates the invoices created during the period against the advanced payment and creates an invoice to adjust the difference. The invoice can be for a positive or negative amount depending on whether the amount collected as advanced payment exceeds or not the value of the sales invoices created during the period.
Please notice that:
- The buying organization could be either an external business partner or a subsidiary of the same enterprise as the selling organization. In the latter case, the system must automate the creation of the reciprocal transactions in the buying organization when the transactions are initiated in the selling organization.
- The process need to support initiating transactions for multiple business partners at the same time in an effective manner.
Take as an example the following organization structure.
First story: advanced payments between holding company and subsidiaries
On June 1st, Maria – a member of the AR Staff of Micro-toys Holding – initiates and process an advanced payment to collect 100 euros from Micro-toys Italy, Spain and North America each.
On June 5th, Maria creates a sales invoice for 40 euros for an internal sales to Micro-toys Italy, Spain and North America each.
On June 15th, Maria creates a sales invoice for 35 euros for an internal sales to Micro-toys Italy, Spain and North America each.
On June 20th, Maria creates a sales invoice for 30 euros for an internal sales to Micro-toys Italy and Spain and 20 euros to North America.
On June 30th, Maria runs the Business Partner Debt Consolidation process that creates an invoice for 5 euros for Micro-toys Italy and Spain and one for -5 euros for North America.
Second story: advanced payments between holding company and external business partner
On June 1st, Maria – a member of the AR Staff of Micro-toys Holding – initiates and process an advanced payment to collect 100 euros from ACME Constructions, one of its customers.
On June 5th, Maria creates a sales invoice for 40 euros for an internal sales to ACME Constructions.
On June 15th, Maria creates a sales invoice for 35 euros for an internal sales to ACME Constructions.
On June 20th, Maria creates a sales invoice for 30 euros for an internal sales to ACME Constructions
On June 30th, Maria runs the Business Partner Debt Consolidation process that creates an invoice for 5 euros.
Since this project is an umbrella project that leverage alternative modules, it does not have any additional requirements.
See the projects of the individual modules for specific functional requirements.
Since this project is an umbrella project that leverage alternative modules, it does not introduce any additional user interface directly.
See the projects of the individual modules for specifics.
The functionality provided by this project require the orchestration of the modules described above in the Scope section and some Openbravo ERP Core enhancements.
The following picture describes the dependencies among these modules and enhancements:
All modules required by this project are to be released under the Openbravo Public License.