BLOG:  Digital Financial Reporting

This is a blog for information relating to digital financial reporting.  This blog is basically my "lab notebook" for experimenting and learning about XBRL-based digital financial reporting.  This is my brain storming platform.  This is where I think out loud (i.e. publicly) about digital financial reporting. This information is for innovators and early adopters who are ushering in a new era of accounting, reporting, auditing, and analysis in a digital environment.

Much of the information contained in this blog is synthasized, summarized, condensed, better organized and articulated in my book XBRL for Dummies and in the chapters of Intelligent XBRL-based Digital Financial Reporting. If you have any questions, feel free to contact me.

Entries from May 1, 2020 - May 31, 2020

Does Anyone Else Grasp the Importance of This?

This page details what I explained in this blog post.  I am curious as to whether anyone else grasps the importance of what I am seeing here: (if this makes sense to you, please let me know; if not, let me know what might be missing)

  1. Take a set of journal entries.  Here they are in machine readable XBRL Global Ledger format and Plain Text Accounting format. Here is the same information in human readable Excel and PDF.
  2. Import the journal entries into an accounting system such as Ledger, hledger, my Microsoft Access Database, or any other accounting system for that matter.  You can then do things with that information.
  3. Within the accounting system you can generate things like a trial balance of accounts (status of each account), a roll forward for each account (impact of transactions on account), filter information using the information provided in the journal entries.
  4. But, the accounts are a flat list.
  5. You can get a trial balance of accounts. You can get a summary of the changes grouped by the type of change. You can put those two together and get a roll forward of each and every balance sheet account: Cash and cash equivalents; Receivables; Inventories; PPE; Accounts payable; Long-term debt; Retained earnings.
  6. However, if you use information such as that provide in an XBRL taxonomy, about the model of a report; you can both organize the accounts into a hierarchy and control the process of creating such a hierarchy.  Here is that XBRL taxonomy schema in machine readable form.
  7. Using only the journal entries and the XBRL taxonomy for the report you can generate a machine readable report; here is that XBRL instance.  (Less than 100 lines of code were used to generate the information that makes up the XBRL instance, mainly a bunch of SQL INSERT statements.)
  8. The machine-readable journal entries, machine-readable report model, machine-readable reported facts, and machine-readable rules enable the automation of many audit tasks.  For example, this analysis of transaction change codes by account is consistent with expected relations matrix was created simply by reading the XBRL-based journal entries.  Variance analysis, peer analysis, many account analysis steps, and many other internal audit and external audit tasks and processes can be effectively automated.
  9. A software application can turn that XBRL instance into a human readable report.  Here is that same report formatted as Inline XBRL.  The report could be static like a traditional financial report or dynamic (think pivot table).
  10. If you don't like the auto-generated human readable report you can do a little more work to specify formatting; then you can generate a pixel perfect human readable rendering that is also machine readable.  You can also generate PDF (that is from another example) if you desire using a similar process. (I don't have an example, but you could also generate a Microsoft Word document in this manner.)
  11. Both the Inline XBRL and the Raw XBRL enable information to be reliably extracted from the reports for down stream processes such as analysis of the information.
  12. This entire process is controlled and monitored by machine readable rules that will point out any mistakes in the information to the extent that machine-readable rules exist.  Mathematical computations are monitored by rules, rules, and more rules. Structural rules monitor the information structure. Disclosure rules (i.e. reporting checklist) monitor what is disclosed as contrast to what is required.  The more machine-readable rules, the more work can be automated.
  13. Quality control checks and third-party checks can be done using the machine-readable journal entries and reports to automate a portion of those processes.
  14. Professional accountants can focus on value-add activities such as financial analysis and less on the gruesome, grueling, monotonous, repetitive tasks.

This simple example has all the moving parts of a larger set of journal entries and a larger report, say the 10-K financial reports for a company like Microsoft.  Apple, Amazon, Facebook, Google, and Salesforce all work the same way.

BOTTOM LINE: This is a demonstration of how to automate accounting, reporting, auditing, and analysis processes using the global standard XBRL and the Standard Business Report Model (SBRM).  This example has 100% of the required information (i.e. metadata) to move from journal entries to report.  This process was created in a Microsoft Access database application using mainly SQL queries and basic VBA programming.  Likewise, all the rules used in the control/monitoring process were created in Microsoft Access.  Off-the-shelf software for working with XBRL ran the rules.  Four different software applications get identical results (XBRL Cloud XRun, XBRL Cloud web service, UBmatrix, Pesseract).

For more information see here and hereInformation quality matters.  Expose the hidden data factory that corrects errors.

Continuous Improvement, Russ Ackoff Video

Posted on Saturday, May 30, 2020 at 09:14AM by Registered CommenterCharlie in | CommentsPost a Comment | EmailEmail | PrintPrint

Connecting Accounting, Reporting, Auditing, and Analysis

Automation is about removing friction, driving down costs, speeding processes up, and generally improving efficiency.  Automation is about delivering cheaper and better goods and services for less cost.

In previous iterations related to connecting accounting, reporting, auditing, and analysis; I learned about many of the issues related to creating those connections.  Examples of those issues can be distilled down to the following essence:

  • Inappropriately set up chart of accounts.
  • Inappropriate mapping between chart of accounts and financial report line items. (i.e. lead schedules)
  • Information (metadata) used to correctly categorize report information missing from the accounting system therefore automation is impossible. (i.e. explicitly add information to system at the first opportunity where possible)
  • Information that is unavailable to automated processes. (i.e. policies not in accounting system, qualitative disclosures not in accounting system)
  • Errors. (i.e. lack of control processes, use of Lean Six Sigma philosophies and techniques)
  • Complexity. (i.e. multi-currency, multi-gaap, multi-subsidiaries, multi-special ledgers, multiple accounting systems, etc.)

Sure, there are other issues but the above issues is a really good intitial list of what needs to be overcome.

So why is this important? If you watch the interview of Ray Dalio related to systematizing and computerizing decision making, or listen to IBM's CEO, or ask yourself why OMG and others created a digital twins consortium, or think about what it takes to create a mirror world; all this makes complete sense. (If you don't understand this now but want to, I would suggest starting here.)

For this most current iteration I am expanding an already working record to report prototype that I created.  That example was 95% complete before I learned about plain text accounting.  I incorporated plain text accounting journal entries supported by Ledger and hledger into that prototype, basically serializing the existing small set of journal entries from one general journal to the format supported by Ledger and then running the transactions through ledger to see what I got.

Next objective

My next objective is the following.  First, considering that everyone and their brother now says they have "stuff" that will help organizations make the digital transformation but none of them actually provide any real details; I wanted to create my own world-class, best practices-based, standards-based open source offering that actually works as proof that all this can, in fact, work and truly understand HOW to make it work effectively. (Here is KPMG's offering for comparison.)

Second, given that most accounting systems don't have the necessary metadata included I wanted to work with accounting systems that do allow you to add the necessary metadata; both Ledger and hledger fit the bill.

Third, given that most people cannot make the mental leap and believe that 14 journal entries from one journal can prove anything; I am going to expand the example to 187 journal entries from 7 different journals to make the example more believable to the hard to convince.

The objective is the following (i.e. connecting all these things for a machine in a form understandable and usable by business professionals; for more information see the Essence of Accounting):

  1. Journal entries (i.e. input): Start with journal entries.  They are in my Microsoft Access database "accounting system" which I can PRINT to PDF, export to XBRL Global Ledger format, or export to plain text accounting format.
  2. Process in accounting system: I want to be able to process the journal entries in the accounting system effectively.  This includes:
    1. Transactions register by account: hledger | Access
    2. Trial balance of accounts: hledger | Access | XBRL Cloud
    3. Roll forward summary analysis: hledger | XBRL Cloud
    4. Roll forward of accounts: hledger | Access
    5. Balance sheet: hledger | XBRL Cloud
    6. Income statement: hledger | XBRL Cloud
    7. Cash flow statement: hledger | XBRL Cloud
    8. Statement of changes in equity: hledger (nothing) | XBRL Cloud
  3. External report (i.e. output): Generate an external financial report for the primary financial statements (for now); note that these examples are from a different prototype; the goal of this prototype is to generate all of this for the 187 transactions from the 7 different journals:
    1. External financial report: Human readable PDF | Raw XBRL | Inline XBRL (human and machine readable) | XBRL Cloud Proprietary Rendering
  4. Audit external report: Be able to extract information from the external financial report such that reported information can be verified by an independent third-party accountant assisted by artificial intelligence tools.
    1. Artificial intelligence assisted audit: Mindbridge | AICPA | Dynamic Audit Solution Initiative | xAudit
    2. Example audit schedule which would be created for every audit lead schedule category.
  5. Extract information for analysis: Extract information from report for automated analysis by a regulator, an investor, analyst, bank commercial loan department, internal benchmarking, variance analysis as part of external audit, etc.
    1. Analysis: Discounted cash flow model | XBRLogic | Excel Information Extraction Prototype | Information Repository prototype | Report Validation Dashboard
    2. Example of analysis model (Unlevered discounted cash flow model)

And so that is my objective; a working proof of concept that shows all of the above in a form that is understandable to both professional accountants and computer scientists.

To keep tabs on this project, watch this pageWalk through this document.

How do I and other software vendors achieve all this?  If you want to understand, first invest in reading this document Artificial Intelligence and Knowledge Engineering Basics in a Nutshell which provides critically important background information. Next, read this Special Theory of Machine-based Automated Communication of Semantic Information of Financial Statements which explains how to effectively create the necessary capabilities. Finally, study the Logical Theory Describing Financial Report.

The market will decide what success looks like.

Finance transformation is a thing. PWC says that AI will create a huge market opportunity, $15.7 trillion, a 14% increase in GDP! Most people don't really understand AI correctly these days.  If you can figure this out and do it right as contrast to creating some cheap parlor tricks or a fragile house of cards; you can likely succeed.  As the Harvard Business Review points out, this is about talent, not technology.

Posted on Friday, May 29, 2020 at 06:41AM by Registered CommenterCharlie in | CommentsPost a Comment | EmailEmail | PrintPrint

The Data-Centric Revolution

"Silo-ization is a learned behavior that needs to be unlearned."

This is an excellent article that should be read by every business professional; it will help you understand the future: The Data-Centric Revolution: An Interview with Dave McComb.  Here is the summary:

Summary: Are today's economics of software projects and support inevitable? No. They are a product of the fact that the industry has collectively chosen the application-centric route to implementing new functionality. When every business problem calls for a new application and every new application comes with its own database, what you really get is runaway complexity. Many clients have thousands of applications. But it isn't inevitable. A few firms have shown the way out: data-centric development. In this ground-breaking interview, Dave McComb explains what being 'data-centric' is about and how it can be made to work.

 

Posted on Wednesday, May 27, 2020 at 10:23AM by Registered CommenterCharlie | CommentsPost a Comment | EmailEmail | PrintPrint

Improving Accounting, Reporting, Auditing and Analysis Tasks and Processes

It seems that everybody and their brother now thinks that improving accounting, reporting, auditing, and analysis tasks and processes is a good idea.  Some call this continuous accounting.  Others use different names.  Here are offerings or visions from: 

  • KPMG: Performance on Demand for Finance (read this PDF)
  • EY: The DNA of the CFO
  • Deloitte: Preparing for the Future of Finance - Now
  • PWC: Where should your finance transformation begin

So, I created my own offering which is a global standard proven relable best practices method for improving accounting, reporting, auditing, and analysis tasks and processes.

The cornerstone of my method is the logical conceptualization of a financial report

Posted on Wednesday, May 27, 2020 at 08:55AM by Registered CommenterCharlie in | CommentsPost a Comment | EmailEmail | PrintPrint

Control of a System

If you listened to the video of Ray Dalio being interviewed by Garry Kasparov where they talk about artificial intelligence, AI and Algorithmic Decistion Making, you heard Ray Dalio explaining how important it is to distinguish between “closed systems” as contrast to “open systems”.  I am in complete agreement.

Why is this important?  It is important to understand the difference between the reliability and predictability (i.e. tolerance for error) that you get from open versus closed systems and how much effort it takes to manage that control.  Systems need to be controlled.  Rework is expensive.

I have not found a discussion of "control" that specifically relates to computer systems.  I sometimes use the terms "finite" as contrast to "infinite" to describe what I am getting at.  Other times I used the notions of "open systems" as contrast to "closed systems".

I found three Wikipedia articles that discuss this notion: Closed system (control theory); Classical control theory, and Control theory.  I also found this article, An Introduction to Systems and Control Theory for Computer Scientists and Engineers, which points out:

“software engineers need to use control concepts to master the ever-increasing complexity of computing systems” 

Guaranteed performance is a good thing.  Stability is a good thing.  Being as high as possible on the knowledge representation spectrum is a good thing.

Admittedly, I do not understand how to describe this formally.  However, I do understand that being able to control a system such as an XBRL-based digital financial report is a business requirment.  It is not a "nice to have" feature; it is a required feature.

I try to explain this in this document. I can point out all that is necessary with this logical theory.  I can prove that I am getting this right with these working proof of concepts and this conformance suite. And all this can be supplemented using the techniques and philosophies of Lean Six Sigma.

All of this can be applied to implement continuous accounting, reporting, and auditing effectively.

Not clear on what needs to be controlled?  Watch these three videos: Impediments Part 1; Impediments Part 2; Impediments Part 3.

Also, I added this Process Control video to the Understanding Financial Report Logical System playlist.

Posted on Thursday, May 21, 2020 at 07:47AM by Registered CommenterCharlie in | CommentsPost a Comment | EmailEmail | PrintPrint
Page | 1 | 2 | 3 | 4 | Next 5 Entries