Skip to main content

Overview

Journal Entries are used to record financial transactions directly into the General Ledger. Unlike Invoices and Orders, Journal Entries are not used for tracking inventory and order fulfillments. Instead, Journal Entries are simply used to reconcile internal system balances with supporting external documentation.

Components of Journal Entries

  • Journal Lines which capture individual line items within a transaction. Some platforms like Quickbooks require you to include 2 Journal Lines for every line item: one for the debited account and another for the credited one.
  • Associated Accounts to associate with individual Journal Lines. Some platforms, like Microsoft Dynamics Business Central, will require you to select a specific account of type “Posting” due to the nature of how Journals are posted in Business Central.
  • Either a total transaction Amount or amounts specified on a line item-by-line item basis. Total amounts are essential for properly balancing your books.

Journal Entries vs. Orders & Invoices

Popular ERP platforms, like SAP S/4HANA or Oracle NetSuite, can also be used for enterprise resource and inventory planning. As a result, a transaction in your platform can be represented through multiple entity types in one of these platforms – the key is context:
  • Journal Entries are manual accounting adjustments that directly post to G/L accounts for corrections, accruals, or transactions that don’t fit standard business processes
  • Invoices are customer billing documents that create accounts receivable and recognize revenue, typically following a sales process and requiring customer payment.
  • Orders are commitment documents that reserve inventory or services but don’t post financial transactions until converted to invoices or receipt.
Journal Entries are typically simpler to work with because the two main datapoints included in these entries are the debited/credited accounts and total amounts of each transaction. This generally means you don’t need to worry too much about managing Item IDs, Inventory, or Customers/Vendors. This makes Journal Entries perfect for financial reconciliation, when balancing your books is the sole objective.

Building Your First Integration

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

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 financial reconciliation – saving order and invoice syncing for a separate integration – or add your financial reconciliation workflows to your existing integration.

2. Capture Global Account Values With On-Installation Workflows

You may want your end-users to specify or create the relevant accounts and journals that will be associated with all of your Journal Entries. For example, in Microsoft Dynamics Business Central, we typically recommend that you as an ISV create a separate Journal for all transactions coming from your platform. Creating workflows to set these values on installation will ensure new Journal Entries live in the right place and are associated with the correct accounts.

3. Send Transactions/Journal Entries to Your Alloy Instance

New transactions can be retrieved from either a Custom Event or Polling Endpoint. We typically recommend invoking an Alloy Custom Event to send real-time transactions to Alloy as they’re created in your platform.Below is an example Custom Event triggering a Workflow that sends new Journal Entries for Microsoft Dynamics Business Central. Notice how account information is left out as the relevant Journal for this entry would’ve been specified by your end-user at installation.
{
  "event": "New Journal Entry",
  "userId": "6877f0a8d3a743bca19fbbf9",
  "data": {
    "id": "TRX124",
    "isReversal": false,
    "amount": 1.24,
    "currency": 818,
    "transactionType": 774,
    "merchantName": "Foo Mart",
    "mcc": 2741,
    "fullName": "John Smith",
    "transactionDatetime": "2025-07-01 01:23:45",
    "updatedAt": "2025-07-01 01:23:45"
  }
}
Conversely, the below Custom Event that triggers a Workflow sending new Journal Entries to Intuit Quickbooks. Quickbooks requires you to include at least two Journal Lines for each transaction, capturing both debited and credited account information and you can see how we include references to both of these accounts in our Custom Event payload.
{
  "event": "Journal Entry",
  "userId": "68addfecf247e957c9f302f9",
  "data": {
    "EntryDate": "2024-03-15",
    "Guidfield": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "Amount": 1500,
    "Memo": "Salary expense for March 2024",
    "DebitedAccountId": "75",
    "CreditedAccountId": "30",
    "Description": "Monthly payroll entry",
    "CalendarID": "PAY-2024-03-001"
  }
}
Custom Event Schemas are extremely flexible and you can define your own data structure when using them. We encourage you to construct your Custom Event Schema in a way that makes sense for your business, but at the very least you should include Quantity or Total Amount, Transaction Date and any other important Vendor or Customer Information.

4. Set up workflow(s) to sync transactions from your platform to your ERP of choice

We recommend setting up both real-time and historical import Workflows when possible. Real-time Workflows can be triggered via Custom Event when new Journal Entries are created in your platform, historical import Workflows can be triggered via an on-install trigger, much like the Workflows we covered in Step 2.If your Custom Event Schema contains all necessary transaction data and account reference IDs for your ERP of choice then you can generally pass all values directly from your Custom Event payload directly into the connector’s Create Journal Entry action.

5. Set up workflow(s) to import Journal Entries back into your systems

Bidirectional flow of Journal Entries is a key component of financial reconciliation and the process of balancing your books. Thus, you should also consider importing Journal Entries from your ERP of choice into your own platform. If Alloy supports ‘New Journal Entry’ triggers from that platform you can leverage these for real-time updates, just like real-time Journal Entries coming from your systems, described in Step 4.If no such triggers exist, at the very least you can import historical Journal Entries from the ERP on-install and/or on a recurring basis via the Scheduler.

6. 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.

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!