Fullscreen is better
Key Roles
The center of this entire project, the purpose is to automate the business flow for Hair On the Move.
Agencies help HOTM acquiring customers, normaly corporate customers. They take a percentage of respective corporate jobs, normaly 20% percent out of a single invoice.
A client can be an individual client, or a corporate one. An individual client is a natural person who seeks for Hair services, while corporate client may have multiple person involved in a single transaction, where each transaction is reflected on a single invoice.
Client may book a service online, and s/he may be advised to change their service on the spot, so their booking information might be changed after they consulted with HOTM.
Artist are the professionals that deliver actual hair services. They work under the umbrella of HOTM, who split the payment with each individual artist. HOTM pays artist regularly, based on invoice items and job details.
Activities
Client (individual)
- Make Booking online
- Pay Deopsit online
- Pay Balance online/offline (to HOTM)
- Consult HOTM on the spot
- Receive Invoice
Client (Corporate)
- Make Booking required ??
- Pay Deopsit to Agency or HOTM ??
- Pay Balance online/offline ??
- Receive HOTM service onsite
- Receive Invoice (from HOTM / Agency?)
Agency
- Make Booking online ??
- Pay Deopsit online ??
- Pay Balance online/offline ??
- Receive Invoice (from HOTM)
- Receive Commisison from HOTM
Artist
- Deliver Hair Service to client
- Provide consultancy to client
- change client booking request
- update booking info
- Receive Payment from HOTM
- Register Bank Details to HOTM
- View job history
- not receiving any payment from client?
HOTM
- Accept booking online
- generate corresponding invoice
- Receiving deposit online (stripe)
- Sync payment in Xero
- Receive Remainning payment offline/online
- Sync payment in Xero
- Change booking items (in booking system)
- change Xero Invoice items
- Generate payment advice for Artist
- Convert service to hourly commissions
- Job Income 20% for artist
- generate bills in Xero (not payslip)
- Generate payment advice for Agency
- Generate bills in Xero
- $50/hr corproate rate.
- Provide a method to Discount
- discount item in Xero Invoice
- promotion CODE for booking system
- Provide summary in booking system
- for each tracking catetory in Xero
- for each artist
- for each agency
HOTM (cont'd)
- Collecting deopsit
- Send deposit link
- Refund
- Comply with stipe refund policy and dates
- Change items of invoices
- Sync item to Xero
- Service Category Type
- Cagetory reflected to Xero
Use-Cases (Scenarios)

Individual may make booking online, and become a registered user of HOTM. The simplest booking is to select items and make payment in full amount immediately. A normal scenario is to may a deposit, and then pay the remaining amount after receiving the service.
- Is one able to change his/her booking after making payment online, before receiving service?
- Can user cancel booking after making payment?

When client making changes based on consultancy provided by an artist. Artist may change the booking items and update invoice accordingly.
Who receives the payment? HOTM, or the Artist? who is authorized to record payment for this particular client?

Is a client allowed to make payment online later ?
If client choose pay online later, then an Xero Invoice will be sent to him/her, with reminders of payment if overdue. In this case we need to set an over due date. 2 weeks?

If a user is not allowed to change booking, then user may choose to cancel booking and make another booking immediately. Cancel booking means user has to be refund, and Xero will have an 'void' invoice, which results in discontinued invoice number.
A manual review may be added, which can reject the booking. It will add more complexity to the booking process.
After successful cancelling the order, a refund process has to be started.

Refund automatically requires payment gateway to act accordingly. Different payment gateway has different refund policies such as date or amount.
Sometimes, refund requires manual process, before it can proceed, especially when it requires authorization and money transfers conducted manually.
Another refund is to give the client 'credit note?' to use later with HOTM, which only applicable if the users choose to do business with HOTM again.

Change booking order may involve multiple artist in some cases, an Authorization might be needed.

HOTM invoice can have as many options as possible, but requires to sync with Xero
XERO invoice can have automatic payment status, and payment reminders if a client has balance unpaid.

Agency receiving commissions will be appearing in XERO as 'bills' to the Agency, this requires Agency details to be recorded in XERO in advance. Unless agency has to register through HOTM booking system.
In addition, the equation for calculate commission will be required beforehand, at least reconized by the booking system.

Frequency of making payment advice is per Artist, if it is triggered manually by HOTM.
Change of payment will be reflected by Edited Bills from Xero, the booking system does not have a user interface to change it.
Payment has to be recorded in Booking system, so as to avoid multiple payment advise. If HOTM wants fully automated payment handling, then a GUI for editing payment advise has to be developed, which itself is as complex as building a customized payslip system. Please refer to the payment advice section below.
Record cash payment is required when client make payment on the spot. Authorizaion is required to 'mark payment' in the booking system. Unless only one person receives the payment on behalf of all Artists.
A scheme on how to authorize is not available at the moment.

If a client is allowed to change his/her booking after making deposit, a balance to topup may be required.
Does HOTM has offline booking and receiving deposit for clients who visited HOTM in the shop but not wanting to get the service immediately?
Changing booking items may result in some bills (to some artists) become void, if a particular artist's job has been completly removed. System will have no way to recycle such items, if later on, the same job is added back, a new bill item will have to be created.

Payment advice for each artist is viewable by HOTM by default, unless HOTM approve an artist to view it. The payment advice need a template or at least information requried to be displayed.
A minimum payment advice is done by sending emails to HOTM, in that case, HOTM will have no way to change anything, and system will not be able to track it. XERO bills will be created by booking system, but finalized by HOTM manually, if there are changes.
Commission for each agency needs to be configured, and same agency may receive different commission rate for particular job. If that's the case, HOTM needs to have a capability to edit each job's commission individually.
Otherwise, a fixed rate can be applied to ALL transactions, but please note changing this fixed rate will affect 'historical' transaction as well.
Discount can be implemented by giving a special code to a particular customer, or a bunch of clients during a marketing campaign. A discount scheme needs to be in place before discount can be implemented. Otherwise, HOTM has to manually apply discount to each online transaction.
A discount scheme means how discount is calculated, it's like creating an equation in Excel, variables and parameters needs to be defined.
A summary for HOTM job activities is a report on what happened during a specific period. Report content needs to be specified.
A list of jobs that an artist has been performed can be produced, other than that if there are request on sorting, grouping, producing graph, it needs to be clarified.

Adding Artist has to confirm with Xero standard, as Artist needs to be inserted into Bills. Xero contact has no way to put in Banking information, and it has to be done in the booking system. A registration process will be requried.
HOTM may need to block some Clients, or artists, or temporarily disable their activity when dispute happened, and subsequent reinstate operation maybe required. Please confirm.
- Cannot use individual booking process, as it generate invoices for each client
- Need to consolidate into one category, bill, or apply a single discount case by case
- Agency commission may vary.
- Total number of user control
- Is it necesary for each staff in the corporate to register?
HOTM can modify any booking information directly through Xero, which means manually generate invoices to clients and bills to artists. This part is not covered by the booking system, and will not be available in the summary/payment advice.