Create OCS Invoice On-Demand

The Customer Sales Representative or Finance Department User wants to via CRM / Finance system GUI create Invoice for current billing period. 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 On-Demand creation of the Invoice. The request body contains the Account details and period for which Invoice will be calculated.

The OCS.io starts process which calculates the Invoice, the CRM / Finance system is then notified in standard manner about Invoice has been calculated.

Primary Actor

Customer Sales Representative or Finance Department User.

Basic Flow

Create OCS Invoice On-Demand Basic Flow
Step Actor Action Description

1.

CSR / FIN User

Search Account

Customer Sales Representative or Finance Department User via CRM / Finance GUI searches for an Account for which On-Demand Invoice will be created.

2.

CRM / Finance

Display Search Account

CRM / Finance System displays result of Search Account 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 createDocument API

CRM / Finance System calls Create OCS Invoice On-Demand 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 createDocument 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 an OCS invoice on-demand:

  • Account must be provided in the request, it must be already created in the system and must be in Deactivated State.

  • Payer must be already created in the system.

Perform Business Logic

  1. System internally asynchronously starts Perform On-Demand Invoice Process and acknowledges that process has been started.

Publish Notification

Following Notifications will be published to Streaming Platform:

Publish Business Transaction

Following entities will be published to Streaming Platform as part of Business Transaction: