These are some of the terminology used throughout WP BASE:
Admin: A user who has the WordPress “manage_options” capability. More than one admins are allowed in WP BASE; e.g. each of them will get notification email messages.
Location: settings can be used a) to show the address of the service when they are served at more than one place b) to group and categorise services especially when there are numerous services.
Service: The action of doing help or work for the client. WP BASE is basically about booking of services with or without nominated service providers and with or without a predetermined price. Services can be hourly or daily, free or paid, may be requiring down payment or not. Hourly services can be from 10 minutes up to 24 hours. Services longer than 24 hours is also possible with Advanced Features addon.
Provider: The person who is providing the service client is applying and booking for. A provider may give a single or multiple services. Providers are optional, i.e. you can be the sole provider giving the services. If no service providers are defined, WP BASE assumes that there is a single provider giving all of the services. This sole provider can be selected using Business Representative setting. Only members of the website can be assigned as providers.
Business Representative: is a member of the website whose working hour settings will be used as a template for newly created services and providers. If there are no providers defined, Business Representative can be set to be the sole provider.
Dummy Service Provider: is a “fake” service provider for whom emails will be forwarded to another (real) user, selected on Advanced Settings page. You can use dummy option to enrich your service provider alternatives and variate your working schedules. For example, suppose that you are giving Service A only on weekdays, and Service B only on weekends. Then you can define Provider 1 to give Service A working on weekdays, and Provider 2 to give Service B working on weekends. Note that using dummies is not a direct alternative of setting service capacity. Both options have its advantages and different area of application.
Working Hours: Define in which hours and days service providers are available and as a result, in which hours and days services are bookable. Working hours are related to service providers with the exception of “Unassigned Provider” which defines business working hours. Service providers’ working hours can be outside working hours of the business.
Security Deposit: Deposit is, by definition, a sum of money or equivalent given as security for an item acquired for temporary use. For example if you are renting some facilities and these facilities include some items that can be damaged by the client, you can ask a deposit in advance and refund it after client return the facility and you check and see that there was no harm. Since deposits are almost always delivered as manual payments (cash, check, or other valuables) and kept in special accounts, deposit amount is NOT added to the one that client pays via online payment gateways, e.g. Paypal. However, they are added to the total due and affect the balance of the booking.
Down Payment: Down Payment is a percentage or portion of the service price and it is again for security, but in this case, to cover any indirect losses in case client cancels the booking or does not show up at all. When payment is required to confirm a booking, this is the amount that client needs to pay through online payment gateways.
Status: is the latest state of an appointment. Statuses can be automatically (for example a pending appointment automatically becomes “removed” after a preset time) or manually changed, i.e. using admin side Appointments page or front end page having Manage Bookings Addon shortcode. These are statuses used in WP BASE:
- Upcoming (Paid or Confirmed): a) Paid: Paid and confirmed via Paypal or another payment gateway. Please note that “paid” does not mean all paid up; if only down payment was paid, booking will still be regarded as paid. Tip: 1) You can filter and display such bookings (those having negative balance) using “balance” filter pulldown menu in Bookings page. 2) You can use Due Payment Reminder addon to send automatic emails to clients who have negative balance. b) Confirmed: Manually confirmed or due to “Auto Confirm” setting set as Yes, automatically confirmed. A paid appointment is identical to a confirmed one in terms of functionality. At the start time of the appointment, status is automatically changed to Happening Now. Note: A confirmed booking can be automatically turned into paid if client pays via PayPal button in client emails or List of Bookings.
- Pending: Client applied for the appointment, but not yet paid or appointment has not yet manually confirmed. Such an appointment will still reserve booking capacity until automatically removed with “Disable pending appointments after” setting. Therefore a pending appointment is similar to paid and confirmed ones in terms of reserving available time slots, but different in terms of email functions: Client does NOT get a confirmation email and admin gets a notification email at the instant of booking, if set so.
- Reserved by GCal: If you import appointments from Google Calender using Google Calendar API, that is, synchronize your calendar with WP BASE, events in your Google Calendar will be regarded as appointments and they will be shown here. These records cannot be edited here. Use your Google Calendar instead. They will be automatically updated in WP BASE too.
- In Progress: Appointment has been started, not yet finished and thus happening at the moment. This status will be automatically changed to removed at the appointment end time. You cannot change the status of an appointment to In Progress manually.
- Completed: Appointment end time has been passed (finished) when it was in confirmed or paid status. Such appointments do not reserve any booking capacity.
- Removed: Appointment was not paid for or was not confirmed manually in the allowed time. Such appointments do not reserve any booking capacity. Permanent deletion of an appointment record can only be done in this status.
- Please note that future (Confirmed, paid, pending, reserved) and current appointments (In Progress) reserve booking capacity, but past ones (Completed, removed) do not.
- Addons, for example Test Appointments Addon, can add new statuses.
- In Cart: Shopping Cart and Packages addons use “shopping cart” system. When a time slot is selected on the front end, part of its values is saved to the database and their status is marked as “In Cart”. These records reserve available booking capacity. Please note that recorded data, for example user details, may not be complete. Such records are either turned to a confirmed or pending booking after a succesful checkout, or directly deleted if client does not complete the checkout in the allowed time (“Empty shopping cart after” setting), or does not complete at all.
- Temporary: Shopping Cart and Packages addons use “shopping cart” system. When a time slot is selected, part of its values is saved to the database and their status is marked as “In Cart”. During checkout, these booking records are turned to “Temporary” status for a very short time, after which they are marked as confirmed or pending. If, during this transition a server error occurs, they may stay in this status until next update. These records do not reserve available booking capacity. A selection in Bookings page is only created if there are such records. Therefore, in normal situations you would not be seeing this status at all.
- Test: appointments can be added by Test Appointments Addon for test purposes. These bookings reserve available time slots, but their statuses do not change automatically. They can be permanently deleted with a single button click.
- Waiting: Bookings which are in waiting list.
Time slot: Shortest bookable time frame; an interval of time with an exact start and end value which defines the appointment start and end date/time. Unless it is a break time or holiday, each time slot can turn into an appointment, when booked. Some booking plugins use fixed time slots, which are easier for developer, but inflexible for business owner. WP BASE time slots are dynamic: They are based on duration of the service to be booked and working hours of the service and/or service provider. For example, for a service of one hour duration and a service provider working from 9am to 5pm and having a break between 12pm-1pm, time slots will be: 9am, 10am, 11am, 1pm, 2pm, 3pm, 4pm. When work hours of the provider change, time slots are automatically adapted to the change, hence dynamic. Time slots can be presented on the front end in list view, monthly calendar view or weekly calendar view, depending on the shortcode used.
Service Capacity: is the number of clients that can be served at a given time slot. Normally service capacity is determined by the number of service providers. For example if you employ 4 hairdressers for a hairstyling saloon, you have a capacity of 4 for hair cut service, for any time slot that these providers are working. This means any time slot can be booked 4 times by different clients. There are cases, however, that you need to increase or decrease the service capacity. You can do this by entering the required number inside the capacity field of the related service. For example, if you are organizing city tours, and you have a minibus for 10 passengers, you can simply enter 10 as the capacity value. Then 10 different clients can book for the city tour. Or, as an example of decreasing capacity, suppose there are 3 dentists in a dental clinic having 2 examination rooms. Then service capacity has to be set to 2 although there are 3 dentists who can use it. If some resources are limiting your services like in this case, you can set the capacity according to the number of resources.
Location Capacity: is the number of clients that can be served at a given time slot for the selected location. Contrary to service capacity, it cannot be increased. Usage example: A “Hairdresser” location has “Gents’ Haircut” and “Ladies’ Haircut” services. There are 7 hairdressers who can work in both of the services (or some can work only in one of the services, which will not make any difference for this example), but there are only 5 barber chairs. If chairs can be used for both services, then set location capacity as 5 which will limit total bookable slots as 5 at any given time. However if 3 of the chairs are for Gents’ and 2 of them are for Ladies’, set service capacities as 3 and 2, respectively.
Parent & Child Bookings: WP BASE has several Addons which can create multiple bookings at a single checkout. Examples of such Addons are Shopping Cart, WooCommerce, Packages, Recurring Appointments, Extras. When bookings are written to the database, one of them (usually the one which will start last) is automatically selected to lead the others. This one is called parent booking and the rest are called child bookings. Each child booking is called a sibling relative to the other children. Some properties of parent/child bookings:
- The sum of prices and deposits of all bookings are written to the parent. Children will have zero value.
- Payments from payment gateways are written in account of the parent.
- When status of parent is changed manually, status of all children is automatically adjusted to match it. Status change of a child, however, does not affect status of the parent.
- When parent is modified to become a child of another booking (as a new parent), children of the parent automatically adapts to the new parent.
- When a search with booking ID is commenced on admin bookings page, all siblings and parent are also listed.
- When a notification email is sent to admin, clicking included link will take him to the admin bookings page and display parent and all children.
- Reminder emails account for parent/children relation. If they will start close to each other, repeated emails are not sent that could be considered spam otherwise.
- Email message of a parent booking includes info of all bookings, e.g. start times.
- Rebook button is only displayed for parent