=== Booking System - Booking for Appointments and Booking Calendar ===
Contributors: wpbookpoint
Donate link: https://wpbookpoint.com/
Tags: booking system, appointment booking, booking calendar, scheduling, online booking
Requires at least: 6.0
Tested up to: 6.9
Stable tag: 2.6.2
Requires PHP: 7.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Booking system plugin for WordPress with appointment booking, booking calendar, scheduling, online reservations, and service management.

== Description ==

Booking System - Booking for Appointments and Booking Calendar is a modern appointment booking plugin and scheduling system for WordPress.

It helps businesses accept online bookings, manage services, control schedules and availability, organize customers, handle appointments and reservations, and configure payments through a clean booking calendar workflow.

This plugin is fully functional without any license key and includes:

* Services and categories management
* Locations management
* Service extras
* Promo codes
* Holidays and time-off management
* Booking widget, booking form, and shortcode support
* Booking calendar, schedule, and availability configuration
* Customers, appointments, and bookings management
* Online payments configuration for Cash, WooCommerce, Stripe, and PayPal
* Fast performance
* Mobile responsive booking interface
* No locked or trial-only built-in features in this WordPress.org package

This WordPress.org package does not gate built-in functionality behind licenses, trials, quotas, or time limits. Any paid add-on functionality is distributed separately and is not included in this package.

== Source Code / Build ==

Generated asset files shipped in this plugin are built from human-readable source files included in the plugin package.

Source directories:

* `src/admin/` - admin React source
* `src/front/` - front-end React source
* `blocks/src/book-form/` - Gutenberg block source

Generated files:

* `build/admin.js`
* `build/index.jsx.css`
* `build/index.jsx-rtl.css`
* `public/build/front.js`
* `public/build/index.jsx.css`
* `public/build/index.jsx-rtl.css`
* `public/front.js`
* `public/index.jsx.css`
* `public/index.jsx-rtl.css`
* `blocks/build/book-form/index.js`

The files in `public/` listed above include legacy compatibility copies generated from the same `src/front/` sources.

Generated files should not be edited manually. Edit the source files in `src/` or `blocks/src/` and rebuild.

Build commands:

1. `npm install`
2. `npm run build:admin`
3. `npm run build:front`
4. `npm run build:book-form`

Build tooling is declared in `package.json` and uses `@wordpress/scripts`.

== Installation ==

1. Upload the plugin folder to the `/wp-content/plugins/` directory, or install it through the WordPress Plugins screen.
2. Activate the plugin through the Plugins menu in WordPress.
3. Configure services, schedules, locations, and availability in the BookPoint admin menu.
4. Add the booking widget using the included block or shortcode.

== Frequently Asked Questions ==

= Does the free version require a license? =

No. The plugin works fully without any license key.

= Is the plugin mobile friendly? =

Yes. The booking interface is fully responsive and works on desktop, tablet, and mobile devices.

= Does this plugin support payments? =

Yes. The plugin includes payment configuration for Cash, WooCommerce, Stripe, and PayPal.

= Is this a booking system plugin for WordPress? =

Yes. BookPoint is a booking system plugin for WordPress designed for appointments, scheduling, and booking calendar management.

= Can I use this as an appointment booking plugin? =

Yes. The plugin is built for appointment booking and service scheduling.

= Does it include a booking calendar? =

Yes. The plugin includes booking calendar, schedule, and availability configuration.

= Can customers choose available dates and time slots? =

Yes. The plugin supports schedules, availability, and booking time selection.

= Can I manage services and categories? =

Yes. You can manage services and service categories in the plugin.

= Does the plugin support multiple locations? =

Yes. Locations management is included.

= Can I add extras to a service? =

Yes. Service extras are supported.

= Can I create promo codes? =

Yes. Promo codes are included.

= Can I block holidays and time off? =

Yes. The plugin includes holidays and time-off management.

= Can I show the booking form with a block? =

Yes. The plugin includes a booking widget with block support.

= Does it support shortcode? =

Yes. The booking form can also be added using shortcode support.

= Can I manage customers and bookings in the admin area? =

Yes. The plugin includes customers and bookings management.

= Is it suitable for service businesses? =

Yes. It is suitable for many businesses that need appointment booking, booking calendar, and scheduling management.

= Does it support online booking? =

Yes. Customers can submit bookings online through your WordPress website.

= Can I use WooCommerce with this plugin? =

Yes. WooCommerce payment configuration is included.

= Does it support Stripe and PayPal? =

Yes. Stripe and PayPal are both supported payment options.

= Are built-in features locked behind trials or quotas? =

No. This WordPress.org package does not gate built-in functionality behind licenses, trials, quotas, or time limits.

== Screenshots ==

1. Appointment booking wizard interface
2. Services and categories management screen
3. Booking calendar and time slot selection
4. Customer bookings management dashboard

== External services ==

Some optional features in this plugin connect to external services for payments, license-related operations, and optional webhook delivery.

Stripe

What the service is: Stripe is a payment processing platform.

What it is used for: The plugin uses Stripe to create payment sessions, create payment intents, and confirm payment-related transactions when Stripe payments are enabled.

Service domain(s): `api.stripe.com` for Stripe API requests and `js.stripe.com` for the Stripe-hosted checkout JavaScript loaded in the browser during Stripe checkout.

What data is sent: This may include booking reference data, order amount, currency, return or cancel URLs, and payment metadata required to process the transaction.

When data is sent: Data is sent only when a customer starts a Stripe payment flow, when the Stripe checkout script is loaded in the browser for that payment flow, or when the site requests payment confirmation or related payment processing actions.

Terms of service URL: https://stripe.com/legal
Privacy policy URL: https://stripe.com/privacy

PayPal

What the service is: PayPal is a payment processing platform.

What it is used for: The plugin uses PayPal to obtain API access tokens, create checkout orders, and capture approved payments when PayPal payments are enabled.

Service domain(s): `api-m.paypal.com` for live transactions and `api-m.sandbox.paypal.com` for sandbox transactions.

What data is sent: This may include booking reference data, order amount, currency, return or cancel URLs, and PayPal order data required to process the payment.

When data is sent: Data is sent only when a customer starts a PayPal checkout flow and when an approved PayPal order is captured or verified.

Terms of service URL: https://www.paypal.com/webapps/mpp/ua/legalhub-full
Privacy policy URL: https://www.paypal.com/webapps/mpp/ua/privacy-full

BookPoint licensing and activation service

What the service is: This is a vendor-operated licensing service provided through wpbookpoint.com.

What it is used for: The plugin uses this service for license-related operations such as validating, activating, deactivating, and checking the status of a license when those features are used.

Service domain(s): `wpbookpoint.com`

What data is sent: This may include the license key, site URL or domain, plugin identifier, plugin version, instance or activation identifier, and related data required to process the licensing request.

When data is sent: Data is sent only when an administrator validates, activates, deactivates, or checks the status of a license, or when a license status check is triggered by the plugin.

Terms of service URL: https://wpbookpoint.com/terms-and-conditions/
Privacy policy URL: https://wpbookpoint.com/privacy-policy/

Optional administrator-configured webhook destination

What the service is: This is an optional external webhook endpoint configured by the site administrator. The destination is not pre-defined by the plugin.

What it is used for: The plugin can send booking event notifications to an external automation, CRM, or integration endpoint chosen by the site administrator.

Service domain(s): Any external domain explicitly configured by the site administrator for webhook delivery.

What data is sent: This may include the event name, site URL, timestamp, and event payload such as booking ID, status, service ID, customer ID, agent ID, and related booking fields.

When data is sent: Data is sent only if the webhook feature is enabled and the site administrator has configured an external webhook URL for the relevant event.

Terms of service URL: The terms of service of the external provider chosen by the site administrator.
Privacy policy URL: The privacy policy of the external provider chosen by the site administrator.

== Changelog ==

= 2.6.2 =
* Split the admin app into lazy-loaded screen chunks to improve initial load performance.
* Centralized admin success and error toasts so save feedback is more consistent across screens.
* Polished save feedback in key catalog, settings, and promo-code flows.

= 2.5.1 =
* Improved plugin title and description for better visibility in booking system, appointment booking, and booking calendar searches.
* Enhanced readme content for clearer scheduling, online booking, and service booking discovery.
* Expanded FAQ content to better describe existing booking, calendar, and payment features.

= 1.0.4 =
* Added a safe BookPoint Pro information screen and feature registry for a separate paid add-on.
* Fixed corrupted encoded symbols in admin screens and the booking block.
* Fixed save redirects that could trigger the browser unsaved-changes warning after a successful save.

= 1.0.3 =
* Maintenance release.

= 1.0.1 =
* Initial WordPress.org release.

== Upgrade Notice ==

= 2.6.2 =
Improved admin performance with lazy-loaded screens and cleaner save feedback across core workflows.

= 2.5.1 =
Improved booking system, appointment booking, and booking calendar visibility with updated readme content.

= 1.0.4 =
Maintenance update with text cleanup, safer save confirmations, and a separate Pro information foundation.

= 1.0.1 =
Initial public release of Booking System - Booking for Appointments and Booking Calendar with core booking features.
