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

# Syncing & Reconciling G/L Accounts with Alloy

> Enable your customers' financial reconciliation processes by providing them with powerful G/L account syncing integrations with popular accounting tools like Intuit Quickbooks, Microsoft Dynamics Business Central, and Oracle NetSuite.

## Overview

General ledger account reconciliation is the process of comparing a **G/L account balance** to its supporting documentation to verify accuracy and identify discrepancies. Performed monthly during financial close, this critical control involves investigating variances between the G/L and external sources (like bank statements) or internal records (like subsidiary ledgers), then making necessary adjustments through [journal entries](https://docs.runalloy.com/blueprints/finance-and-accounting/journal-entries). This process ensures accurate financial records, detects errors or fraud, and maintains reliable data for financial reporting and decision-making.

## Components of G/L Account Objects

### Core Account Details

* **Account ID:** Unique identifier
* **Account Name:** Display name (e.g., "Cash - Operating Account")
* **Account Number:** Chart of accounts number
* **Account Type:** Asset, Liability, Equity, Income, Expense
* **Account Sub-Type:** More specific classification (e.g., "Bank" under Assets)

### Account Properties

* **Active Status:** Whether account is currently active/inactive
* **Description:** Additional account details or purpose
* **Tax Line:** Associated tax form line for reporting
* **Parent Account:** For sub-accounts in hierarchical structures

### Financial Data

* **Current Balance:** Real-time account balance
* **Beginning Balance:** Balance at start of period
* **Debit/Credit Balance:** Natural balance type
* **Period Activity:** Transactions within specified date range

### Metadata

* **Created Date:** When account was established
* **Last Modified:** Most recent update timestamp
* **Currency:** For multi-currency environments
* **Bank Account Details:** Routing/account numbers (if applicable)

### Transaction Details

* **Transaction History:** Individual debits/credits
* **Transaction Count:** Number of transactions in period
* **Last Transaction Date:** Most recent activity

## Building Your First Integration

Select the appropriate drop-down below based on which Alloy Automation product you'll be building with.

<Accordion title="Embedded iPaaS">
  ### 1. Choose a Platform to Integrate with

  Popular accounting and enterprise resource planning (ERP) tools include SAP S/4HANA, Oracle NetSuite, Xero, Intuit Quickbooks, and Microsoft Dynamics Business Central. You can either create an integration purely for G/L account syncing or add these workflows to your existing integration.

  ### 2. Determine Workflow Execution Cadence

  You likely don't need G/L account syncing workflows to run in real-time and can, instead, use a combination of the workflow scheduling utility and the [On Installation Trigger](https://docs.runalloy.com/embedded/on-installation-trigger). We consider it best practice to at least give your users the ability to sync accounts from their ERP of choice to your platform on installation.

  <Note>
    You may want to give your users the ability to sync G/L account data on demand. These workflows can be triggered by a simple custom event that fires when a customer clicks a button or takes an action in your platform.
  </Note>

  ### 3. Pull G/L Account Data from Your Connector of Choice

  Some Account and ERP connectors will allow you to pull G/L Account info from an out-of-the-box action. In other cases, like with Quickbooks you can write a very quick query using a [Custom Action](https://docs.runalloy.com/embedded/custom-action) that returns the necessary account payloads.

  **Below is an example of a G/L Account payload pulled from Quickbooks**

  <Accordion title="G/L Account Sample Payload">
    ```json theme={null}
    {
      "Accounts": [
        {
          "Name": "Accounts Payable (A/P)",
          "SubAccount": false,
          "Description": "Money owed to vendors for products and services",
          "FullyQualifiedName": "Accounts Payable (A/P)",
          "Active": true,
          "Classification": "Liability",
          "AccountType": "Accounts Payable",
          "AccountSubType": "AccountsPayable",
          "CurrentBalance": 0,
          "CurrentBalanceWithSubAccounts": 0,
          "CurrencyRef": {
            "value": "USD",
            "name": "United States Dollar"
          },
          "domain": "QBO",
          "sparse": false,
          "Id": "19",
          "SyncToken": "0",
          "MetaData": {
            "CreateTime": "2025-08-03T17:54:31-07:00",
            "LastUpdatedTime": "2025-08-03T17:54:31-07:00"
          }
        },
        {
          "Name": "Accounts Receivable (A/R)",
          "SubAccount": false,
          "Description": "Money customers owe for products and services",
          "FullyQualifiedName": "Accounts Receivable (A/R)",
          "Active": true,
          "Classification": "Asset",
          "AccountType": "Accounts Receivable",
          "AccountSubType": "AccountsReceivable",
          "CurrentBalance": 0,
          "CurrentBalanceWithSubAccounts": 0,
          "CurrencyRef": {
            "value": "USD",
            "name": "United States Dollar"
          },
          "domain": "QBO",
          "sparse": false,
          "Id": "14",
          "SyncToken": "0",
          "MetaData": {
            "CreateTime": "2025-08-03T17:54:31-07:00",
            "LastUpdatedTime": "2025-08-03T17:54:31-07:00"
          }
        }
      ]
    }
    ```
  </Accordion>

  ### 3A. Pull Comparison Account Data From Your Platform (Optional)

  Once you've pulled G/L Account data from your ERP/Accounting platform of choice you can either stream it directly to your platform – feeding account data your internal account reconciliation functionality – or perform that reconciliation process directly within your workflow

  To do so you'll need to provide a REST endpoint from which a [Custom API Call](https://docs.runalloy.com/embedded/custom-api-calls) can pull the end-user's account information from your systems.

  ### 3B. Directly Compare Account Balances in Alloy (Optional)

  If you now have both the G/L Account data from the ERP/Accounting connector and the account data pulled from your systems, you can use \[Custom Code]p([https://docs.runalloy.com/embedded/special-blocks/custom-code#custom-code](https://docs.runalloy.com/embedded/special-blocks/custom-code#custom-code)) to iterate through each G/L account pulled from the connector as well as its analog in your systems and compare account balances.

  ### 4. Stream Data Back to Your Systems

  Whether you're passing wholesale G/L Account data directly from the connector into your systems or using output from reconciliation functionality built into your workflow, you can leverage either a Custom API call or a [Data Streaming](https://docs.runalloy.com/connectors/utility/data-streaming#data-streaming) block to send the resulting data back to your systems.

  ### 5. Deploy the Integration

  Once your integration is built and tested you can begin sharing it with your end-users. We have several methods for deploying and sharing your integrations, which you can read more about in our [documentation](https://docs.runalloy.com/embedded/quick-start#going-live).

  ## Video Walkthrough Library

  *We've created video walkthroughs for the most common and complex integration scenarios. Choose a walkthrough below to build alongside our experts. We regularly add new videos, so check back for updates!*

  <Accordion title="Exporting Accounts from QuickBooks">
    <iframe src="https://www.loom.com/embed/0cc1925b0f8945a7a2a2eed3eac7422f" title="Loom video player" frameborder="0" className="w-full aspect-video rounded-xl" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen />
  </Accordion>
</Accordion>

<Accordion title="Connectivity API (Coming Soon" />

<Accordion title="MCP Gateway (Coming Soon)" />
