> ## Documentation Index
> Fetch the complete documentation index at: https://help.vori.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Errors, Retries, and Sync History

> How Vori validates every entry before it posts, where each sync is recorded, and how to safely retry a failure.

Because this data touches your financial records, you need full control and visibility over what hits your books and when. The governing principle: Vori holds a bad entry rather than forcing it through. A gap is easier to fix in Vori than to unpick in your accounting system later.

***

### What Vori catches before anything posts

| Situation | What happens |
| - | - |
| A department or category has no account mapped | The push stops and shows each unmapped item with its amount. |
| The day's debits and credits don't balance | Held and flagged, with the offending order named. Vori never posts an unbalanced entry. |
| A bill's vendor isn't linked | The invoice can't be approved, so it never reaches your accounting system. |
| A mapped account was deleted or made inactive | The push fails with the account named, rather than posting elsewhere. |
| A store's segment value matches nothing in your accounting system | The entry posts, untagged for that store, and the mismatch is flagged in GL Account Mapping. |
| You retry a bill for an invoice you marked done | Vori refuses the retry so it can't post a bill you already entered. Reopen the invoice first. |

Because Vori re-reads your chart of accounts nightly, accounts you rename or add are picked up automatically, and anything that becomes unmapped as a result surfaces the same way.

***

### Sync history

Every attempt is recorded. A sync history view under **Integrations → Accounting Sync** shows:

* Timestamp, and who performed the action (a specific user, or Vori itself)
* Type: daily journal entry, invoice bill, vendor credit, or chart-of-accounts pull
* Reference: the business date, or the invoice number
* Status: pending, success, or failed
* The reference your accounting system returned on success, with a link to open the entry there
* The specific error message on failure

Failures are visible where you work. A journal entry or bill that fails to sync stays marked as unposted in Vori, with the error your accounting system returned. Failed bills are flagged in the **Invoice Review** queue so they aren't forgotten.

***

### Retry a failed sync

First fix the cause shown in the error, such as a missing mapping, an inactive account, or an unlinked vendor. Then:

1. Go to **[Integrations](https://app.vori.com/retail/integrations)** and open your accounting connection to see its sync history.
2. Find the row with a **Failed** status.
3. Click **Retry** on that row. Vori shows *Sync event queued for retry.*

<Frame>
  <img src="https://mintcdn.com/vori/yGKniZaFXskHbmj6/images/errors-and-sync-history/sync-failed-retry.webp?fit=max&auto=format&n=yGKniZaFXskHbmj6&q=85&s=2469d76923fcf326fbd7272aa73a95c3" alt="Sync history with a failed invoice bill row and its Retry button" width="1175" height="170" data-path="images/errors-and-sync-history/sync-failed-retry.webp" />
</Frame>

You can also start from **Invoice Review**. Hover over a failed sync badge on an invoice to see the error, then click **View sync history** to jump to that row.

With QuickBooks Desktop, a retried bill or entry goes over the next time the Web Connector runs.

Vori rebuilds a retried bill from the invoice's current state, so a credit that failed as a bill posts as a vendor credit. A credit that failed earlier with *Transaction amount must be positive* needs no fix: click **Retry**.

A row marked **Unconfirmed** means Vori sent the entry but never got an answer, so it may or may not have posted. Check your accounting system for it first. With QuickBooks Online, **Retry** looks for the existing record and adopts it rather than posting a second copy. With Xero, **Retry** doesn't run on an unconfirmed row; contact Vori Support to resolve it.

<Note>
  If a failed row has no **Retry** button, Vori stopped the entry before it reached your accounting system. Fix the cause in the error, then push the entry again.
</Note>

**Retry** is refused for an invoice you moved to **Done** with **Mark as done**, and shows *This invoice was marked done without exporting. Reopen it in Invoice Review before retrying.* See [Mark invoices as done without exporting](/accounting-integrations/invoice-review-and-bills#mark-invoices-as-done-without-exporting).

### Retries are safe

Each push carries a stable reference to the underlying Vori record, so retrying a day or an invoice that already posted will not create a second copy. Every entry Vori posts is a discrete, referenced record, so there's a clear audit trail of exactly what posted and when.

***

### Frequently asked questions

<AccordionGroup>
  <Accordion title="Do entries ever land in my books uncategorized?">
    No. Vori doesn't create accounts and doesn't post to a default, catch-all, or suspense account. Posting against an account that doesn't exist, or a bill against a vendor with no counterpart, would create work instead of removing it, so incomplete mappings stop the push rather than routing around it.
  </Accordion>

  <Accordion title="Can I pay bills from Vori?">
    Not today. Bills are created in your accounting system and paid there, through whatever payment workflow you use now. Vori doesn't read payment status back, so AP aging and payment history live entirely in your accounting system.
  </Accordion>

  <Accordion title="What happens if I edit or delete an entry after Vori posts it?">
    Nothing on Vori's side. Once an entry is in your accounting system it's that system's record, and Vori won't overwrite, re-post, or correct it. Vori doesn't read your posted transactions at all.
  </Accordion>

  <Accordion title="Does the original invoice PDF get attached to the bill?">
    Not today. The bill is created with the vendor, dates, terms, and coded lines. The source document stays viewable in Vori.
  </Accordion>

  <Accordion title="Does the integration cover labor, hours, or payroll?">
    Not today. Payroll stays in your payroll system and reaches your accounting system through its own integration.
  </Accordion>

  <Accordion title="How are taxes handled across multiple jurisdictions?">
    If you collect sales tax across several jurisdictions, each rate produces its own line on the daily entry, but all of them post to the same Tax Collected account.
  </Accordion>
</AccordionGroup>


## Related topics

- [Accounting Integrations](/accounting-integrations/accounting-integrations-overview.md)
- [Sync inventory data](/api/sync-inventory-data.md)
- [Review and Sync Invoices as Bills](/accounting-integrations/invoice-review-and-bills.md)
