Create Document With Lines of Any Type
The Customer Sales Representative or Finance Department User wants to via CRM / Finance system GUI create document with lines in the OCS.io. This operation is available in the CRM / Finance system GUI for users with correct privileges.
The CRM / Finance system via the RESTful API requests for creation of the document in the OCS.io. The request body contains the Account details and information necessary for creation of the document.
The OCS.io creates the document with lines, then returns the document as a payload of the response.
The CRM / Finance system formats the document and presents it to the User in the GUI.
Basic Flow
Step | Actor | Action | Description |
---|---|---|---|
1. |
CSR / FIN User |
Prepare Document |
Customer Sales Representative or Finance Department User via CRM / Finance GUI adds all document’s items and prepares Document. |
2. |
CRM / Finance |
Display Prepare Document |
CRM / Finance System displays result of Prepare Document to the User. |
3. |
CSR / FIN User |
Request for Operation |
Customer Sales Representative or Finance Department User via CRM / Finance GUI requests for Operation. |
4. |
CRM / Finance |
Call createAnyDocumentWithLines API |
CRM / Finance System calls Create Document With Lines of Any Type API exposed by OCS.io. |
5. |
OCS.io |
Request Validation |
OCS.io validates Request whether all mandatory attributes are populated, all data types are valid, ENUMs match with definition, etc. Additionally, OCS.io validates Request against Business Logic. This typically includes, that referenced entity exists in the system, entity has proper state, etc. |
6. |
OCS.io |
Perform Business Logic |
OCS.io performs Business Logic implemented for the Use-Case. |
7. |
OCS.io |
Publish Business Transaction |
OCS.io publishes zero to many messages to Streaming Platform that impacted entities have been changed. |
8. |
OCS.io |
Publish Notification |
OCS.io publishes zero to many notifications to Streaming Platform that certain conditions have been met. |
9. |
OCS.io |
Return createAnyDocumentWithLines Response |
OCS.io returns Response to the CRM / Finance System. |
10. |
CRM / Finance |
Result of Operation |
CRM / Finance system displays result of the operation to the User. |
11. |
Notification Handler |
Subscribe for Notifications |
Notification Handler subscribes for Notifications to be delivered by Streaming Platform. |
12. |
Notification Handler |
Process Notifications |
Notification Handler process Notifications. This typically includes delivering of Notifications to recipients, storing for audit purposes, etc. |
13. |
Finance System |
Subscribe for Business Transactions |
Finance System subscribes for Business Transactions to be delivered by Streaming Platform. |
14. |
Finance System |
Process Business Transactions |
Finance System process Business Transactions internally. This typically includes storing of changed entities, update indexes, update metrics, etc. |
15. |
DWH |
Subscribe for Business Transactions |
DWH subscribes for Business Transactions to be delivered by Streaming Platform. |
16. |
DWH |
Process Business Transactions |
DWH process Business Transactions internally. This typically includes storing of changed entities, update indexes, update metrics, etc. |
Request Validations
The following validations are performed when creating a document with lines:
-
Account must be provided in the request, it must be already created in the system and must not be in Deactivated State.
-
Payer must be already created in the system.
-
Document Type must be configured in the system.
-
Document Source must be configured in the system.
-
Currency must be configured in the system.
-
Payment Method must be configured in the system.
-
Delivery Method must be configured in the system.
-
If External Document Number is provided in the request, other Document with the same External Document Number must not be already created in the system, it must be unique.