A nodejs API that will process invoice data - (please note this project uses loopback for REST API so please be comfortable using loopback for the REST API)
On startup system will connect to mongodb and load up systemSettings data using systemSettings get method.
Part of systemSettings data includes the processing to monitor for new invoices (invoice folder) files (csv or XML files). System will start monitoring invoice folder for new csv or xml files. Note, that if the processing folder already has csv or xml files in it, system should process those files immediately.
When new file arrives in processing folder, the system should immediately parse the .csv or xml data file and post invoice the data to mongodb using the invoice post method.
Also, using the lookup data, the system should attempt to find the invoice’s vendor in the vendors table and update the invoice with the vendorId and vendorName.
Using the properties data, the system should attempt to find the invoice’s property in the properties table using the propertyLookup and update the invoice with the propertyCode and propertyName. If there is more than 1 property it should attempt to find the propertyCode and propertyName for each propertyLookup.
For each invoice line item, the system should attempt to find the invoice’s glCode and glDescription using the line item description.
Note that lookup values can use wildcards. See sample data where lookup is *MINIBLIND* so for sample invoice line Items for USA Maintenance the description "LEADSAF MINIBLIND ALAB 39X64X1” should match to “*MINIBLIND*"
I'll provide loopback project and sample data to Freelancer awarded the project.