Contractor — Contact Support Live
ic-B/D/F • Ticket type grid, subject, description, submit
9:41
Contact Support
Sending as
Cole Contracting LLC
marcus@coleco.com
What do you need help with?
Payment Issue
Technical Problem
Account Help
Job Dispute
Other
Please provide as much detail as possible...
0/2000 characters
We typically respond within 24 hours during business days.

Contractor — My Tickets Live
ic-B/D/F • Status filter tabs, ticket cards with badge, FAB
9:41
My Tickets
All
Open
In Progress
Resolved
#TK-1042Open
Payment not received for Kitchen Remodel
Escrow was released 3 days ago but payout hasn't arrived...
#TK-1038In Progress
How to update profile photo
I need to change my business profile photo but can't find...
#TK-1031Resolved
Calendar sync not working
Google Calendar integration stopped syncing appointments...
+

Contractor — Ticket Detail Live
ic-B • Header with status, message thread, reply input, close ticket
9:41
#TK-1042
OpenMar 26, 2026
Payment not received
paymentClose Ticket
MC
Marcus Cole
Kitchen Remodel escrow was released 3 days ago but I haven't received the payout. Dashboard shows “Released.” Stripe Connect is verified.
10:30 AM
ST
Support Team
I can see the payout was initiated. Stripe shows 2-3 business day processing. Should arrive by tomorrow. I'll monitor this for you.
11:15 AM
MC
Marcus Cole
Thank you for checking! I'll wait until tomorrow.
11:20 AM
Contractor — Closed Ticket Live
Closed state with reopen option
9:41
#TK-1031
ClosedMar 22, 2026
Calendar sync not working
technical
MC
Marcus Cole
My Google Calendar stopped syncing with the app.
9:00 AM
ST
Support Team
We've reauthorized the connection. Please try disconnecting and reconnecting in Settings > Integrations.
10:45 AM
This ticket is closed. Send a message to reopen it.

Poster — Contact Support Live
ic-A/C/E/I • deepBlue theme, poster ticket types
9:41
Contact Support
Sending as
Sarah Johnson
sarah@email.com
What do you need help with?
Payment Issue
Contractor Issue
Job Problem
Account Help
Other
Please provide as much detail as possible...
0/2000 characters
We typically respond within 24 hours during business days.

Poster — My Tickets Live
ic-A/C • deepBlue tabs, poster ticket cards
9:41
My Tickets
All
Open
In Progress
Resolved
#TK-2015Open
Contractor didn't show up for estimate
Scheduled an estimate for bathroom remodel but the contractor...
#TK-2008Resolved
Refund for cancelled job
I cancelled my deck repair job and need a refund...
+
Poster — Empty State Live
No tickets submitted yet
9:41
My Tickets
All
Open
In Progress
Resolved
No tickets
You haven't submitted any support tickets yet.

Poster — Ticket Detail Live
ic-A • deepBlue chat, related job link, reply input
9:41
#TK-2015
OpenMar 25, 2026
Contractor didn't show up
contractorClose Ticket
Related Job: Bathroom Remodel
SJ
Sarah Johnson
The contractor who accepted my bathroom remodel bid was supposed to come for the initial walkthrough today at 10am but never showed up and isn't responding to messages.
2:30 PM
ST
Support Team
I'm sorry about this experience. We're reaching out to the contractor now. If they don't respond within 24 hours, we'll help you find a replacement.
3:15 PM

Help Center Live
Shared screen • Search, quick actions, FAQs, topic grid
9:41
Help Center
Search for help...
Quick Actions
Submit a Ticket
Get help from our support team
Live Chat
Chat with us in real-time
Email Support
support@3bids.io
Frequently Asked Questions
Jobs
How do I post a job?
Payments
How does payment work?
Payments
What is escrow?
Messages
How do I message a contractor?
Reviews
How do I leave a review?
Browse by Topic
Getting Started
Jobs & Bids
Payments
Messages
Account
Safety

Submit a Ticket (Shared) Live
Category chips, subject, description, attachments, cancel/submit
9:41
Submit a Ticket
Submit a Ticket
We'll get back to you within 24 hours
Category
Job Issue Payment Problem Technical Bug Account Help Other
Subject
Description
Provide as much detail as possible...
Attachments (Optional)
+ Add Screenshots or Files

Admin — Support Tickets Live
adminPrimary theme • 4 status tabs, search, sort, paginated list
9:41
Support
All (24)
Open (8)
In Progress (5)
Resolved (11)
#TK-1042URGENT
Open
Payment not received
marcus@coleco.com • Contractor
#TK-2015HIGH
In Progress
Contractor no-show
sarah@email.com • Homeowner
#TK-1035LOW
Resolved
How to export invoices
jdoe@email.com • Contractor
← Prev Page 1 of 2 Next →

Admin — Ticket Detail Live
Admin view • User info, conversation, quick actions, reply toggle
9:41
TK-1042
TK-1042Urgent
Payment not received
OpenUnassigned
User Info
Marcus Cole
marcus@coleco.com
Contractor
View User Profile →
Description
Kitchen Remodel escrow was released 3 days ago but I haven't received the payout. Dashboard shows "Released." Stripe Connect is verified and active.
Submitted: Mar 26, 10:30 AM
Conversation (2)
Marcus Cole
Escrow released but no payout after 3 days.
Mar 26, 10:30 AM
Support (Alex T.)
Payout initiated via Stripe. 2-3 business day processing. Monitoring.
Mar 26, 11:15 AM
Quick Actions
Assign to Me
Mark Resolved
Escalate
Reply to User Internal Note
Type your reply...
Admin — Internal Note View Live
Internal note mode with warning highlight
9:41
TK-1042
Conversation (3)
Marcus Cole
Escrow released but no payout.
Mar 26, 10:30 AM
Support (Alex T.)
Payout initiated. Monitoring.
Mar 26, 11:15 AM
Admin (Alex T.)Internal
Checked Stripe dashboard - payout is stuck in pending. Contacted Stripe support for resolution. May need to manually retry.
Mar 26, 11:45 AM
Reply to User Internal Note
Add internal note...
Contractor — Tickets List + Detail Live
9:41
My Tickets
All
Open
Resolved
#1042 Payment not received
2h ago • payment
Open
#1038 Profile photo
Yesterday • account
In Prog
#1031 Calendar sync
3 days ago • technical
Done
OpenMar 26, 2026
Payment not received
paymentClose Ticket
MC
Marcus • 10:30 AM
Escrow released but no payout after 3 days.
ST
Support • 11:15 AM
Payout initiated. 2-3 business day processing. Monitoring.

Poster — Tickets List + Detail Live
9:41
My Tickets
All
Open
Resolved
#2015 Contractor no-show
4h ago • contractor
Open
#2008 Refund request
2 days ago • payment
Done
OpenMar 25, 2026
Contractor didn't show up
contractorClose Ticket
Related Job: Bathroom Remodel
SJ
Sarah • 2:30 PM
Contractor didn't show for the initial walkthrough.
ST
Support • 3:15 PM
Reaching out to the contractor now. If no response in 24h, we'll help find a replacement.

Contractor — Create Ticket Live
9:41
Contact Support
What do you need help with?
Payment Issue
Payout, escrow, refund
Technical Problem
Bugs, errors, integrations
Account Help
Profile, settings, verification
Job Dispute
Disagreements, quality issues
Ticket Details
Please provide as much detail as possible...
Response within 24 hours during business days.

Admin — Support List + Detail Live
9:41
Support Tickets
All
Open
In Prog
Done
#1042 Payment issue
Contractor • 2h ago
URGENT
#2015 No-show
Homeowner • 4h ago
Open
#1035 Invoice export
Contractor • 1d ago
Done
TK-1042 URGENT
Payment not received
OpenContractor
User
Marcus Cole
marcus@coleco.com
Escrow released 3 days ago but no payout. Stripe Connect verified.

Help Center Live
9:41
Help Center
Quick Actions
Submit a Ticket
Live Chat
Email Support
Topics
Getting Started
Jobs & Bids
Payments
Account
Search for help...
Frequently Asked Questions
Jobs
How do I post a job?
Payments
How does payment work?
Payments
What is escrow?
Messages
How do I message a contractor?
Contractor — Ticket List Live
https://app.3bids.io/contractor/support/tickets
3BidsSupport
My Tickets
Create Ticket
Help Center
Settings
MC
Marcus Cole
Contractor

My Tickets

3 open · 8 resolved
All
Open
In Progress
Resolved
IDSubjectTypeStatusUpdated
#TK-1042Payment not receivedpaymentOpen2h ago
#TK-1038Profile photo updateaccountIn ProgressYesterday
#TK-1031Calendar sync issuetechnicalResolved3 days

Contractor — Create Ticket Live
https://app.3bids.io/contractor/support/new
3BidsSupport
My Tickets
Create Ticket
Help Center
Settings
MC
Marcus Cole
Contractor

Contact Support

What do you need help with?
Payment Issue
Technical
Account
Dispute
Other
Please provide as much detail as possible...
Sending as
Cole Contracting LLC
marcus@coleco.com
Response Times
We typically respond within 24 hours during business days.

Contractor — Ticket Detail Live
https://app.3bids.io/contractor/support/1042
3BidsSupport
My Tickets
Create Ticket
Help Center
MC
Marcus Cole
Contractor

#TK-1042 — Payment not received

OpenClose Ticket
MC
Marcus Cole • Mar 26, 10:30 AM
Kitchen Remodel escrow released 3 days ago but no payout. Dashboard shows “Released.” Stripe Connect verified.
ST
Support Team • 11:15 AM
Payout initiated. 2-3 business day Stripe processing. Should arrive tomorrow. Monitoring.
Ticket Details
Status
Open
Type
payment
Created
Mar 26, 2026

Admin — Support Tickets Live
https://admin.3bids.io/support
3BidsAdmin
All Tickets
Metrics
Tiers
Settings
AT
Alex T.
Admin

Support Tickets

Search tickets...
Sort: Newest
All (24)
Open (8)
In Progress (5)
Resolved (11)
IDSubjectUserTypePriorityStatusUpdated
#TK-1042Payment not received
Marcus Cole
Contractor
paymentUrgentOpen2h ago
#TK-2015Contractor no-show
Sarah Johnson
Homeowner
contractorHighIn Prog4h ago
#TK-1035Invoice export help
John Doe
Contractor
accountLowResolved1 day
Showing 3 of 24 tickets
← PrevPage 1 of 2Next →

Admin — Ticket Detail Live
https://admin.3bids.io/support/1042
3BidsAdmin
All Tickets
Metrics
Tiers
AT
Alex T.
Admin

TK-1042 — Payment not received

OpenURGENTContractor
User Info
Marcus Cole
marcus@coleco.com • Contractor
View Profile →
Conversation (3)
Marcus ColeMar 26, 10:30 AM
Escrow released but no payout. Stripe Connect verified.
Support (Alex T.)Mar 26, 11:15 AM
Payout initiated. 2-3 business day processing. Monitoring.
Admin (Alex T.)
INTERNALMar 26, 11:45 AM
Checked Stripe dashboard - payout stuck in pending. Contacted Stripe support.
Reply to UserInternal Note
Type your reply...
Ticket Details
Status
Open
Priority
Urgent
Type
payment
Assigned
Unassigned
Submitted
Mar 26, 10:30 AM
Description
Kitchen Remodel escrow released 3 days ago but no payout. Dashboard shows "Released." Stripe Connect verified and active.

Admin — Support Metrics Live
https://admin.3bids.io/reports/support
3BidsAdmin
Support Metrics
All Tickets
Tiers
AT
Alex T.
Admin

Support Metrics

8
Open Tickets
2
Urgent
5
New Today
14
Resolved (7d)
Response Metrics
18h
Avg Resolution Time
Target: Under 24 hoursOn Target
Status Breakdown
Open
8
In Progress
5
Resolved
11
Closed
0
View All Tickets (8 open) →

Data Architecture

Full support ticket system — shared ticket creation, threaded conversations, role-based views (contractor/poster/admin), 5-tier escalation, and satisfaction metrics.

Source Files (10 screens)

app/(contractor)/(tabs)/settings/support.tsx
Contractor contact support — ticket type grid (5 types with icons), subject, description, submit
Component
app/(contractor)/(tabs)/settings/tickets.tsx
Contractor ticket list — status filter tabs (all/open/in_progress/resolved), ticket cards, FAB
Component
app/(contractor)/(tabs)/settings/ticket/[id].tsx
Contractor ticket detail — chat thread with message bubbles, reply input, close/reopen
Component
app/(poster)/settings/support.tsx
Poster contact support — deepBlue theme, poster-specific ticket types
Component
app/(poster)/settings/tickets.tsx
Poster ticket list — same structure as contractor, deepBlue primary
Component
app/(poster)/settings/ticket/[id].tsx
Poster ticket detail — chat thread, related job link, deepBlue bubbles
Component
app/support/index.tsx
Help Center — search, quick actions (ticket/chat/email), FAQs, topic grid
Component
app/support/ticket.tsx
Submit Ticket (shared) — category chips, subject, description, attachments, cancel/submit
Component
app/(admin)/support/index.tsx
Admin ticket list — 4 status tabs, search, sort dropdown, pagination, table/card responsive
Component
app/(admin)/support/[id].tsx
Admin ticket detail — user info, conversation, quick actions (assign/resolve/escalate), reply/internal toggle
Component

Convex Queries

features.support.getMyTickets
User's tickets with optional status filter
Query
features.support.getTicketDetail
Full ticket with messages thread, related job (poster)
Query
admin.support.listTickets
All tickets with status filter, pagination, status counts
Query
admin.support.getTicketDetail
Admin ticket detail with user info, messages, assigned admin
Query
admin.support.getTicketStats
Metrics: open count, urgent, new today, resolved 7d, avg resolution time, breakdowns
Query

Convex Mutations

features.support.submitTicket
Create ticket with subject, message, category. Returns ticketNumber.
Mutation
features.support.replyToTicket
Add user reply to thread, reopens if closed
Mutation
features.support.closeTicket
User closes their own ticket
Mutation
admin.support.addReply
Admin reply (public or internal note)
Mutation
admin.support.updateTicket
Update status, priority, admin notes
Mutation
admin.support.assignTicket
Assign ticket to current admin
Mutation

Schema

supportTickets
ticketNumber, subject, description, category, priority, status, userId, userEmail, userType, assignedToAdminId, adminNotes, createdAt, updatedAt
Schema
supportMessages
ticketId, message, senderType (user/admin), senderName, isInternal, createdAt
Schema

Ticket Flow

Created
Open
In Progress
Resolved
Closed

5-Tier Escalation Model

T1: Self-Service (Instant)
T2: CSR (<2h)
T3: Technical (<4h)
T4: Engineering (<24h)
T5: Executive (Immediate)

Key Design Decisions

Dual-Role Theming

Contractor screens use terracotta (ic-B/D/F), poster screens use deepBlue (ic-A/C/E/I), admin uses adminPrimary. Same ticket system, role-appropriate colors.

Chat-Style Threading

Ticket detail uses message bubbles like a chat, with own-message alignment. Admin has reply-to-user vs internal-note toggle.

Admin Power Tools

Admin gets: assign-to-me, mark resolved, escalate to urgent, internal notes (hidden from user), paginated ticket list with search/sort.

Status State Machine

Open → In Progress → Resolved → Closed. Users can close/reopen. Admin can escalate priority (low → medium → high → urgent).