USER STORIES
As a business, I want to know if my invoice was sent successfully so that I can make sure the invoice was sent or take further action.
Communication report with error or success
Report includes the type of error/s (eg. email address invalid, connection not etablished etc.)
Report also includes address, client, time/date
Readable communication report for humans to understand
As a business, I want to be able to deliver invoices in different ways, so that I have flexibility and choice in reaching my clients.
Sending via SMS/Email
Send UBL (in XML) for all clients to process the standard invoice
As a business, I want to know what invoices I’ve sent successfully so that I can keep track of which invoices have been delivered.
When an invoice is sent and confirmed to be successful, the invoice is tagged as ‘sent’
USE CASE
After requesting an invoice and it being created, I click send invoice
I pick the delivery method (Email/SMS/SFTP) and input the details
I click ‘send invoice’ and the system send the invoice to the addressee
If the invoice is sent successfully, I receive a Communication Report with success and details
If the invoice is sent unsuccessfully, I receive a Communication Report with related errors and details, and am taken back to the sending page.
Requirements
Ability to send XML via email, MMS and SFTP (MAYBE)
Ability to receive details of the user to send invoice
Ability to send in multiple formats
Send as file
Send as plain text
Ability to report back on success/failure of function
Ability to provide informative error description
The API needs to have a health check endpoint.