Troubleshooting
Common order issues and how to resolve them
Troubleshooting
Common issues with booking orders and their resolutions.
Order Stuck in ACCEPTED
Symptom: Order remains in ACCEPTED status for extended period.
Causes:
- User abandoned payment flow
- Payment page timed out
- Payment provider issue
- Network interruption
Resolution:
- Check if payment was actually completed with provider
- If paid but not reflected: Manually update status to PAID
- If not paid: Wait for automatic cleanup (24h) or manually close
- Contact user if payment issue on their side
Prevention:
- Users should complete payment promptly
- Avoid network-intensive activities during payment
Order PAID but No Reservations
Symptom: Order shows PAID status but no reservations in list.
Causes:
- Reservation creation failed silently
- System error during processing
- External supplier unavailable
Resolution:
- Check Events tab for ORDER_ENCOUNTERED_ERROR
- Review error message for root cause
- If supplier issue: Wait and retry or contact supplier
- If data issue: Correct and retry via API
- If unrecoverable: Process refund
Investigation Steps:
1. Go to Order Details
2. Navigate to Events tab
3. Look for ORDER_PAYMENT_VERIFIED_TO_BE_PAID
4. Check if ORDER_RESERVATION_CREATED follows
5. If missing, find ORDER_ENCOUNTERED_ERROROrder FAILED with Error Event
Symptom: Order shows FAILED status with error in event log.
Causes:
- Supplier rejected booking
- Ticket issuance failed
- Timeout during processing
- Data validation error
Resolution:
- Read the error event data carefully
- Identify the specific failure point
- Determine if recoverable:
- Recoverable: Retry manually or via supplier portal
- Not recoverable: Process refund
Common Error Messages:
| Message | Meaning | Action |
|---|---|---|
| "Creating reservation failed" | Supplier rejected booking | Check availability, retry |
| "Issuing ticket failed" | Ticket couldn't be issued | Issue via supplier portal |
| "Unknown error" | Unexpected failure | Check logs, escalate |
Order FINALIZED but Reservation IN_PROGRESS
Symptom: Order shows FINALIZED but reservation status is IN_PROGRESS.
Causes:
- Auto-ticketing still pending
- Status not updated after manual resolution
- Database inconsistency
Resolution:
- Check if external reservation is confirmed
- If confirmed: Update reservation status to OK
- If pending: Wait for background job (retries every 5 min)
- If failed: Investigate and resolve
Reservation Missing External ID
Symptom: Reservation exists but reservationId is null.
Causes:
- External booking failed
- ID not saved due to error
- Partial processing
Resolution:
- Check external system for booking under buyer's ID
- If found: Update reservation with correct ID
- If not found: Reservation creation failed, investigate error events
Refund Not Processing
Symptom: Refund initiated but not completing.
Causes:
- Payment provider issue
- Insufficient information
- Transaction already refunded
- Provider-specific limitations
Resolution:
- Check payment provider portal for refund status
- Verify transaction is eligible for refund
- Check for error responses from provider
- Retry if transient issue
- Contact provider support if persistent
Provider-Specific Notes:
| Provider | Refund Notes |
|---|---|
| SUPER_QI_APP | Usually completes within 24h |
| CHECKOUT_COM | 5-10 business days to card |
| BNPL | Adjusts future installments |
Corporate Order Blocked
Symptom: Corporate user cannot complete booking, sees error.
Policy Block:
"Booking blocked by company policy: [details]"Resolution:
- Review the violation message
- User can: Modify booking to comply with policy
- Admin can: Adjust policy rules if appropriate
- Alternative: Submit as booking request for approval
Budget Block:
"Budget exceeded and booking is blocked"Resolution:
- Check user's remaining budget
- User can: Wait for next budget period or use personal payment
- Admin can: Increase budget allocation
- Alternative: Submit as booking request for approval
Multiple Reservations, Some Failed
Symptom: Order with multiple services, some succeeded, some failed.
Example: Flight confirmed, hotel failed.
Resolution:
- Assess which reservations succeeded
- For successful reservations:
- Can remain active, or
- User may want to cancel (coordinate with them)
- For failed reservations:
- Investigate error
- Retry if possible
- Partial refund if not recoverable
- Update order status appropriately
Event Data Not Showing
Symptom: Can't view event data in dashboard.
Causes:
- Permission issue
- Large event data
- Browser issue
Resolution:
- Check you have events:read permission
- Try refreshing the page
- Clear browser cache
- Use API directly:
GET /admin/events?entityId={orderId}
Order Appears in Wrong Status
Symptom: Order status doesn't match actual state.
Causes:
- Background job hasn't run
- Manual intervention didn't complete
- System error
Resolution:
- Verify actual state:
- Check reservations externally
- Check payment provider
- Update status manually if needed
- Document the correction
Automatic Cleanup Not Working
Symptom: Old ACCEPTED orders not being cleaned up.
Causes:
- Cron job not running
- Lock held by another process
- System resource issue
Resolution:
- Check if cron job is enabled
- Review system logs for job execution
- Manual cleanup: Update status to NOT_PAID
- Escalate to technical team if systematic issue
Debugging Checklist
When investigating any order issue:
- Note the order ID
- Check current order status
- Review all events in chronological order
- Identify the last successful step
- Find the first error event
- Check external systems (payment provider, IRIX)
- Document findings
- Determine appropriate resolution
- Execute resolution
- Verify order is in correct final state
- Update any tracking tickets
Escalation Paths
| Issue Type | Escalate To |
|---|---|
| Payment provider issue | Payment team |
| Supplier booking issue | Operations team |
| System error | Technical support |
| Policy/budget questions | Admin/Finance team |
| Data inconsistency | Database admin |
Common Questions
Can I recover a NOT_PAID order?
No. NOT_PAID is a terminal status. The user must create a new order.
Can I undo a refund?
Generally no. Refunds are processed externally. For corrections, contact the payment provider.
Why is my order still IN_PROGRESS?
The system retries ticket verification up to 12 times at 5-minute intervals. If still pending after an hour, investigate.
How long before ACCEPTED orders are cleaned up?
24 hours. The cleanup runs daily at 4 AM.
Can I change a FINALIZED order?
You can mark it as REFUNDED, but you cannot change it back to a processing status.