Projects/WEBSTORE Sales Order DocumentType

From InfiniteERP Wiki
Revision as of 07:48, 22 February 2022 by Asp-rahmadi (talk | contribs) (InfiniteERP Implementation)
Jump to: navigation, search
Warning.png   This document is still a work in progress. It may contain inaccuracies or errors.

Functional Specifications

TBD

Overview

Fitur ini bertujuan untuk mempersingkat proses transaksi penjualan hingga pengiriman yang harus melalui beberapa tahap utama yaitu Sales Order > Goods Shipment > Sales Invoice > Payment In

and the process have customize document status on Goods Shipment and Sales Invoice that being generated, the document status is configurated based on Sales Order document type. using Approval Configuration Tab on Document Type Menu.

Purpose

Beberapa klien apparel manufakturing memiliki online store atau market place yang digunakan untuk transaksi penjualan dengan pelanggan. Proses di ERP diharapkan semakin dipersingkat sebagai bentuk otomasi.

References

POS Order - Document Type
Saat ini ERP sudah memiliki Document Type - POS Order dimana setiap transaksi Sales Order yang menjadi COMPLETED secara otomatis membentuk transaksi Goods Shipment dan Sales Invoice.

Design Considerations

Proyek ini didesain tetap mempertimbangkan mengurangi waktu dan biaya implementasi adopsi InfiniteERP.


Assumptions

  1. It should be possible to operate this functionality in a pure multi-tenant implementation. In particular, this means that it should be possible for a user to initiate the creation of a new client applying an industry template in a self-service manner without having any prior access to the system and without being a system administrator.

Dependencies

None.

Constraints

Glossary

Functional Requirements

An Example

The Scenario
InfiniteERP Implementation

Untuk menerapkan integrasi ini dibutuhkan beberapa setup yang harus dilakukan terlebih dahulu:

Setup Data

  • A client that represents the organization itself.
  • Membuat sebuah user account yang akan digunakan Webstore untuk mengakses API
  • Organization
    • Define new Organization for Online WebStore called "ONLINE_STORE"
  • Master Data Management
    • Business Partner
    • Product
      • Setiap product yang akan dijual online harus memiliki record di sub tab Product Organization
    • Price List - Selling Price
    • Import Business Partners
  • Sales Management
    • Sales Order
    • Create Invoices from Orders
    • Generate Invoices
    • Print Invoices
  • Financial Management
    • Define a GL calendar with quarterly periods
    • Define Financial Account / a bank account
    • Define a cashbook for petty cash transactions
  • Define the business partner categories:
    • Distributor
    • Agen
    • Reseller
    • Suppliers
  • Define the product categories
    • Ads
    • Services
    • Other
  • Define Payment Method
  • A price list adjustment to represent the discount on advertisements for business members (*)
  • Define Document Routing Configuration of Sales Order when complete the document status using org.infinite.documentrouting.porting.CustomOrderActionHandler, if you want to change how Goods Shipment and Sales Invoice document status generated, if not you can use the default one (org.wirabumi.gen.oez.porting.OrderActionHandler).
  • Define generated document status of Goods Shipment and Sales Invoice on Approval Configuration Tab on Document Type Menu (if not being define the Goods Shipment and Sales Invoice document status will be generated using default process).
The Industry Template

User roles & profiles

The user roles affected by this functionality are:

Non-professional Functional Administrator
Typically a small business owner or trusted employee at a small business that is tasked with configuring the system to meet the requirements of the business. These users are typically computer-literate and very familiar with desktop applications and consumer web sites but does not have a formal education in computer science; they are therefore expecting a user experience comparable to the one of a consumer-grade application. They are very knowledgeable about the way their business work but are not familiar with ERPs and have never participated in a complex IT or formal business process re-engineering project.

Business process definition

  1. Users connect to an InfiniteERP instance with a guest user which has access to a role that only allows to initiate an initial client setup with industry template action.
  2. Users can choose to either browse a catalog of industry templates or to instantiate a client from a template they previously downloaded
  3. Users can initiate the client creation process using the selected industry template and specifying the organization specific data
  4. Optionally, an instance administrator approves the client creation (this task might include payment verification)
  5. The system instantiates the client, applies the template
  6. Users receive a notification with the login instructions

User stories

Functional requirements based on business processes

User Interface Mockups

TBD

Technical Requirements

to make the process for each document type dynamic, there is need a table that will be put on Menu Document Type as sub Tab, that we can use as configuration of document type, such as :

  • configuration for document status of Sales Invoice that generated.
  • configuration for document status of Goods Shipment that generated.
  • configuration for is auto generate Payment In.
  • and etc, it can be add depends on what client requirement is.

Process

the process will be put on document routing, this will make sure other client will not get impact when the implementation used on other client, from now the new document routing will be using new module org.infinite.documentrouting. the process will be use the new table as configuration to process(approval) data, the end result is depends on configuration that used on the new document type configuration table.

Open Discussion Items

Self-service model
In a pure self-service model - required for a full support of a pure multi-tenant system - the user should be able to initiate the creation of a new client using a template without having any previous access to the system. This action would then be considered as a request and it would need to go through a workflow which includes various steps (example: payment collection, approval, provisioning, etc.). This presupposes the existence of a workflow engine, which is not available in Openbravo.
Instead, we assume that the user can connect with a guest user and initiate the action.
Is this acceptable?
Industry templates by organization
Larger enterprises can have multiple organizations each implementing different lines of businesses or operations in different countries. It is therefore conceivable that a larger organization might want to implement different industry templates within a single client.
The current proposal is to have a template per client. Is that acceptable?
This feature targets smaller enterprises that typically have only one organization; is that areasonable simplification assumption?

Closed Discussion Items