Skip to main content
Bkper Subledger Bot

Automatically consolidate Subledgers in a General Ledger

Updated over 3 months ago

The Bkper Subledger Bot records transactions from a subledger in a general ledger. The subledger can be a practical way to divide the administration of work into divisions with different responsibilities between teams.

To get an idea of such divisions you can think of a team that track receivables and another team that tracks payables or you can think of your subsidiaries that you want to consolidate in one book.

The Subledger Bot optimizes the consolidation of such partial administrations or sub ledgers into a single general ledger.



Set up the Subledger Bot

1. Create the General Ledger Book (parent book) and Sub ledger Book(s) (child book(s))

  1. Create a General Ledger book.

  2. Create a Subledger book (or as many as you want)
    ​

To make it easier to understand the custom properties that the Subledger Bot needs to function this help will refer to parent book for the general ledger book and to child book(s) for the sub ledger book(s). This is also essential for conceptional reasons because the parent book can be part of a tree where itself is a child book to another parent book.

2. Install the Subledger Bot on your books that are part of the consolidation.

  1. Open your books.

  2. Go to "Automations Portal" in the gear icon on the top right corner of your book.

  3. Choose Subledger Bot.

  4. Click install.
    ​

Note: It is not necessary to install the Subledger Bot on the parent book, but if you use the property child_book_id (see below) to sync accounts from incoming or outgoing groups than the subledger bot must also be installed on the parent book.

3: Associate a child book with a parent book to record transactions.

  1. In your Child book, go to the book properties, in the gear icon on the top right corner of your book.

  2. Click in the add property button (blue) to add the Subledger Bot properties.

  3. Insert the property parent_book_id in the key field and add the bookid of the parent book as the value for this key.
    ​
    You can find the parent bookId in it's url.
    ​

Note: If you want the transactions from the child book to be recorded as they are on the parent book you can start recording transactions from now on and they will be recorded on the parent book.

4. Map accounts from a group or account in the child book to one single account on the parent ledger.

This option associates a single account or the accounts in a group in a child book with one account on the parent book. Useful if you want to get the balance value of all child accounts summed in one account in the parent book. e.g. all customer accounts from a child book are recorded as one accounts receivable on the parent account.

To achieve this you have to add a custom property for a group or account on the child book.

  1. In a Child book, go to the chart of accounts.

    (click on Transactions in the left top corner and choose Accounts from the drop down box)

  2. Edit the group or account that you would like to associate with one single account on the parent book.

  3. Click in the add property button (blue) and insert the parent_account property in the key field and the Name of the account on the parent book as the value of this property.

From now on all the transactions that are recorded on the Child Book that include one of the accounts in the Accounts receivable group are recorded by the Subledger bot on the parent book using the Accounts Receivable A account to complete the transaction instead of Customer A or Customer B accounts.

5. Keep accounts on Child books in sync with the accounts in a group of the parent book.

Before explaining this utility it is important to remember that it requires the Subledger Bot to be installed on the parent book.

Syncing accounts from a parent book down to child books is necessary for incoming (green) and outgoing (red) accounts that can only be associated 1 on 1 and not as N on 1 with a parent book.

Setting this option on the parent book makes it easy to keep the chart of account amongst all of the child books in sync avoiding the overhead of having to create repeatedly accounts on all the child books manually.

Also you do not set incoming and outgoing accounts up as in number 3, from a group on a child book to a parent book account.

  1. In a Parent book, go to the chart of accounts.

    (click on Transactions in the left top corner and choose Accounts from the drop down box)

  2. Edit the group that you would like to associate with the accounts on a child book.

  3. Click in the add property button (blue) and insert the child_book_id property in the key field and the child books bookid as the value of this property.

6 Change the amount of a transaction on the parent book.

This is a Transaction property that can be set on each transaction you post on a child book and it serves to record a different amount on the parent book. You might need this when you want to record an amount after taxes on the parent book.

On a transaction add the property parent_amount and the Subledger Bot will record this value of this property as the transaction amount on the parent book instead of the original amount of the transaction on the child book.

1 Record a transaction with a parent amount property on a child book

2 This is what the transaction looks like on the child book.

3 This is the transaction recorded on the parent book by the Subledger Bot.

Note: when the parent_amount property has the value 0 it is skipped by the Subledger book when recording the transaction on the parent book.

Subledger bot example with permanent accounts

On the sub ledger (child book) I have my receivables grouped with the granularity of Customer accounts. (Customer A, Customer B etc.)

On the general ledger (parent book) I only want the group-level entry of the Accounts receivable.

On the child book I edit my Accounts Receivable Group and add the property parent_account with the value Accounts Receivable A. This account name identifies all the transactions from a particular child book (using the A as a distinguisher in this case) and it will be used to help the Bkper Bookbot complete the transaction that is recorded by the Subledger bot on the parent book.

On the child book post a transaction that include the accounts receivable Customer A.

These transactions are now recorded by the Subledger Bot on the parent Book with the value of the parent_account property.

Note: how the parent book would roll up all the Accounts Receivables A, B, C into a consolidated Balance Value of the group Account Receivables.

Subledger bot example with Non permanent accounts

Both on the parent book as well as the child book I have a group revenue with a few accounts in it. With the Subledger Bot installed these accounts will be used to record the transaction from the child book on the parent book.

Now to keep the accounts synchronized amongst the parent book and all its child books it would become an ordeal to create an account on all the children books.

So it would be handy that if all the accounts created on a parent book for a particular group would be synchronized on a particular child book.

So on the parent book you can set a property on a group that identifies the child book with the bookid.

Now when you add an account to the Revenue group on the parent book the Subledger Bot will create that account on the child book of this bookid.

1 Add a new Account to the group on the parent book.

2 Create a new account

3 The result on the child book

Note: the creation of the account by the Subledger Bot in the Activities.

Did this answer your question?