...
Data becomes powerful only when information starts to have relations. It is not sufficient to only have thousands of separate electronic invoices files. A good invoicing system should include a component that is able to manage its storage. (Think about the relationship between a book, a librarian and a library.) This category of service manages the storage and saves a large number of standard invoices. Reliability and performance are the core of this type of service. You should design and implement a mechanism to stores store standardised e-invoices, making use of existing/open-sourcing technologies. You can include relational databases, NoSQL databases, file systems, or even caching mechanisms in your storage mechanism. In some cases, you may need to discuss the use cases and balance reliability and performance. To deliver extreme experiences, consider reliability and performance separately in different situations.
...
Grade | Requirements | |||||||
---|---|---|---|---|---|---|---|---|
| All below and introducing a novel functionality specific to e-invoice storage. The API design should follow defence in depth, well-documented errors, relatively quick response times, and fully deployed on cloud. | |||||||
| All below and the API follows enhanced storing mechanisms to provide filtering, modification, deletion, follows efficient REST practices. eg. API authentication, flexibility for end users, and comprehensive documentation. Batch processing is a recommended feature. | |||||||
| The API should capable of storing e-invoices in different mediums, preserve state for users over long period of times, and follows appropriate REST practices. eg. status codes are appropriate, input and response formats are documented. | |||||||
| The API provides access to a basic e-invoice storage system allowing users to upload, store and retrieve one or multiple invoices. |