XML 25 R10.htm IDEA: XBRL DOCUMENT
v3.20.4

REVENUE | 12 Months Ended
--- | ---
Dec. 31, 2020
REVENUE |
REVENUE | NOTE 3—REVENUE The majority of our revenue is derived from contracts that can span from a few months to several years. We enter into contracts that can include various combinations of services, which, depending on contract type, are sometimes capable of being distinct. If services are determined to be distinct, they are accounted for as separate performance obligations. A performance obligation is a promise in a contract to transfer a distinct good or service to the client and is the unit of account. A contract’s transaction price is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied. The majority of our contracts have a single performance obligation as the promise to transfer the individual services is not separately identifiable from other promises in the contracts and, therefore, not distinct. For contracts with multiple performance obligations, including our managed service (GovernX) implementation, software and implementation, and research and subscription contracts, the Company allocates the transaction price to each performance obligation using our best estimate of the standalone selling price, or SSP, of each distinct good or service in the contract. Our contracts may include promises to transfer multiple services and products to a client. Determining whether services and products are considered distinct performance obligations that should be accounted for separately versus together may require judgment. Estimates were required to determine the SSP for each distinct performance obligation identified within our managed service (including GovernX) implementation contracts, software and implementation contracts, and research and subscription contracts. Contract Balances The timing of revenue recognition, billings, and cash collections results in billed accounts receivables, unbilled receivables (contract assets), and customer advances and deposits (contract liabilities). Our clients are billed based on the type of arrangement. A portion of our services is billed monthly based on hourly or daily rates. There are also client engagements in which we bill a fixed amount for our services. This may be one single amount covering the whole engagement or several amounts for various phases, functions, or milestones. Generally, billing occurs subsequent to revenue recognition, resulting in contract assets. However, we sometimes receive advances or deposits before revenue is recognized, resulting in contract liabilities. Contract assets and liabilities are generally reported in the current assets and current liabilities sections of the consolidated balance sheet, at the end of each reporting period, based on the timing of the satisfaction of the related performance obligation(s). For multi-year software sales with annual invoicing, we perform a significant financing component calculation and recognize the associated interest income throughout the duration of the financing period. In addition, we reclassify the resulting contract asset balances as current and noncurrent receivables as receipt of the consideration is conditional only on the passage of time and there are no performance risk factors present. See the table below for a breakdown of contract assets and contract liabilities. ​
​ | ​ | ​ | ​ | ​ | ​ | ​
​ |  | December 31, |  | December 31,
​ |  | 2020 |  | 2019
Contract assets | ​ | $ | 21,825 | ​ | $ | 28,529
Contract liabilities | ​ | $ | 5,121 | ​ | $ | 4,935
​ Revenue recognized for the year ended December 31, 2019 that was included in the contract liability balance at January 1, 2019 was $5.9 million and represented primarily revenue from our software and implementation contracts, managed services contracts, and research contracts. Revenue recognized for the year ended December 31, 2020 that was included in the contract liability balance at January 1, 2020 was $4.6 million and represented primarily revenue from our software and implementation contracts, managed services contracts, and research contracts. Remaining performance obligations As of December 31, 2020, the Company had $93.2 million of remaining performance obligations, the majority of which are expected to be satisfied within the next year.

X
- References No definition available. + Details
Name: | us-gaap_RevenueFromContractWithCustomerAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -URI http://asc.fasb.org/topic&trid=49130388 + Details
Name: | us-gaap_RevenueFromContractWithCustomerTextBlock
Namespace Prefix: | us-gaap_
Data Type: | nonnum:textBlockItemType
Balance Type: | na
Period Type: | duration