Skip to content

Troubleshooting Guide

Diagnose BoardingWP checkout and WooCommerce issues with confidence.

This guide focuses on the practical WooCommerce checks that matter most when the BoardingWP booking flow breaks, behaves unexpectedly, or stops short of payment.

What this covers

WooCommerce pages, guest checkout, gateways, booking handoff, extras, account endpoints, emails, refunds, and hold cleanup.

Best used for

Checkout failures, missing payment methods, broken account areas, wrong currency display, extras not appearing, and order creation problems.

Good first step

Start with one manual payment gateway and a simple test booking before diagnosing Stripe, PayPal, or deeper theme conflicts.

Overview

How BoardingWP uses WooCommerce

BoardingWP does not run its own payment system. It uses WooCommerce for order creation, payment pages, gateways, coupons, refunds, customer account areas, and email templates. BoardingWP creates a WooCommerce order after the booking hold is created, then sends the customer to the WooCommerce order payment page.

Most checkout issues usually come from

  • WooCommerce inactive or incomplete
  • Checkout or account pages misconfigured
  • Guest checkout rules conflicting with the intended flow
  • No usable payment gateway enabled
  • Theme or checkout customisation interfering with WooCommerce pages

Practical troubleshooting rule

Prove the simple flow first. If WooCommerce pages, one manual gateway, and one basic booking work correctly, most deeper issues become much easier to isolate.

Section 1

Check the core WooCommerce setup first

  1. Confirm WooCommerce is installed and active. BoardingWP will not accept bookings without it, so WooCommerce menus and settings should be visible in WordPress admin.
  2. Confirm Cart, Checkout, and My Account pages are assigned. Check WooCommerce > Settings > Advanced and make sure those pages exist and are the ones WooCommerce expects.
  3. Confirm the Checkout page is a real WooCommerce checkout page. If the customer reaches an order-pay URL and sees the wrong content or a generic page, the issue usually points to WooCommerce page setup, theme template overrides, or checkout-page misconfiguration.
  4. Confirm the My Account page is configured properly. BoardingWP uses My Account for customer login, My Bookings, and My Pet Profiles. If those areas do not work, check the assigned page and how WooCommerce account content is rendering.

Section 2

Review account policy and guest checkout behaviour

BoardingWP respects WooCommerce account and checkout policy, so login behaviour usually follows WooCommerce settings rather than a BoardingWP fault.

Check this in WooCommerce

WooCommerce > Settings > Accounts & Privacy

  • Whether guest checkout is allowed
  • Whether account creation during checkout is allowed
  • Whether the customer email already belongs to an existing account

Expected behaviour

If guest checkout is allowed, new customers can continue as guests. If guest checkout is disabled, BoardingWP should require account usage before proceeding.

Common confusion

If a customer enters an email that already belongs to a WordPress or WooCommerce account, being asked to log in is expected behaviour rather than a bug.

Section 3

Validate the payment flow in the right order

  1. Make sure at least one usable payment gateway is enabled. Check WooCommerce > Settings > Payments. If no gateway is enabled, the customer may reach payment with nothing usable to complete checkout.
  2. Test with an offline or manual gateway first. Direct bank transfer, cash on delivery, or another manual method is the safest way to prove booking creation, order creation, payment-page handoff, admin visibility, customer visibility, and cancellation behaviour.
  3. Treat Stripe and PayPal as second-stage validation. If the manual flow works but Stripe or PayPal does not, the fault usually sits in gateway configuration, webhook or callback handling, or gateway-specific WooCommerce setup rather than in BoardingWP core order creation.
BoardingWP depends on normal WooCommerce order and payment status handling such as payment complete, processing, completed, failed, cancelled, and refunded. That is why proving the plain WooCommerce path first is so useful.

Section 4

Check coupons and store currency

Coupon issues

  • Confirm the coupon exists and is enabled
  • Confirm it is not expired
  • Confirm usage limits and restrictions are not blocking it
  • Confirm it is valid for the WooCommerce order context

BoardingWP previews discounts, but WooCommerce remains authoritative when the order is created.

Currency issues

BoardingWP does not store its own active currency. WooCommerce store currency is the source of truth for boarding prices, extras, checkout totals, and refunds.

If prices or symbols look wrong, check WooCommerce > Settings > General > Currency first.

Section 5

Confirm the booking pages and handoff are correct

  1. Make sure the Booking page is selected in BoardingWP settings. This matters because the availability checker relies on that page for the “Start booking” handoff.
  2. Make sure the selected Booking page actually contains the BoardingWP form. The page should contain [boardingwp] or the BoardingWP block. If the page is selected but does not contain the form, the handoff will land on a page that cannot continue the booking.
  3. Keep Checkout and payment pages lightly customised while testing. If the order-pay page looks broken or blank, check for theme overrides and page-builder templates affecting WooCommerce checkout or payment templates.

Section 6

Review extras and order-creation requirements

Booking extras checklist

  • The product must be a simple product
  • It must be enabled as a BoardingWP booking extra
  • It must be published
  • It must have a valid price
  • If stock is managed, stock must be sufficient

Booking extras are intentionally hidden from the normal store purchase flow.

Internal boarding product checks

BoardingWP creates and uses one hidden internal WooCommerce product for boarding charges. If order creation fails in an odd way, confirm products can be created normally in WooCommerce and that no plugin is blocking private or hidden product creation.

If WooCommerce product CRUD is broken, BoardingWP order creation is likely to suffer too.

Section 7

Check emails, refund expectations, cron, and endpoints

Refund behaviour depends on gateway capability

Automatic refunds only work where the WooCommerce gateway supports them. For offline or manual gateways, cancellation without an automatic refund is expected, and staff may need to handle the money movement outside WooCommerce.

Review WooCommerce email settings

Check WooCommerce > Settings > Emails. Confirm BoardingWP email templates are enabled and that recipients, subjects, and headings are correct for confirmed bookings, pending payment notices, cancellation messages, and refund failures.

Make sure WP-Cron runs

BoardingWP uses scheduled cleanup for expiring holds. If old holds linger, confirm WP-Cron is functioning, the site is receiving traffic, or scheduled events are being triggered another way.

Re-save permalinks once if account endpoints behave oddly

If My Bookings, My Pet Profiles, or My Account endpoint links break, go to Settings > Permalinks and click Save Changes. That often clears endpoint routing issues cleanly.

Section 8

Fast known-good setup for testing

  1. Activate WooCommerce.
  2. Confirm Cart, Checkout, and My Account pages are assigned.
  3. Enable one offline or manual payment gateway.
  4. Set the Booking page in BoardingWP settings.
  5. Put [boardingwp] on that Booking page.
  6. Optionally add [boardingwp_availability] to a separate availability page.
  7. Create one pet type.
  8. Make one test booking.
  9. Complete payment through the manual gateway flow.
  10. Confirm the booking appears in admin and customer account areas.

Section 9

Symptoms and likely causes

Continue to payment fails

WooCommerce inactive, Checkout page misconfigured, or order-pay routing being disrupted by theme or checkout setup.

Customer is forced to log in

Guest checkout disabled, or the email entered already belongs to an existing account.

My Bookings or My Pet Profiles links break

My Account page misconfigured, or account endpoints and permalinks need to be refreshed.

No payment options visible

No enabled gateway, or the enabled gateway is restricted or misconfigured.

Extras do not show

The product is not configured as a booking extra, is the wrong type, lacks price, is unpublished, or has stock restrictions.

Refund error during cancellation

The chosen gateway does not support automatic refunds, which is common for offline or manual gateways.

Wrong currency shown

WooCommerce store currency is wrong. BoardingWP uses WooCommerce currency as the source of truth for prices, extras, checkout totals, and refunds.

Still stuck?

Work through the simple WooCommerce checks before chasing complex fixes.

Most BookingWP checkout issues come down to pages, account policy, gateways, or checkout customisation. If your known-good setup works, you have a reliable baseline to compare everything else against.