XML 36 R25.htm IDEA: XBRL DOCUMENT
v3.26.1

Revenue (Tables) | 6 Months Ended
--- | ---
Jun. 30, 2026
Revenue from Contract with Customer [Abstract] |
Summary of Revenues by Revenue Stream and Customer Type | We derive our revenues from the following revenue streams:
| Three Months Ended June 30, |  | Six Months Ended June 30,
(in thousands) | 2026 |  | 2025 |  | 2026 |  | 2025
Recurring revenues: |  |  |  |  |  |  |
Fulfillment | $ | 169,979 |  |  | $ | 158,991 |  |  | $ | 334,288 |  |  | $ | 311,622 |
Analytics | 14,139 |  |  | 13,944 |  |  | 28,271 |  |  | 27,646 |
Other | 6,304 |  |  | 6,186 |  |  | 12,383 |  |  | 12,182 |
Recurring revenues | 190,422 |  |  | 179,121 |  |  | 374,942 |  |  | 351,450 |
One-time revenues | 7,393 |  |  | 8,279 |  |  | 14,994 |  |  | 17,499 |
Total revenue | $ | 197,815 |  |  | $ | 187,400 |  |  | $ | 389,936 |  |  | $ | 368,949 |
Summary of Percentage of Domestic Revenue | Domestic revenue, which we define as revenue that was attributable to customers based within the United States ("U.S."), was as follows:
| Three Months Ended June 30, |  | Six Months Ended June 30,
| 2026 |  | 2025 |  | 2026 |  | 2025
Domestic revenue | 83 | % |  | 85 | % |  | 83 | % |  | 85 | %
Summary of Deferred Revenue Liability Relating to Set-Up Fees | The table below presents the activity of the portion of the deferred revenue liability relating to set-up fees. We expect to recognize $10.6 million of the balance as of June 30, 2026 as revenue over the next 12 months with the remaining amount recognized thereafter.
| Three Months Ended June 30, |  | Six Months Ended June 30,
(in thousands) | 2026 |  | 2025 |  | 2026 |  | 2025
Balance, beginning of period | $ | 14,426 |  |  | $ | 15,696 |  |  | $ | 14,625 |  |  | $ | 16,735 |
Invoiced set-up fees | 3,276 |  |  | 3,542 |  |  | 6,934 |  |  | 6,949 |
Recognized set-up fees | (3,733) |  |  | (4,231) |  |  | (7,590) |  |  | (8,677) |
Balance, end of period | $ | 13,969 |  |  | $ | 15,007 |  |  | $ | 13,969 |  |  | $ | 15,007 |

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 nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 275 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 18 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482861/275-10-50-18 Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 275 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 20 -Publisher FASB -URI https://asc.fasb.org/1943274/2147482861/275-10-50-20 + Details
Name: | us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration