# Importing Ridge exports into QuickBooks Online

Invoices › **Export** asks for a date range and downloads two files:

- `quickbooks-invoices-<from>-to-<to>.csv` — one row per invoice, ready for QuickBooks Online's invoice import.
- `quickbooks-tickets-<from>-to-<to>.csv` — one row per ticket, ready for the time-activity import (hours) or for your records (loads, tonnes, expenses).

No QuickBooks connection is involved — these are plain CSV files you upload yourself.

## Importing the invoices

QuickBooks Online: **Settings (gear) › Import data › Invoices**, then upload the file.

| CSV column | QuickBooks field | Notes |
|---|---|---|
| InvoiceNo | Invoice No. | Your Ridge number with prefix, e.g. `INV-42`. |
| Customer | Customer | Matched by name. Tick "Add new customers" in the import options if they don't exist yet. |
| InvoiceDate | Invoice Date | `YYYY-MM-DD`. Pick that date format on the mapping screen. |
| DueDate | Due Date | Blank for drafts. |
| Terms | Terms | `Net 30` style, from your default terms. |
| Memo | Memo / Message | "Exported from Ridge". |
| Item(Product/Service) | Product/Service | `Contract work`. Create one Product/Service with this name in QuickBooks first, or let the import create it. |
| ItemDescription | Description | One summary line per invoice. Per-ticket invoice lines arrive with the invoice engine; until then each invoice exports as a single line for its subtotal. |
| ItemQuantity | Quantity | Always `1`. |
| ItemRate / ItemAmount | Rate / Amount | The invoice subtotal, before tax, in dollars. |
| ItemTaxCode | Tax Code | Your tax lines joined, e.g. `TPS+TVQ`. Map it to the matching combined tax code in QuickBooks (in Québec: `GST/QST QC`). |
| ItemTaxAmount | Tax Amount | Total minus subtotal. |
| Currency | Currency | From your company settings (`CAD`). |
| Status | — | QuickBooks imports every invoice as **open**; it has no status field on import. Filter this column first: import only `sent` rows, then mark the `paid` ones paid in QuickBooks (or receive their payments), and skip `draft` rows entirely. |

## Importing the tickets

Hours tickets fit QuickBooks Online's **time activity** import (available on Essentials/Plus via Settings › Import data › Time activities, or through the QuickBooks Time importer).

| CSV column | QuickBooks field | Notes |
|---|---|---|
| Date | Activity Date | `YYYY-MM-DD`. |
| Employee | Employee / Supplier name | The worker on the ticket. |
| Customer | Customer | The job's client. |
| Product/Service | Service item | The job name. |
| Description | Description | Job — machine (or expense type — machine). |
| Duration | Duration | `H:MM`. Blank on load/tonne and expense tickets. |
| Billable | Billable | `Y` when the ticket carries billable value. |

The remaining columns — Quantity, Unit, Rate, Amount, Kind, Machine, Standby, ExpenseType, Cost, Markup, Notes — don't map to time activities. They're there so the file doubles as a full ticket ledger: per-unit tickets (loads, tonnes), standby hours (`Standby = Y`, billed at the job's standby rate), and expenses (`Kind = expense`, with cost and any material markup). Leave them unmapped in the time import, or import expenses separately as bills/expenses if you track them in QuickBooks.

## Notes

- Amounts are in dollars with two decimals; no currency symbols.
- Corrected (reversed) tickets are excluded automatically.
- Invoices are filtered by issue date; tickets by work date.
- Dates use ISO `YYYY-MM-DD`; choose that format in the QuickBooks mapping step.
