QuickBooks

Learn how to connect and configure QuickBooks for automated invoice generation.

QuickBooks Online is a widely-used cloud-based accounting software platform. This guide covers both connecting your QuickBooks account and configuring it for optimal order processing.

Table of Contents

  1. Before You Start
  2. Connecting QuickBooks
  3. Configuring QuickBooks Settings
  4. Troubleshooting
  5. Disconnecting QuickBooks
  6. Next Steps

Before You Start

Prerequisites

What You'll Need

  • QuickBooks Account - You'll authenticate using OAuth 2.0 (no API keys needed)
  • Company Access - Permission to create customers and invoices

Connecting QuickBooks

Step 1: Initiate OAuth Connection

  1. Navigate to: /home/accounting/connect
  2. Select "QuickBooks" from the package dropdown
  3. Click "Connect to QuickBooks" - you'll be redirected to QuickBooks
  4. Log into your QuickBooks account using your Intuit credentials
  5. Select the company you want to connect (if you have multiple)
  6. Authorize BrickInvoice to access your QuickBooks data

Step 2: Complete Connection

After authorizing:

  • You'll be redirected back to BrickInvoice
  • The connection will be verified and saved automatically
  • Your QuickBooks company information will be detected

Security Note

BrickInvoice uses OAuth 2.0 authentication, which means:

  • Your QuickBooks credentials are never stored by BrickInvoice
  • Access tokens are encrypted in the database
  • Tokens automatically refresh when needed
  • You can revoke access anytime from QuickBooks settings

Configuring QuickBooks Settings

After successfully connecting QuickBooks, you'll need to configure how orders are processed and mapped to your accounting system.

Understanding QuickBooks Items

QuickBooks uses Items to represent products and services on invoices. Unlike some accounting systems that use general ledger accounts directly, QuickBooks requires you to:

  1. Create Items in QuickBooks first (Products/Services)
  2. Configure each Item with appropriate income accounts and tax settings
  3. Map Items in BrickInvoice to different transaction types

Invoice Line Item Structure

Each order creates an invoice with separate line items for different product types and customer locations. The available categories depend on your company's location:

Product Line Items (Standard Tax Treatment)

  • Products subject to standard tax rates (VAT/GST)
  • Separate Items based on customer location:
    • Domestic: Sales within your country
    • EU: Sales to other EU countries (only for EU-based companies)
    • Export/Other: International sales outside your tax jurisdiction
  • Each Item needs appropriate tax code assignment

Margin Scheme Line Items (EU Only)

  • Products subject to margin scheme (special VAT treatment for second-hand goods)
  • Separate Items based on customer location:
    • Domestic: Margin scheme sales within your country
    • EU: Margin scheme sales to other EU countries
    • Export/Other: Margin scheme sales outside the EU
  • Tax codes usually set to 0% or non-taxable
  • Note: Only applicable for EU-based companies

Handling Fees Line Items

  • Processing and handling costs
  • Separate Items based on customer location:
    • Domestic: Fees for domestic orders
    • EU: Fees for EU orders (only for EU-based companies)
    • Export/Other: Fees for international orders

Shipping Line Items

  • Shipping and delivery costs
  • Separate Items based on customer location:
    • Domestic: Shipping within your country
    • EU: Shipping to other EU countries (only for EU-based companies)
    • Export/Other: International shipping costs

Tax Code Configuration

QuickBooks uses Tax Codes to determine tax treatment. The configuration varies by region:

EU Based Companies

  • Tax codes for standard VAT rates (e.g., "20% Standard", "21% Sales")
  • Export codes for zero-rated sales outside EU (e.g., "0% Export")
  • Margin scheme codes if applicable (e.g., "Margin Scheme", "0% Margin")
  • Customer Location Mapping:
    • Domestic = within your country
    • EU = other EU countries
    • Export/Other = outside the EU (zero-rated)

United Kingdom (GB)

  • VAT codes for standard rate sales (e.g., "20% VAT", "Standard 20%")
  • Zero-rated codes for exports (e.g., "0% Zero Rated", "EC Goods")
  • Customer Location Mapping:
    • Domestic = within the UK
    • Export/Other = rest of world sales (zero-rated)

Australia

  • GST codes for domestic sales (e.g., "GST", "GST on Income")
  • Export codes for international sales (e.g., "GST Free Exports", "Export Sales")
  • Customer Location Mapping:
    • Domestic = within Australia
    • Export/Other = international sales (GST-free)

Configuration Tips

** 1. Create Items in QuickBooks First**

  • Go to QuickBooks → Sales → Products and Services
  • Create Items for each category (Products, Margin, Handling, Shipping)
  • Set appropriate income accounts and default tax codes

2. Use Consistent Naming

  • Example: "Domestic Sales", "Shipping Income"
  • Makes it easier to identify Items in BrickInvoice configuration

3. Review Tax Settings

  • Ensure Items have correct default tax codes for your region
  • For EU companies:
    • Confirm 0% or non-taxable codes for margin scheme
    • Set export codes for international sales outside EU
  • For UK companies:
    • Set 20% VAT for domestic sales
    • Set 0% zero-rated codes for EU and international exports
  • For Australian companies:
    • Set GST for domestic sales
    • Set GST-free codes for international exports

4. Test with Sample Order

  • Process one test order to verify configuration
  • Check created invoice in QuickBooks
  • Verify tax amounts and account assignments are correct

Troubleshooting

Connection Issues

"Failed to Connect to QuickBooks"

  • Browser popup blockers: Disable for BrickInvoice domain
  • Invalid company: Ensure you selected the correct QuickBooks company

"Token Expired" or "Authentication Failed"

  • Automatic refresh: Tokens refresh automatically, but connection may have been revoked
  • Reconnect: Go to accounting settings and reconnect QuickBooks

Configuration Issues

"Items Not Loading"

  • Check connection: Verify QuickBooks is still connected
  • Permissions: Ensure your QuickBooks user has access to Items
  • Active items only: Only active Items are shown - check Item status in QuickBooks
  • Refresh: Try refreshing the configuration page

"Tax Codes Not Available"

  • Region detection: QuickBooks company country is auto-detected
  • Tax feature: Ensure tax tracking is enabled in QuickBooks
  • Sandbox vs Production: Verify correct environment is being used

"Invoice Creation Failed"

  • Invalid tax code: Selected tax code may not be valid in your region
  • Item settings: Verify Items have correct income account assignments

Disconnecting QuickBooks

To disconnect QuickBooks:

  1. Navigate to: /home/accounting/connect
  2. Click "Disconnect" button
  3. Confirm the disconnection
  4. Access is revoked both in BrickInvoice and QuickBooks

Note: Existing invoices in QuickBooks are not affected by disconnecting.

Next Steps

After configuring QuickBooks:

  1. Test integration - Process a few test orders
  2. Verify invoices - Check that invoices are created correctly in QuickBooks
  3. Review tax treatment - Ensure tax codes are applied correctly
  4. Set up automation - Configure automated invoice generation schedules