Shopify Checkout
Automatically add booked services to the client's shopping cart when booking online.
Setup
Activate the "Enable Online Payment via Shopping Cart" setting ("My Business" tab > Booking Rules).
In the callback URL field, enter your Shopify website URL.
For each service you want to enable payment via shopping cart for, set their online payment method to "Shopping Cart" : go to the "Services" tab > {select a service} > Service Details. Under "Online payment", select "Shopping Cart" and set a fixed amount to be paid.
For every service that should add a product to the cart, enter the correct value in the "Shopping cart Product ID" field, ensuring the value aligns with the "Product Identifier" option set in Settings.
Here is how to retrieve the product identifier for each available option:
Product Handle: in Shopify, go to the "Products" tab > {select a product} > scroll down to "Search engine listing", then copy the ending of your URL, as shown below:
*Note: if you edit a product's URL handle in Shopify, you will need to update it in Booxi
Variant ID: in Shopify, go to the "Products" tab > {select a product} > Variants > {select a variant} > copy the variant URL, which can be found after the "variants" value in the URL. For example: "https://admin.shopify.com/store/booxi-store/products/8786182712292/variants/47036829641260"
SKU: in Shopify, go to the "Products" tab > {select a product} > Inventory > copy the product's SKU.
Barcode: in Shopify, go to the "Products" tab > {select a product} > Inventory > copy the product's barcode.
Make sure your products' status is set to "Active"; if not, services clients book will not be added to their cart.
How payment via shopping cart works
Client clicks a CTA; the booking widget opens.
The client books an appointment or a group event.
The client is redirected to the cart with the matching product added.
The client completes checkout.
At the moment of checkout, Shopify checks the status of the booking; if the booking is cancelled in Booxi, the Shopify order will be created, but then immediately cancelled, and the client will be immediately refunded.
If the payment is successful, the client will receive a Shopify receipt.
By default, payments completed in Shopify do not automatically update their booking payment status in Booxi. To enable this, you need a partner API key.
About the "Auto-cancel unpaid booking" setting
Enabling the "Auto-cancel unpaid booking" setting ("My Business" tab > Booking Rules) will cause bookings that are not paid within 15 minutes to be automatically cancelled in Booxi. However, in this case the booking will still be present in the client's shopping cart, which may lead to confusion when the client attempts to checkout the item and get refunded immediately (see above). To avoid this scenario, it is recommended to enable the below setting (Theme editor > App embeds):
Enabling this setting will cause items to automatically be removed from the client's shopping cart if not paid within the specified delay (*note: applies upon page refresh); this occurs independently of the booking's status.
Notes
When a booking is cancelled in Booxi, the corresponding Shopify item will still exist in the client's shopping cart. The client is able to check out the item, but when doing so, their Shopify order will be immediately cancelled, and they will be refunded. If you wish to avoid the automatic refund, consider enabling the "Auto-cancel unpaid booking setting" described above, which will ensure such bookings will be removed from the client's cart.
Any booking changes done in Booxi (i.e. edits, cancellation) will not affect the client's item in Shopify.
Any client actions in Shopify will not affect the booking in Booxi. For example, if a client abandons their cart or removes (i.e. cancels) an item from their cart, the booking won't be affected.
Any cancellations of paid bookings (done through Booxi, by the client or staff) will not provoke a refund in Shopify. Refunds must be manually done in Shopify.
Automatically add new clients to Shopify
Requires a Partner API key.
New clients (obtained from Booxi bookings) will automatically be added to your Shopify client list; Shopify will perform a match by client email address.
*Note: new clients that are generated from appointments you create manually in Booxi will populate into your Shopify customer list. However, appointments created this way will not be displayed as orders in their profile, since the item (i.e. service) was not checked out.
Other
*IMPORTANT: Ensure that all products (i.e. services) offered through the booking widget can only be added via the widget. Remove any other methods that allow clients to add these items to their cart outside of the widget. This is crucial because items added outside the widget are not recognized as bookings in Booxi, and thus can lead to significant confusion if added this way.
If a client claims to have purchased multiple items (i.e. bookings) but received a confirmation for only one, it's likely because they increased the item quantity in their cart, assuming this would create multiple bookings. However, increasing the quantity in the cart does not create additional bookings in Booxi. In such cases, refund the client for the unprocessed bookings and kindly ask them to complete the booking process again.
*Note: To purchase multiple bookings, clients must complete the booking process separately for each one.
We recommend the following:
1) Regularly review your Shopify order list. If you notice an order containing multiple instances of an item in the same line, contact the client to let them know about this, and refund them. See the picture below: in green is the correct way; in red is the incorrect way.
2) Include a note/banner in your cart (ideally) or website to advise clients not to increase the item quantity in their cart.
You can view orders that were automatically added to Shopify from Booxi by navigating to the "Orders" tab in Shopify.
Items added from Booxi bookings will include the associated Booxi Booking ID, Payment ID, and its associated date/time.



