Skip to main content

Financial Operations Integration

Overview

Track time, manage invoices, and sync financial data with Xero - all from one place. Financial Operations Integration connects your platform work to your accounting system, so you spend less time on administrative tasks and more time building your venture. Track expert hours, generate invoices automatically when escrow releases or time is billed, and keep your books current without manual data entry.

Step-by-Step Guide

Connect Your Xero Account

  1. Navigate to AdminXero Connection (/admin/xeroconnection)
  2. Click Connect to Xero
  3. You’ll redirect to Xero’s authorization page - sign in and approve the connection
  4. The platform redirects you back with a “Connected” status showing your organization name
  5. The connection automatically refreshes before tokens expire, keeping sync uninterrupted

Track Time on a Job

  1. Go to Timesheet (/timesheet) or your active job dashboard
  2. Click Start Timer when you begin work - the timer counts in real-time
  3. Click Stop Timer when done - the platform creates a time entry with duration, job, and timestamp
  4. To add time manually (if you forgot to start the timer), click Add Entry, specify date, duration, description, and mark as billable or non-billable
  5. Edit any unbilled entry by clicking on it - once an entry is billed on an invoice, it locks to prevent changes

Generate an Invoice

For fixed-price work (escrow release):
  1. When escrow releases to an expert, the platform auto-generates an invoice
  2. The invoice includes job details, amounts, and applicable taxes based on client location
  3. The invoice syncs to Xero automatically and appears in Invoices (/invoices)
For hourly work (time-based billing):
  1. Navigate to Invoices (/invoices) and click Create from Time Entries
  2. Select the job and which experts’ unbilled time to include
  3. Review the line items (each time entry becomes one line with date, description, hours, rate)
  4. Click Generate Invoice - the platform marks those time entries as “billed” and syncs to Xero
  5. The invoice status updates to “paid” when Stripe confirms payment

Create a Quote

  1. From a job page without funding, click Create Quote
  2. Add line items with quantities, rates, and set a validity period
  3. The quote syncs to Xero as a draft
  4. Share the quote link with your client - they can accept before expiry
  5. Accepted quotes convert to invoices automatically

View Financial Dashboard

  1. Go to Invoices (/invoices) or your admin dashboard
  2. See total outstanding amounts, overdue invoices, and recent activity
  3. Review revenue breakdowns by day, week, or month
  4. Check for any reconciliation discrepancies between the platform and Xero

Common Questions

What happens if I close my browser while the timer is running?
Your timer state persists on the server. When you return and log in, the timer resumes from where it left off. You won’t lose any tracked time.
Can I edit a time entry after it’s been invoiced?
No. Once a time entry appears on a finalized invoice, the platform locks it to prevent billing disputes. You’ll see a clear “billed” status. If you need to adjust something, create a new entry or credit memo.
What if the Xero connection breaks or gets revoked?
The platform detects authorization failures, pauses sync operations, and notifies you to reconnect. Your data stays safe in the platform while sync is paused. Just click Connect to Xero again to restore the connection.
How does the platform handle tax on invoices?
Tax rates are calculated at invoice creation time based on your client’s location. Once the invoice is created, the tax amount locks - even if rates change later. Different tax jurisdictions apply automatically based on where your client is registered.
Can I generate one invoice for multiple experts working on the same job?
Yes. When generating a time-based invoice, select which experts’ unbilled hours to include. Each expert’s time appears as separate line items on the single invoice.

Troubleshooting

Xero sync shows errors or “rate limit reached”
Xero allows 5,000 API calls per day. If you hit this limit, the platform queues pending sync operations and retries during the next window (usually overnight). Check Xero Connection status to see when the next sync runs. For urgent syncs, contact support.
Time entry disappeared after I stopped the timer
Check that you clicked “Stop Timer” rather than closing the browser. If the timer shows as still running, click stop to create the entry. If the entry truly vanished, check your Timesheet view for the date range - it may have saved under a different day if your session crossed midnight.
Invoice generated but not showing in Xero
Verify the Xero connection status shows “Connected” with a recent sync timestamp. If connection looks good but invoice is missing, check that your Xero contact exists for that client - the platform won’t sync invoices for unrecognized contacts. Create the contact in Xero first, then retry.
Quote expired before client could accept
Quotes lock after the validity period ends to prevent pricing disputes. Create a new quote with updated pricing or extended validity. If the client had a legitimate delay, you can manually create an invoice with the original quote terms by referencing it as a line item.
Escrow Dashboard (/escrowdashboard) - Manage job funding and releases. When escrow releases to experts, the platform automatically generates invoices that sync through Financial Operations Integration. Payment Methods (/paymentmethods) - Set up how you receive payments. Connect your Stripe account so clients can pay invoices online, and those payments automatically update invoice status in both the platform and Xero. Expert Payout Setup (/expertpayoutsetup) - Configure how you want to receive funds from completed jobs. Once invoices are paid and funds clear, payouts process according to your setup here.