XML 47 R31.htm IDEA: XBRL DOCUMENT
v3.25.0.1

REVENUE RECOGNITION (Tables) | 12 Months Ended
--- | ---
Dec. 31, 2024
REVENUE RECOGNITION |
Schedule of disaggregation of revenue | ​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | For the year ended December 31,
​ |  | ​ | 2024 |  | 2023 |  | 2022
Software subscriptions: | ​ | ​ |  | ​ | ​ |  | ​ | ​ |
Software licenses | ​ | $ | 291,081 | ​ | $ | 266,213 | ​ | $ | 246,577
Cloud subscriptions | ​ | ​ | 276,043 | ​ | ​ | 214,617 | ​ | ​ | 168,896
Software subscriptions | ​ | ​ | 567,124 | ​ | ​ | 480,830 | ​ | ​ | 415,473
Services | ​ |  | 99,652 | ​ |  | 91,557 | ​ |  | 76,151
Total revenues | ​ | $ | 666,776 | ​ | $ | 572,387 | ​ | $ | 491,624
Schedule of beginning and ending balances of accounts receivable, net of allowance | ​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | ​ | 2024 |  | 2023 |  | 2022
Balance, beginning of period | ​ | $ | 141,752 | ​ | $ | 102,885 | ​ | $ | 76,929
Balance, end of period | ​ |  | 164,432 | ​ |  | 141,752 | ​ |  | 102,885
Increase | ​ | $ | 22,680 | ​ | $ | 38,867 | ​ | $ | 25,956
Schedule of beginning and ending balances of and changes to the allowance and the deferred allowance | ​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | For the year ended December 31,
​ | ​ | 2024 | ​ | 2023 | ​ | 2022
​ | ​ | Balance |  | ​ | Net Change |  | Balance |  | ​ | Net Change | ​ | Balance | ​ | ​ | Net Change
Allowance balance, January 1, | ​ | $ | (16,272) |  | ​ |  | ​ | $ | (9,554) |  | ​ |  | $ | (9,151) | ​ | ​ | ​
Allowance balance, December 31, | ​ |  | (16,838) |  | ​ |  | ​ |  | (16,272) |  | ​ |  | ​ | (9,554) | ​ | ​ | ​
Change in allowance | ​ | ​ | ​ |  | $ | 566 | ​ | ​ | ​ |  | $ | 6,718 | ​ | ​ | ​ | $ | 403
Deferred allowance balance, January 1, | ​ |  | 11,741 |  | ​ |  | ​ |  | 7,133 |  | ​ |  | ​ | 6,537 | ​ | ​ | ​
Deferred allowance balance, December 31, | ​ |  | 12,028 |  | ​ |  | ​ |  | 11,741 |  | ​ |  | ​ | 7,133 | ​ | ​ | ​
Change in deferred allowance | ​ |  | ​ |  | ​ | (287) | ​ |  | ​ |  | ​ | (4,608) | ​ | ​ | ​ | ​ | (596)
Net amount charged to revenues | ​ | ​ | ​ |  | $ | 279 | ​ | ​ | ​ |  | $ | 2,110 | ​ | ​ | ​ | $ | (193)
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​
​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | As of December 31,
​ | ​ | 2024 | ​ | 2023
Balances: |  | ​ | ​ | ​ | ​ |
Deferred revenue, current | ​ | $ | 339,326 | ​ | $ | 290,143
Deferred revenue, non-current | ​ |  | 4,840 | ​ |  | 2,577
Total deferred revenue | ​ | $ | 344,166 | ​ | $ | 292,720
​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | For the year ended December 31,
​ | ​ | 2024 | ​ | 2023 | ​ | 2022
Changes to deferred revenue: |  | ​ |  |  | ​ |  |  | ​ |
Beginning balance | ​ | $ | 292,720 | ​ | $ | 279,136 | ​ | $ | 249,010
Additional amounts deferred | ​ |  | 718,222 | ​ |  | 585,971 | ​ |  | 521,750
Revenues recognized | ​ |  | (666,776) | ​ |  | (572,387) | ​ |  | (491,624)
Ending balance | ​ | $ | 344,166 | ​ | $ | 292,720 | ​ | $ | 279,136
Schedule of information about the balances of and changes to deferred revenue | ​
​ | ​ | ​ | ​
Year Ending December 31, |  | ​ | ​
2025 | ​ | $ | 339,326
2026 | ​ |  | 4,840
2027 | ​ |  | —
Total | ​ | $ | 344,166
Schedule of information about the changes to contract cost balances | ​
​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​ | ​
​ | ​ | For the year ended December 31,
​ | ​ | 2024 | ​ | 2023 | ​ | 2022
Deferred commissions: |  | ​ |  |  | ​ |  |  | ​ |
Beginning balance | ​ | $ | 21,237 | ​ | $ | 15,463 | ​ | $ | 12,555
Additions | ​ |  | 23,736 | ​ |  | 16,552 | ​ |  | 13,913
Amortization | ​ |  | (17,493) | ​ |  | (10,778) | ​ |  | (11,005)
Ending balance | ​ | $ | 27,480 | ​ | $ | 21,237 | ​ | $ | 15,463
3.​​

X
- Definition Tabular disclosure of allowance for credit loss on accounts receivable. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 326 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 13 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479319/326-20-50-13 + Details
Name: | us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of cost capitalized in obtaining or fulfilling contract with customer. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 340 -SubTopic 40 -Name Accounting Standards Codification -Section 50 -Paragraph 3 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479483/340-40-50-3 + Details
Name: | us-gaap_CapitalizedContractCostTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 10 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-10 + Details
Name: | us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 606 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 5 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479806/606-10-50-5 + Details
Name: | us-gaap_DisaggregationOfRevenueTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

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 Tabular disclosure of the various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Topic 210 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(4)) -Publisher FASB -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Topic 210 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(3)) -Publisher FASB -URI https://asc.fasb.org/1943274/2147480566/210-10-S99-1 + Details
Name: | us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration