v3.25.2
Revenue Recognition
6 Months Ended
Jun. 30, 2025
Revenue Recognition [Abstract]  
Revenue Recognition
2.
Revenue Recognition

We recognize revenue when we transfer control of the promised products or services to our customers, in an amount that reflects the consideration we expect to be entitled to in exchange for those products or services. We derive our revenue from cloud subscriptions, software licenses, customer support services and software enhancements (“maintenance”) for software licenses, professional services, and sales of hardware. We exclude sales and usage-based taxes from revenue.

Nature of Products and Services

Cloud subscriptions include software as a service (“SaaS”) and arrangements which provide customers with the right to use our software within a cloud environment that we provide and manage where the customer does not have the right to take possession of the software without significant penalty. SaaS and hosting revenues are recognized over the contract period.

Our services revenue consists of fees generated from implementation, training and application managed services, including reimbursements of out-of-pocket expenses in connection with our implementation services. Implementation services include system planning, design, configuration, testing, and other software implementation support, and are typically optional and distinct from our software. Following implementation, customers may purchase application managed services to support and maintain our software. Fees for our services are separately priced and are generally billed on an hourly basis, and revenue is recognized over time as the services are performed. In certain situations, we render professional services under agreements based upon a fixed fee for portions of or all of the engagement. Revenue related to fixed-fee-based services contracts is recognized over time based on the proportion performed.

We provide maintenance services to customers who have previously purchased a perpetual license, including a comprehensive 24 hours per day, 365 days per year program that provides customers with software upgrades, when and if available, which include

additional or improved functionality and technological advances incorporating emerging supply chain and industry initiatives. Maintenance contracts typically only have one performance obligation. Revenue related to maintenance is generally paid in advance and recognized over the term of the agreement, typically twelve months.

Our perpetual software licenses provide the customer with a right to use the software as it exists at the time of purchase. We recognize revenue for distinct software licenses once the license period has begun and we have made the software available to the customer. The selling prices of our software licenses are highly variable. Thus, we estimate standalone selling price ("SSP") for software licenses using the residual approach, determined based on total transaction price less the SSP of other goods and services promised in the contract. Perpetual software license revenue accounts for approximately 2% of total revenue.

Our customers periodically purchase hardware products developed and manufactured by third parties from us for use with the software licenses purchased from us. These products include computer hardware, radio frequency terminal networks, radio frequency identification (RFID) chip readers, bar code printers and scanners, and other peripherals. As we do not physically control the hardware that we sell, we are acting as an agent in the transaction and recognize our hardware revenue net of related cost. We recognize hardware revenue when control is transferred to the customer upon shipment.

Significant Judgments

Our cloud contracts with customers can include the sales of SaaS and services. We allocate the transaction price to the distinct performance obligations based on relative SSP. We estimate SSP based on the prices charged to customers, or by using information such as market conditions and other observable inputs. The selling price of our cloud subscriptions are highly variable. Thus, we estimate SSP for our cloud subscriptions and using the residual approach, determined based on total transaction price less the SSP of other goods and services promised in the contract.

Contract Balances

Cloud subscriptions and maintenance for perpetual software licenses are typically billed annually in advance. Timing of invoicing to customers may differ from timing of revenue recognition. Payment terms for our software licenses vary. We have an established history of collecting under the terms of our software license contracts without providing refunds or concessions to our customers. Services are typically billed monthly as performed. In instances where the timing of revenue recognition differs from the timing of invoicing, we have determined that our contracts generally do not include a significant financing component. The primary purpose of our invoicing terms is to provide customers with predictable ways to purchase our software and services, not to provide or receive financing. Additionally, we are applying the practical expedient to exclude from consideration any contracts with payment terms of one year or less. We rarely offer terms extending beyond one year.

Deferred revenue represents amounts collected prior to having completed performance of cloud subscriptions, maintenance, and professional services. In the three and six months ended June 30, 2025, we recognized $80.3 million and $205.2 million of revenue that was included in the deferred revenue balance as of December 31, 2024. In the three months ended June 30, 2025, we recognized $129.5 million of revenue that was included in the deferred revenue balance as of March 31, 2025.

Remaining Performance Obligations

As of June 30, 2025, approximately $2.0 billion of revenue is expected to be recognized from remaining performance obligations. Over 98% of our remaining performance obligations represent cloud native subscriptions with a non-cancelable term greater than one year (including cloud-deferred revenue as well as amounts we will invoice and recognize as revenue from our performance of cloud services in future periods). Maintenance contracts for perpetual software licenses are typically one year in duration and are not included in the remaining performance obligations. We expect to recognize revenue on approximately 38% of these remaining performance obligations over the next 24 months with the majority of the remaining balance recognized over the following 36 months. We have elected not to provide disclosures regarding remaining performance obligations for contracts with a term of 1 year or less.

Returns and Allowances

We have not experienced significant returns or warranty claims to date and, as a result, have not recorded a provision for the cost of returns and product warranty claims.

We record an allowance for credit losses utilizing a model of internal historical losses data. In estimating the allowance for credit losses, we considered our historical write-offs, the historical creditworthiness of the customer, and other factors. We also analyzed expected credit losses given future risks in projected economic conditions and future risks of customer collection. Should any of these factors change, the estimates made by us will also change accordingly, which could affect the level of our future allowances. Additions to the allowance for credit losses are recorded in general and administrative expense and were immaterial in all periods presented. Our credit loss reserve was $0.9 million as of June 30, 2025 and December 31, 2024.

We also reduce accounts receivable with a corresponding reduction in services revenue for the most likely amount of potential service revenue adjustments based on a detailed assessment of accounts receivable. The total amount recorded to services revenue was $0.1 million and $0.8 million for the three months ended June 30, 2025 and 2024, respectively, and $0.3 million and $1.1 million for the six months ended June 30, 2025 and 2024, respectively. As of June 30, 2025 and December 31, 2024, we have reduced our accounts receivable balance by $2.5 million and $2.8 million, respectively, for these potential adjustments.

Deferred Commissions

We consider sales commissions to be incremental costs of obtaining a contract with a customer. We defer and recognize an asset for sales commissions related to performance obligations with an expected period of benefit of more than one year. We amortize these amounts over the expected benefit period, which we estimate by considering several factors, including the rate of technological change and duration of our customer contracts. Sales commission for renewal contracts are amortized over the related contractual renewal period. We apply the practical expedient to expense sales commissions when the amortization period would have been one year or less. Deferred commissions were $45.6 million as of June 30, 2025, of which $32.4 million is included in other assets and $13.2 million is included in prepaid expenses. Sales commission expense is included in Sales and Marketing expense in the accompanying Consolidated Statements of Income. Amortization of sales commissions was $2.9 million and $2.6 million for the three months ended June 30, 2025 and 2024, respectively, and $5.8 million and $5.3 million for the six months ended June 30, 2025 and 2024, respectively. No impairment losses were recognized during the periods.