代做INFT6900 Project Proposal T3, 2024帮做R编程
- 首页 >> C/C++编程Developing an E-Invoice API for SMEs
INFT6900 – T3, 2024
Overview
The Malaysian tax authority, Inland Revenue Board, and the Malaysian Digital Economy Corporation (MDEC) have confirmed in a briefing the gradual introduction of electronic invoicing in Malaysia. As of August 2024, electronic invoicing will first impact taxpayers with an annual turnover of MYR 100 million or more.
e-Invoice covers typical transaction types such as B2B, B2C, and B2G. For B2G transactions, the e-Invoice flow will be similar to B2B.
The IRB has released both a beta version of the e-Invoicing Software Development Kit (SDK) which provides a set of functionalities, Application Programming Interfaces (APIs), and development guidelines to assist businesses in integrating their existing system into the MyInvois System via API.
You are a consultant to a company named ESS. ESS provides software services to many organisations including government organisations. Your task is to design and develop E-Invoice system APIs tailored for Small and Medium Enterprises (SMEs) in Malaysia.
This project will test your ability to apply the skills and knowledge you have acquired during your Master of IT program, including software development, API design, database management, and user experience (UX) design. Students will apply Agile principles to manage the project, ensuring continuous collaboration with stakeholders and iterative development to meet the needs of SMEs.
Objectives
SMEs often face challenges in managing invoicing efficiently. Your task is to develop an API for an e-invoice system that automates the invoicing process, ensuring accuracy, compliance with tax regulations, and ease of use. The system API should be secure, and user-friendly.
- To create a functional E-Invoice API that meets the needs of SMEs.
- To integrate key features such as invoice creation, management, and reporting.
- To ensure the system is user-friendly and secure.
- To demonstrate the ability to manage a project from conception through to deployment.
Assignment Requirements
1. Requirements Analysis
Conduct a thorough requirement analysis to ensure the successful design and development of an E-Invoice system API tailored for SMEs in Malaysia. The analysis will focus on understanding the needs of SMEs, compliance with Malaysian tax regulations, and technical specifications required to integrate with the MyInvois System. A document outlining functional and non- functional requirements may include:
Functional Requirements:
- Core functionalities like invoice creation, management, and reporting.
- Integration with the MyInvois System via the provided SDK and APIs.
- Support for different transaction types (B2B, B2C, B2G).
Non-Functional Requirements:
- Security: Ensure compliance with data protection standards.
- Usability: User-friendly interface tailored for SME users.
- Performance: Efficient processing to handle varying invoice volumes.
- Scalability: Ability to grow with increasing transaction volumes and business expansion.
2. API Design and Architecture
The API Design and Architecture section, requires comprehensive design documentation, including a detailed API architecture diagram that highlights the key components of the E-Invoice system. Additionally, it involves justifying the selection of programming languages, frameworks, and databases used in the system's development. This section also demands an outline of the security measures implemented, focusing on data protection strategies such as encryption and access controls.
2. Core Functionalities
The APIs identified in the architecture may include invoice creation and management, where users can create, edit, and manage invoices with features like adding items, calculating totals, applying taxes, and saving drafts. They may also include invoice validation and submission into the portal.
You need to select one API from your architecture and describe its functionalities in detail.
3. Implementation and Deployment
The Implementation and Deployment phase requires adherence to best practices in coding standards, including proper documentation, commenting, and version control. The API selected in the previous step should be deployed on a cloud platform or server, with clear instructions provided for accessing and testing the API. Then, a comprehensive testing plan must be developed, covering unit testing, integration testing, and user acceptance testing. Additionally, any bugs or issues encountered during development should be documented, along with the methods used to resolve them.
4. User Interface and Experience
The user interface and experience should have an intuitive UI/UX design to test the API, using carefully selected test data. Additionally, the API must be responsive and accessible across various client software including browsers, to ensure a seamless experience for all testers.
Deliverables
- Project Report: A detailed report covering requirements, API design, development process, testing, and deployment.
- Source Code: All source code files, including documentation and version history.
- User Manual: A user guide explaining how to use the E-Invoice API.
- Live Demo: A link to the deployed API with instructions for accessing it.
Approach
Conduct a literature review to:
a) Identify the barriers preventing organizations from adopting e-invoice API systems (e.g., technological limitations, security concerns, integration challenges, etc.).
b) Outline the essential API design requirements that cater to the diverse needs of businesses, considering their varying technical capabilities and existing systems.
c) Discuss the advantages and disadvantages of incorporating AI-driven features, such as automated error detection or smart data extraction, in e-invoice API systems.
d) Investigate best practices for designing a secure and reliable e-invoice API system that fosters trust and ease of use for organizations.
e) Highlight the critical functionalities required by businesses using e-invoice APIs, such as invoice generation, submission, tracking, and compliance with regulatory standards.