We revamped the schema to accommodate multiple organizations and Xero oauth 2.0. We allowed organisation admin to add as many roles as they want alongside the flexibility of CRUD access in their own way. With this, we covered almost all use cases which any financial team could have.
In order to maintain a unique serial number, we allowed organisations to create their own pattern on EnjoyJobs (Prefix/suffix) so that it doesn’t get duplicated or lost on Xero accounting.
To handle multiple reports, we saved all data in the DB tables rather than just calculating it on the frontend (like GST 10%). This helped us to formulate the combination of reports the way we wanted to.
Enjoyjobs is a smart approach where we validate the data before it gets into Xero. This helps avoiding rework as there would be a point by point rundown of all performed activities.