# Accounting sync: QuickBooks Online and Xero

> Post every payment, refund, dispute, card processing charge and payout from Anytime Capital Payments to QuickBooks Online or Xero, once each.

Source: https://anytime-capital.com/docs/accounting-sync · Markdown: https://anytime-capital.com/docs/accounting-sync.md · All docs: https://anytime-capital.com/docs/llms-full.txt

Connect QuickBooks Online or Xero in **Settings → Accounting** and your Anytime Capital Payments activity posts to your books on its own: every payment, its card processing, every refund, every dispute and every payout to your bank. Owners and admins connect, map accounts and see what posted, what didn't and why. One set of books at a time.

## What syncs

Your payments balance is a **clearing account** in your books: a bank-type account that stands for the money waiting to be paid out. Every record moves money in or out of it, on the day it happened in your business's time zone, in USD.

| Record | QuickBooks Online | Xero | Account it books to |
| --- | --- | --- | --- |
| Payment | Sales receipt deposited to the clearing account | Receive Money into the clearing account | Sales (and Sales tax, if you post it separately) |
| Card processing | Expense paid from the clearing account | Spend Money from the clearing account | Card processing fees |
| Refund | Refund receipt paid from the clearing account | Spend Money from the clearing account | Refunds (or Sales) |
| Dispute | Expense paid from the clearing account | Spend Money from the clearing account | Disputes (or Refunds) |
| Dispute fee | Expense paid from the clearing account | Spend Money from the clearing account | Card processing fees |
| Dispute won | Deposit into the clearing account | Receive Money into the clearing account | Disputes (or Refunds) |
| Payout | Transfer from the clearing account to your bank account | Bank transfer from the clearing account to your bank account | Your bank account |
| Payout fee | Expense paid from the clearing account | Spend Money from the clearing account | Card processing fees |

- Payments post as cash sales rather than an invoice and a payment, because they were paid at checkout: there is nothing receivable to open and close. Refunds and disputes are money going back out for the same reason.
- Each record's memo starts with **Anytime Capital Payments** and carries its payment or payout id (`pay_…`, `wdrl_…`), plus the refund or dispute id where there is one, so you can find any record from either side.
- Card processing posts once it is final: as soon as the amount is known, or three days after the payment.
- A dispute that took money posts on the day it opened, with its fee; if you win, the money coming back posts on the day it was won. Inquiries that never took money, and disputes settled by a refund (the refund already posted), don't post.
- QuickBooks books sales through products and services, so the sync keeps three non-taxable service items of its own: **Anytime Capital Payments sales**, **… refunds** and **… sales tax**, each pointing at the account you mapped. Automated sales tax never adds tax to them.
- Payments in another currency are skipped with the reason shown. Book them from the CSV export in Reports.

## How payouts reconcile with your bank

Sales come into the clearing account at their full amount; card processing, refunds and disputes go out of it as they happen. Each payout is a transfer of what actually reached your bank, from the clearing account to your bank account, with any payout fee as an expense. So the transfer equals the deposit on your bank statement — your sales less card processing, refunds and disputes since the last payout — and the clearing account's balance always equals your Anytime Capital Payments balance.

| Record | Clearing account | Bank account |
| --- | --- | --- |
| Payment of $200.00 | +200.00 |  |
| Card processing on it | −6.10 |  |
| Refund of an earlier sale | −64.00 |  |
| Payout to your bank | −129.90 | +129.90 |
| After the payout | 0.00 | deposit of 129.90 |

> **Important:** When the deposit shows up in your bank feed, **match** it to the transfer the sync made; don't add it as new income, or the sales are counted twice.

## Connect

1. In **Settings → Accounting**, choose the first day to bring in, then **Connect** and approve access as a QuickBooks or Xero admin.
2. Check the **account mapping**: the clearing account (or **Create one for me**, which adds a bank account named Anytime Capital Payments clearing), your sales income account, the expense account for card processing and fees, the refunds and disputes accounts (or the same as sales and refunds), and the bank account payouts go to.
3. Choose how **sales tax** collected at checkout posts: inside the income line, or on its own line to an account such as Sales Tax Payable.
4. Turn on **Sync customers** to name each sale's customer: one already in your books with the same email, else a new customer named “Name (email)”. Off, sales post without a customer (in Xero, to one shared contact).
5. Press **Save mapping**. Nothing posts until you do, so nothing lands in an account you didn't choose.

> **Tip:** Already importing our QuickBooks or Xero CSV exports from Reports? Choose a start date after the last file you imported, so nothing is booked twice.

The books must be kept in USD. If your company's home currency is something else, syncing stays paused and says so, rather than post amounts at the wrong value. In QuickBooks, a sandbox deployment shows **Intuit sandbox** next to the name and posts only to Intuit's test companies.

## When it syncs

- Every 30 minutes, oldest first, a business at a time, and whenever you press **Sync now**. A scheduled sync works through up to 100 records per business and picks up where it stopped; **Sync now** does up to 40.
- **Bring in earlier activity** moves your first day back. The next syncs work through the history oldest first, and Settings → Accounting shows how many payments and refunds are left.
- Each record posts once. Every create carries an idempotency key (QuickBooks' requestid), and a record whose answer never arrived is looked up in your books before it's sent again, so a sync interrupted halfway never doubles anything. Disconnecting and reconnecting the same company picks up where it left off.
- We stay well under QuickBooks' limit of 500 requests a minute per company (and Xero's 60), so your other apps aren't slowed down; if QuickBooks still asks us to slow down, the sync stops and the next one continues.

## When something goes wrong

| What happened | What the sync does | What to do |
| --- | --- | --- |
| Your books refused one record (an archived account, a closed period, a duplicate name) | Shows it under **Didn't sync** with the reason in plain words and QuickBooks' own message, and retries it automatically up to 5 times, waiting longer each time. The other records keep syncing. | Fix the cause, then **Retry** it, or **Retry all**. |
| QuickBooks or Xero was slow or down | Retries the request a few times, then leaves the record to the next sync. It is never posted twice. | Nothing. |
| A mapped account was deleted or made inactive | Pauses syncing before posting anything, and tells owners and admins by email and in the app. | Choose another account and **Save mapping**; syncing resumes. |
| The company's subscription ended, or its home currency isn't USD | Pauses syncing and says why. | Sort it out in QuickBooks or connect a USD company, then **Check again**. |
| The connection stopped working (disconnected from inside QuickBooks, the admin who connected lost access, or no sync for 100 days; 60 in Xero) | Marks it **Reconnect needed**, stops trying, and tells owners and admins by email and in the app. | **Reconnect**. Nothing already posted is posted twice. |
| Syncs keep failing | Tells owners and admins after 3 failing syncs in a row, and again each day it lasts. | Open **Sync activity** to see why. |

**Sync activity** in Settings → Accounting lists what didn't sync, what posted most recently (with its id in your books), and the sync history: each sync that posted, failed or paused, and each one you asked for. The card shows the last sync and the **last successful sync**.

## Disconnect

**Disconnect** revokes our access at QuickBooks or Xero, deletes our copy of it and stops syncing. Disconnecting from inside QuickBooks (Apps → Disconnect) does the same once we've checked with QuickBooks that our access has ended. Everything already posted stays in your books.

> **Note:** We ask only for access to your accounting data, never see your QuickBooks or Xero password, and keep the access tokens encrypted. Anytime Capital is a fintech company, not a bank.

---

Anytime Capital is a fintech company, not a bank. Payment processing, banking and payout services are provided by Anytime Capital's licensed partners. Rates shown are for US card payments; international cards, currency conversion and disputes may carry additional fees shown in your dashboard before you accept a payment.
