Quick answer
Start with the exact public page and client account involved. Check whether the session is published, in the future, within its booking window and has capacity; then check product eligibility and the original payment before retrying anything.
Before you begin
The exact public URL, client email, service name and approximate time of the failed attempt.
Access to the dated session, client profile and connected Stripe account when payment was involved.
A commitment not to repeat a charge until the original processor state is known.
You'll know it worked when
You can identify the first failing stage: discovery, eligibility, checkout, payment return or confirmation.
The dated session and client record explain why the booking is allowed or blocked.
A payment issue is matched to one processor status without creating a duplicate attempt.
A support request includes the exact path and identifiers but no password or full card information.
Follow along in Junocal
Open the exact product area, then keep this guide beside it.
If a payment looks unsuccessful
Do not immediately ask the client to pay again. First open the original sale or booking in Junocal and check the connected Stripe account for a matching charge. Browser interruptions can hide a successful result from the client even when the processor accepted the payment.
A succeeded charge should not be repeated.
A processing payment may need time to reach a final state.
A failed payment should show a processor reason or a clear next step.
A missing charge can be retried only after you have confirmed it was never created.
Send useful context to support
Open Help & feedback from the page where the problem occurred. Include the client email, class or booking name, approximate time, what you expected and what appeared instead. Do not include passwords or full card details.
Juno automatically attaches the current app path and studio context. The question becomes a support thread in Junocal, and the team can reply to the account email.
Troubleshooting
Start with the symptom that matches what you can see. Check the existing record before repeating a booking, payment or import.
Only one client cannot book while others can
Check these first
Compare that client's membership, pack credits, forms, prior booking and email identity with an eligible client.
Check whether the client is already booked, outside a personal limit or using a product that excludes the service.
Next step: Correct the specific client entitlement or record. Avoid changing the whole class rule when the public session works for everyone else.
Nobody can book the session
Check these first
Confirm publication, future date, capacity, booking window, price and attached policy on the dated session.
Test the same URL signed out to separate a public configuration issue from one client's account state.
Next step: Fix the first shared blocking rule and retest once. If the public and operator states disagree, ask Juno from the session page.
Payment succeeded but no confirmation appeared
Check these first
Search Junocal and Stripe for the exact amount, client and approximate time.
Check whether the charge is succeeded, processing, failed or absent before deciding what to do next.
Next step: Do not ask the client to pay again. Contact support from the original sale or client page so the succeeded charge can be reconciled with the booking.
Answers before you get stuck
What should I check when a client cannot see a class?
Check the exact public link, publication state, date and timezone, booking window, capacity and any membership or intake eligibility rule.
Should a client retry a payment if the confirmation page did not load?
Not until you check the original Junocal sale and Stripe for a matching charge. A browser interruption can occur after a successful payment, and retrying could create a duplicate.
Did this guide solve the problem?
Make the change, or ask with your account attached
Open the relevant Junocal screen now. If your question depends on a particular client, payment or class, Juno can send it to the support inbox with the page and studio context included.