Cause
The quote passed its publishedexpiresAt time before appointment creation. The appointment was not created even if the time is still available.
Fix
List openings again and ask the customer to confirm the current off-hours offer before retrying with its newquoteId.