Request #PD-20931 · received Wed 28 Oct, 9:12am · Expires in 5 hours
New
Request details2
Service
Street dance birthday party, Standard (Party Star, GBP 180 example)
Event type
Children's birthday party
Date and time
Saturday 14 November, 2:00pm to 3:30pm (flexible by 30 minutes)
Location
Headingley, LS6 (3 miles from you). Full address shared after payment.
Venue type
Home, indoor living room and garden
Group size and ages
12 children, aged 6 to 8
Add-ons requested
Filmed routine (GBP 40 example)
Budget
Up to GBP 220
Notes from customer
"It's my daughter Lily's 7th birthday. She loves Taylor Swift and anything with a bit of sparkle. Two children are a bit shy and one uses a wheelchair, so something inclusive would be great."
Customer
Sophie T. · new customer · email verified · 0 past bookings
Availability check: you are free on Saturday 14 November. No conflict found.3
Build your offer4
Accept as listedCustom offer
Standard - Party Star
14/11/2026
14:00
90 minutes
180.00
0.00
Filmed routine - GBP 40.00
Extra 30 minutes - GBP 50.00
Dance props for children - GBP 3.00 per child (x12 = GBP 36.00)
Hi Sophie, what a lovely idea for Lily's birthday! I will build a sparkly pop routine and make sure every child can join in, including seated moves so everyone feels part of it. I have attached my Standard party package with the filmed routine added.
48 hours
Options: 24 hours, 48 hours, 3 days, 7 days. Offer expires sooner if the date is within the validity window.
Bring speaker and sparkly props.
Customer will see5
Standard package (Party Star)
GBP 180.00
Filmed routine
GBP 40.00
Offer total
GBP 220.00
Platform fee for customer (example)
GBP 8.80
Popdance commission, Silver 10% (example, taken from your side)
- GBP 22.00
You receive
GBP 198.00
All figures are examples. Payment is held by Popdance until the event is complete, then released after 48 hours.
Hi, is the filmed routine possible at home? Thanks, Sophie
Yes, no problem at all. I bring my own tripod.
Thread is also in Messages and attached to the booking.
Notes
Page header. Request id, timestamp and countdown to expiry (48 hours from receipt). Status values: New, Offer sent, Accepted, Declined, Expired. After expiry the whole form is read-only with "This request has expired."
Request details. Read-only snapshot of the customer's submission from 20-booking-request.html. Fields shown: service and package, event type, date and time with flexibility, general location (district and distance), venue type, group size and ages, add-ons, budget, notes, customer trust signals. Phone, email and exact address are hidden until payment.
Availability check. Compares the date and travel time with 47-availability-calendar.html rules. Warnings: conflict with a booking, outside notice window, outside travel radius, over daily cap. The teacher can still send an offer and override, with a warning logged.
Offer builder. Two modes: Accept as listed (prefilled from the package price) or Custom offer (price and inclusions editable). Required: package or custom title, date, start time, duration, base price (GBP 10 to 5,000 example limits), message (min 30 characters), validity. Add-ons come from 46-services-editor.html and total updates live. Validation: "Enter a price between GBP 10 and GBP 5,000", "Choose a date in the future", "Write a short message for the customer."
Price summary. Mirrors what the customer sees on 21-booking-offer-review.html and what the teacher receives after commission (rate comes from the current plan, see 41-membership-pricing.html). Labelled example everywhere. Sending creates an offer with status Pending and notifies the customer by email and in-app.
Quick replies. Teacher-defined templates plus defaults. Clicking inserts text at the cursor. Personalisation tokens such as {first_name} are filled in. Limit 10 templates.
Ask a question. Sends a message into the booking thread without an offer. Contact details and off-platform payment phrases are detected and blocked with a safety reminder: "For your protection, keep payments and contact details on Popdance."
Decline. Reason required from a fixed list, optional message. Declined requests show to the customer as "Not available" without the private reason when it is "Budget too low". Optional suggestion of similar teachers. Declining within 2 hours with reason "not a fit" does not hurt response rate. Confirmation dialog: "Decline this request? This cannot be undone."
Analytics.offer_sent (mode, price bucket, minutes to reply), request_declined (reason), quick_reply_used.
Mobile
Single column in this order: header and timer, request details, quick actions bar (Offer, Ask, Decline), offer builder, price summary. The timer sticks to the top. The Send offer button is a sticky bottom bar. Decline opens as a bottom sheet.
States
Loading: skeleton for details. Request withdrawn by customer: banner "Sophie withdrew this request" and form disabled. Offer already sent: form replaced by the sent offer with "Edit or withdraw offer" and customer status (Viewed, Not yet viewed). Date taken: warning and Send disabled until a new date is chosen. Send failure: inline error "We could not send your offer. Your draft has been saved." Customer accepted: redirects to booking in 50-teacher-bookings.html with a confirmation toast. Offer expiry: customer sees "Offer expired", teacher can resend.