<SEC-DOCUMENT>0001092699-26-000057.txt : 20260629
<SEC-HEADER>0001092699-26-000057.hdr.sgml : 20260629
<ACCEPTANCE-DATETIME>20260629164138
ACCESSION NUMBER:		0001092699-26-000057
CONFORMED SUBMISSION TYPE:	11-K
PUBLIC DOCUMENT COUNT:		32
CONFORMED PERIOD OF REPORT:	20251231
FILED AS OF DATE:		20260629
DATE AS OF CHANGE:		20260629

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			SPS COMMERCE INC
		CENTRAL INDEX KEY:			0001092699
		STANDARD INDUSTRIAL CLASSIFICATION:	SERVICES-PREPACKAGED SOFTWARE [7372]
		ORGANIZATION NAME:           	06 Technology
		EIN:				412015127
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		11-K
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-34702
		FILM NUMBER:		261136392

	BUSINESS ADDRESS:	
		STREET 1:		333 SOUTH SEVENTH STREET
		STREET 2:		SUITE 1000
		CITY:			MINNEAPOLIS
		STATE:			MN
		ZIP:			55402
		BUSINESS PHONE:		612-435-9400

	MAIL ADDRESS:	
		STREET 1:		333 SOUTH SEVENTH STREET
		STREET 2:		SUITE 1000
		CITY:			MINNEAPOLIS
		STATE:			MN
		ZIP:			55402
</SEC-HEADER>
<DOCUMENT>
<TYPE>11-K
<SEQUENCE>1
<FILENAME>spsc-20260629.htm
<DESCRIPTION>11-K
<TEXT>
<XBRL>
<?xml version='1.0' encoding='ASCII'?>
<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2026 Workiva-->
<!--r:019d726d-e0a2-7f08-9c37-20a11dea5949,g:aa020773-9240-4449-869e-daa4f8245da4,d:8b32d706373f464ab3aefbd75269be51-->
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2020-02-12" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dei="http://xbrl.sec.gov/dei/2026" xmlns:us-gaap-ebp="http://fasb.org/us-gaap-ebp/2026" xmlns:us-gaap="http://fasb.org/us-gaap/2026" xmlns:srt="http://fasb.org/srt/2026" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:spsc="http://www.spscommerce.com/20260629" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en-US"><head><meta http-equiv="Content-Type" content="text/html"/>


<title>spsc-20260629</title></head><body><div style="display:none"><ix:header><ix:hidden><ix:nonNumeric contextRef="c-2" name="dei:EntityCentralIndexKey" id="f-5">0001092699</ix:nonNumeric><ix:nonNumeric contextRef="c-1" name="dei:EntityCentralIndexKey" id="f-6">0001092699</ix:nonNumeric><ix:nonNumeric contextRef="c-1" name="dei:AmendmentFlag" format="ixt:fixed-false" id="f-7">False</ix:nonNumeric><ix:nonNumeric contextRef="c-2" name="dei:AmendmentFlag" format="ixt:fixed-false" id="f-8">False</ix:nonNumeric><ix:nonNumeric contextRef="c-11" name="spsc:EBPNoteReceivableFromParticipantBorrowingTerm" id="f-58">P1Y</ix:nonNumeric><ix:nonFraction unitRef="number" contextRef="c-2" decimals="INF" name="us-gaap-ebp:EmployeeBenefitPlanEmployerContributionMatchingPercentage" scale="-2" id="f-65">50</ix:nonFraction></ix:hidden><ix:references xml:lang="en-US"><link:schemaRef xlink:type="simple" xlink:href="spsc-20260629.xsd"/></ix:references><ix:resources><xbrli:unit id="usd"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:unit id="year"><xbrli:measure>spsc:year</xbrli:measure></xbrli:unit><xbrli:unit id="number"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:unit id="loan"><xbrli:measure>spsc:loan</xbrli:measure></xbrli:unit><xbrli:unit id="shares"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:context id="c-1"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-2"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-3"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-4"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-5"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-6"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-7"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-8"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-9"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:DefinedBenefitPlanCommonCollectiveTrustMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-10"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:DefinedBenefitPlanCommonCollectiveTrustMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-11"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-12"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="spsc:EBPEmployerContributionVestingAxis">spsc:EBPVestingScheduleTrancheOneMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-13"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="spsc:EBPEmployerContributionVestingAxis">spsc:EBPVestingScheduleTrancheTwoMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-14"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="spsc:EBPEmployerContributionVestingAxis">spsc:EBPVestingScheduleTrancheTwoMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-15"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="spsc:EBPEmployerContributionVestingAxis">spsc:EBPVestingScheduleTrancheThreeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-16"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="spsc:EBPEmployerContributionVestingAxis">spsc:EBPVestingScheduleTrancheThreeMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-17"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2025-01-01</xbrli:startDate><xbrli:endDate>2025-12-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="c-18"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-19"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-20"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-21"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel12And3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-22"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-23"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-24"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-25"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel12And3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-26"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-27"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-28"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-29"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel12And3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-30"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:DefinedBenefitPlanCommonCollectiveTrustMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueMeasuredAtNetAssetValuePerShareMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-32"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-33"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-34"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel12And3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-35"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-36"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-37"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-38"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel12And3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-39"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-40"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-41"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-42"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel12And3Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-43"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:DefinedBenefitPlanCommonCollectiveTrustMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueMeasuredAtNetAssetValuePerShareMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2024-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-44"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2055 Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-45"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2050 Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-46"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2045 Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-47"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2060 Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-48"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2040 Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-49"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2035 Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-50"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2030 Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-51"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2065 Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-52"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2025 Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-53"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Collective trust funds| Prudential| Total Return Bond Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-54"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Collective trust funds| Union Bank and Trust Company| Morley Stable Value Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-55"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement Income Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-56"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2020 Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-57"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2070 Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-58"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Mutual funds| Fidelity| Institutional 500 Index Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-59"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Mutual funds| J.P. Morgan| Large Cap Growth Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-60"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Mutual funds| Fidelity| Mid-Cap Index Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-61"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Mutual funds| Fidelity| MFS Research International Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-62"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Mutual funds| Fidelity| MFS Value Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-63"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Mutual funds| Fidelity| Small Cap Growth Index Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-64"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Mutual funds| Fidelity| Small Cap Value Index Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-65"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Mutual funds| Fidelity| US Bond Index Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-66"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Mutual funds| Fidelity| Total International Index Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-67"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Mutual funds| Fidelity| Small Cap Index Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-68"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Mutual funds| PIMCO| Income Institutional Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-69"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Mutual funds| Principal| Mid-Cap Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-70"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain>Mutual funds| John Hancock| Disciplined Value Mid-Cap Fund</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="c-71"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001092699</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember><xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis"><us-gaap:limitedToken.domain> SPS Commerce, Inc.| Common Stock</us-gaap:limitedToken.domain></xbrldi:typedMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2025-12-31</xbrli:instant></xbrli:period></xbrli:context></ix:resources></ix:header></div><div id="i8b32d706373f464ab3aefbd75269be51_1"></div><div style="min-height:43.92pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:18pt;font-weight:700;line-height:100%">UNITED STATES</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:18pt;font-weight:700;line-height:100%">SECURITIES AND EXCHANGE COMMISSION</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:12pt;font-weight:700;line-height:100%">WASHINGTON, D.C. 20549</span></div><div style="margin-top:8pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:18pt;font-weight:700;line-height:100%">FORM <ix:nonNumeric contextRef="c-1" name="dei:DocumentType" id="f-1"><ix:nonNumeric contextRef="c-2" name="dei:DocumentType" id="f-2">11-K</ix:nonNumeric></ix:nonNumeric></span></div><div style="margin-top:12pt;padding-left:18pt;text-indent:-18pt"><span style="background-color:#ffffff;color:#000000;font-family:'Cambria Math',serif;font-size:10pt;font-weight:400;line-height:100%">&#8864;</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">ANNUAL REPORT PURSUANT TO SECTION 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</span></div><div style="margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">For the &#64257;scal year ended December&#160;31, 2025</span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">OR</span></div><div style="margin-top:6pt;padding-left:18pt;text-indent:-18pt"><span style="background-color:#ffffff;color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#9744;</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#160;&#160;&#160;&#160;</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">TRANSITION REPORT PURSUANT TO SECTION 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</span></div><div style="margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">For the transition period from</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">     </span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%"> to </span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">     </span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">     </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:13.5pt;font-weight:400;line-height:100%">&#160;</span></div><div style="padding-left:216pt;padding-right:216pt;text-align:center"><span><br/></span></div><div style="margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Commission &#64257;le number 001-34702</span></div><div style="margin-top:6pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">A.&#160;&#160;&#160;&#160;Full title of the plan and the address of the plan, if different from that of the issuer named below:</span></div><div style="margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">SPS Commerce, Inc. 401(k) Retirement Savings Plan</span></div><div style="margin-top:6pt;padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">B.&#160;&#160;&#160;&#160;Name of issuer of the securities held pursuant to the plan and the address of its principal executive of&#64257;ce:</span></div><div style="margin-top:6pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:24pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="c-2" name="dei:EntityRegistrantName" id="f-3"><ix:nonNumeric contextRef="c-1" name="dei:EntityRegistrantName" id="f-4">SPS COMMERCE, INC.</ix:nonNumeric></ix:nonNumeric> </span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><img src="spsc-20260629_g1.jpg" alt="sps logo.jpg" style="height:72px;margin-bottom:5pt;vertical-align:text-bottom;width:75px" id="i-1"/></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">333 South Seventh Street, Suite 1000</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Minneapolis, Minnesota 55402</span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div style="height:65.52pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div><hr style="page-break-after:always"/><div style="min-height:43.92pt;width:100%"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b32d706373f464ab3aefbd75269be51_4">Table of Contents</a></span></div></div><div style="padding-left:0.18pt;padding-right:0.18pt;text-align:center"><span><br/></span></div><div id="i8b32d706373f464ab3aefbd75269be51_4"></div><div style="text-align:center"><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">SPS COMMERCE, INC.</span></div><div style="text-align:center"><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">ANNUAL REPORT ON FORM 11-K</span></div><div style="text-align:center"><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">TABLE OF CONTENTS</span></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:92.658%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.021%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.921%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Page</span></div></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:0.5pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:0.1pt"><span style="color:#3051f2;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%;text-decoration:underline"><a style="color:#3051f2;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%;text-decoration:underline" href="#i8b32d706373f464ab3aefbd75269be51_7">Report of Independent Registered Public Accounting Firm</a></span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i8b32d706373f464ab3aefbd75269be51_7">3</a></span></div></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><a style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%;text-decoration:none" href="#i8b32d706373f464ab3aefbd75269be51_10">Financial Statements:</a></span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:14.4pt"><span style="color:#3051f2;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#3051f2;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b32d706373f464ab3aefbd75269be51_13">Statements of Net Assets Available for Benefits</a></span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i8b32d706373f464ab3aefbd75269be51_13">4</a></span></div></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:14.4pt"><span style="color:#3051f2;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#3051f2;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b32d706373f464ab3aefbd75269be51_16">Statement of Changes in Net Assets Available for Benefits</a></span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i8b32d706373f464ab3aefbd75269be51_16">5</a></span></div></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:14.4pt"><span style="color:#3051f2;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#3051f2;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b32d706373f464ab3aefbd75269be51_19">Notes to Financial Statements</a></span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i8b32d706373f464ab3aefbd75269be51_19">6</a></span></div></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Supplementary Information*:</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:14.4pt"><span style="color:#3051f2;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#3051f2;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b32d706373f464ab3aefbd75269be51_37">Form 5500, Schedule H, Part IV, Line 4(i) &#8211; Schedule of Assets (Held at End of Year)</a></span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">10</span></div></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:0.1pt"><span style="color:#3051f2;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%;text-decoration:underline"><a style="color:#3051f2;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%;text-decoration:underline" href="#i8b32d706373f464ab3aefbd75269be51_40">Exhibit Index</a></span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i8b32d706373f464ab3aefbd75269be51_40">11</a></span></div></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:0.1pt"><span style="color:#3051f2;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%;text-decoration:underline"><a style="color:#3051f2;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%;text-decoration:underline" href="#i8b32d706373f464ab3aefbd75269be51_43">Signatures</a></span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"><a style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:none" href="#i8b32d706373f464ab3aefbd75269be51_43">11</a></span></div></td></tr></table></div><div><span><br/></span></div><div style="padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">*&#160;&#160;&#160;&#160;All other schedules required by 29 CFR 2520.103-10 of the Department of Labor&#8217;s Rules and Regulations for Reporting and Disclosure under the Employee Retirement Income Security Act of 1974, as amended (&#8220;ERISA&#8221;), are not included because they are not applicable. </span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Unless the context otherwise requires, for purposes of this Annual Report on Form 11-K, the word &#8220;Company&#8221; refers to SPS Commerce, Inc.</span></div><div><span><br/></span></div><div><span><br/></span></div><div style="height:65.52pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.951%"><tr><td style="width:1.0%"/><td style="width:42.573%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:35.772%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><img src="spsc-20260629_g1.jpg" alt="sps logo.jpg" style="height:18px;margin-bottom:5pt;vertical-align:text-bottom;width:19px" id="i-2"/><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:133%"> </span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:133%">SPS COMMERCE, INC. 401(K) RETIREMENT SAVINGS PLAN</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%">2</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:120%">Form 11-K for the Year Ended December&#160;31, 2025</span></td></tr></table></div><div><span><br/></span></div><div><span><br/></span></div></div></div><hr style="page-break-after:always"/><div style="min-height:43.92pt;width:100%"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b32d706373f464ab3aefbd75269be51_4">Table of Contents</a></span></div></div><div style="text-align:center"><span><br/></span></div><div id="i8b32d706373f464ab3aefbd75269be51_7"></div><div style="text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Report of Independent Registered Public Accounting Firm </span></div><div style="text-align:center"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:112%">To the SPS Commerce, Inc. 401(k) Retirement Savings Plan</span></div><div><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:112%">Plan Administrator and Plan Participants</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:95%">Opinion on the Financial Statements</span></div><div><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:95%">We have audited the accompanying statements of net assets available for benefits of SPS Commerce, Inc. 401(k) Retirement Savings Plan (the &#8220;Plan&#8221;) as of December 31, 2025 and 2024, and the related statement of changes in net assets available for benefits for the year ended December 31, 2025, and the related notes and schedule (collectively referred to as the financial statements). In our opinion, the financial statements present fairly, in all material respects, the net assets available for benefits of the Plan as of December 31, 2025 and 2024, and the changes in net assets available for benefits for the year ended December 31, 2025, in conformity with accounting principles generally accepted in the United States of America.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:95%">Basis for Opinion</span></div><div><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:95%">These financial statements are the responsibility of the Plan&#8217;s management.  Our responsibility is to express an opinion on the Plan&#8217;s financial statements based on our audits.  We are a public accounting firm registered with the Public Company Accounting Oversight Board (United States) (&#8220;PCAOB&#8221;) and are required to be independent with respect to the Plan in accordance with the U.S. federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:95%">We conducted our audits in accordance with standards of the PCAOB.  Those standards require that we plan and perform the audit to obtain reasonable assurance about whether the financial statements are free of material misstatement, whether due to error or fraud.  The Plan is not required to have, nor were we engaged to perform, an audit of its internal control over financial reporting.   As part of our audits, we are required to obtain an understanding of internal control over financial reporting but not for the purpose o expressing an opinion on the effectiveness of the Plan&#8217;s internal control over financial reporting.  Accordingly, we express no such opinion.  </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:95%">Our audits included performing procedures to assess the risks of material misstatement of the financial statements, whether due to error or fraud, and performing procedures that respond to those risks. Such procedures included examining, on a test basis, evidence regarding the amounts and disclosures in the financial statements.  Our audits also included evaluating the accounting principles used and significant estimates made by management, as well as evaluating the overall presentation of the financial statements.  We believe that our audits provide a reasonable basis for our opinion.       </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:95%">Supplemental Information</span></div><div><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:95%">The Schedule H, Line 4i &#8211; Schedule of Assets (Held at End of Year) as of December 31, 2025, has been subjected to audit procedures performed in conjunction with the audit of the Plan&#8217;s financial statements.  The supplemental information is the responsibility of the Plan&#8217;s management.  Our audit procedures included determining whether the supplemental information reconciles to the financial statements or the underlying accounting and other records, as applicable, and performing procedures to test the completeness and accuracy of the information presented in the supplemental information.  In forming our opinion on the supplemental information, we evaluated whether the supplemental information, including its form and content, is presented in conformity with the Department of Labor&#8217;s Rules and Regulations for Reporting and Disclosure under the Employee Retirement Income Security Act of 1974.  In our opinion, the supplemental information is fairly stated, in all material respects, in relation to the financial statements as a whole.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:95%">/s/ Wipfli LLP</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:95%">We have served as the Plan&#8217;s auditor since 2022.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:112%">Minneapolis, Minnesota </span><span style="background-color:#ffff00;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:112%"><br/></span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:112%">June&#160;29, 2026</span></div><div><span><br/></span></div><div><span><br/></span></div><div style="height:65.52pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.951%"><tr><td style="width:1.0%"/><td style="width:42.573%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:35.772%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><img src="spsc-20260629_g1.jpg" alt="sps logo.jpg" style="height:18px;margin-bottom:5pt;vertical-align:text-bottom;width:19px" id="i-3"/><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:133%"> </span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:133%">SPS COMMERCE, INC. 401(K) RETIREMENT SAVINGS PLAN</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%">3</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:120%">Form 11-K for the Year Ended December&#160;31, 2025</span></td></tr></table></div><div><span><br/></span></div><div><span><br/></span></div></div></div><hr style="page-break-after:always"/><div style="min-height:43.92pt;width:100%"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b32d706373f464ab3aefbd75269be51_4">Table of Contents</a></span></div></div><div><span><br/></span></div><div id="i8b32d706373f464ab3aefbd75269be51_10"></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div id="i8b32d706373f464ab3aefbd75269be51_13"></div><div style="text-align:center"><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">SPS COMMERCE, INC.</span></div><div style="text-align:center"><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">401(K) RETIREMENT SAVINGS PLAN</span></div><div style="text-align:center"><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">STATEMENTS OF NET ASSETS AVAILABLE FOR BENEFITS</span></div><div><span><br/></span></div><div style="padding-left:0.09pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:47.857%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.991%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.532%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.594%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.532%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.830%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.830%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.834%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">December 31,</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">2025</span></div></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">2024</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Assets</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Non-interest bearing cash</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanCash" format="ixt:num-dot-decimal" scale="0" id="f-9">1,920</ix:nonFraction>&#160;</span></div></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanCash" format="ixt:num-dot-decimal" scale="0" id="f-10">2,142</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Investments, at fair value</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 14.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Mutual funds</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-11">74,651,689</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-6" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-12">62,109,137</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 14.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">SPS Commerce, Inc. common stock</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-7" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-13">10,714,050</ix:nonFraction>&#160;</span></div></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-8" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-14">19,378,857</ix:nonFraction>&#160;</span></div></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 14.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Common collective trust funds</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-15">170,546,549</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-10" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-16">129,601,053</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Total investments</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-17">255,912,288</ix:nonFraction>&#160;</span></div></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-18">211,089,047</ix:nonFraction>&#160;</span></div></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Other receivables</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanOtherReceivable" format="ixt:num-dot-decimal" scale="0" id="f-19">4,721</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanOtherReceivable" format="ixt:fixed-zero" scale="0" id="f-20">&#8212;</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Notes receivable from participants</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanNoteReceivableFromParticipant" format="ixt:num-dot-decimal" scale="0" id="f-21">1,611,115</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanNoteReceivableFromParticipant" format="ixt:num-dot-decimal" scale="0" id="f-22">1,261,443</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Total receivables</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanReceivable" format="ixt:num-dot-decimal" scale="0" id="f-23">1,615,836</ix:nonFraction>&#160;</span></div></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanReceivable" format="ixt:num-dot-decimal" scale="0" id="f-24">1,261,443</ix:nonFraction>&#160;</span></div></td><td style="border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt 0 14.7pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Net assets available for benefits</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanNetAssetAvailableForBenefit" format="ixt:num-dot-decimal" scale="0" id="f-25">257,530,044</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanNetAssetAvailableForBenefit" format="ixt:num-dot-decimal" scale="0" id="f-26">212,352,632</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr></table></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">See accompanying Notes to Financial Statements</span></div><div style="margin-bottom:0.05pt;margin-top:0.05pt;text-align:center"><span><br/></span></div><div style="margin-bottom:0.05pt;margin-top:0.05pt;text-align:center"><span><br/></span></div><div style="height:65.52pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.951%"><tr><td style="width:1.0%"/><td style="width:42.573%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:35.772%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><img src="spsc-20260629_g1.jpg" alt="sps logo.jpg" style="height:18px;margin-bottom:5pt;vertical-align:text-bottom;width:19px" id="i-4"/><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:133%"> </span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:133%">SPS COMMERCE, INC. 401(K) RETIREMENT SAVINGS PLAN</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%">4</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:120%">Form 11-K for the Year Ended December&#160;31, 2025</span></td></tr></table></div><div><span><br/></span></div><div><span><br/></span></div></div></div><hr style="page-break-after:always"/><div style="min-height:43.92pt;width:100%"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b32d706373f464ab3aefbd75269be51_4">Table of Contents</a></span></div></div><div style="margin-bottom:0.05pt;margin-top:0.05pt;text-align:center"><span><br/></span></div><div id="i8b32d706373f464ab3aefbd75269be51_16"></div><div style="text-align:center"><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">SPS COMMERCE, INC.</span></div><div style="text-align:center"><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">401(K) RETIREMENT SAVINGS PLAN</span></div><div style="text-align:center"><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">STATEMENT OF CHANGES IN NET ASSETS AVAILABLE FOR BENEFITS</span></div><div><span><br/></span></div><div style="padding-left:0.04pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.183%"><tr><td style="width:1.0%"/><td style="width:80.755%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.739%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:15.106%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Year Ended </span></div><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">December 31, 2025</span></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Investment Activity &amp; Additions</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Investment income</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 14.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Net appreciation in fair value of investments</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment" format="ixt:num-dot-decimal" scale="0" id="f-27">23,867,828</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 14.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Interest and dividend income</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment" format="ixt:num-dot-decimal" scale="0" id="f-28">2,656,724</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 55.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Net investment income</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment" format="ixt:num-dot-decimal" scale="0" id="f-29">26,524,552</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Interest income on notes receivable from participants</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant" format="ixt:num-dot-decimal" scale="0" id="f-30">118,377</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Contributions</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 14.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Participant elective deferral</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover" format="ixt:num-dot-decimal" scale="0" id="f-31">21,422,325</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 14.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Employer matching</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash" format="ixt:num-dot-decimal" scale="0" id="f-32">6,099,464</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 14.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Participant rollovers</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover" format="ixt:num-dot-decimal" scale="0" id="f-33">3,694,989</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 55.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Total contributions</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution" format="ixt:num-dot-decimal" scale="0" id="f-34">31,216,778</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 55.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Total investment activity and additions</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease" format="ixt:num-dot-decimal" scale="0" id="f-35">57,859,707</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Deductions</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Benefits paid to participants</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant" format="ixt:num-dot-decimal" scale="0" id="f-36">18,327,587</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Administrative expenses</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense" format="ixt:num-dot-decimal" scale="0" id="f-37">249,299</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Total deductions</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease" format="ixt:num-dot-decimal" scale="0" id="f-38">18,576,886</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 55.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Net increase in net assets available for benefits</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease" format="ixt:num-dot-decimal" scale="0" id="f-39">39,282,821</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Transfer in</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-2" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan" format="ixt:num-dot-decimal" scale="0" id="f-40">5,894,591</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Net assets available for benefits</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Beginning of year</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanNetAssetAvailableForBenefit" format="ixt:num-dot-decimal" scale="0" id="f-41">212,352,632</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">End of year</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td style="background-color:#cff0fc;border-bottom:2.5pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-bottom:2.5pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanNetAssetAvailableForBenefit" format="ixt:num-dot-decimal" scale="0" id="f-42">257,530,044</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;border-bottom:2.5pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr></table></div><div><span><br/></span></div><div style="text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">See accompanying Notes to Financial Statements</span></div><div style="margin-bottom:0.05pt;margin-top:0.05pt;text-align:center"><span><br/></span></div><div style="margin-bottom:0.05pt;margin-top:0.05pt;text-align:center"><span><br/></span></div><div style="margin-bottom:0.05pt;margin-top:0.05pt;text-align:center"><span><br/></span></div><div style="margin-bottom:0.05pt;margin-top:0.05pt;text-align:center"><span><br/></span></div><div style="margin-bottom:0.05pt;margin-top:0.05pt;text-align:center"><span><br/></span></div><div style="margin-bottom:0.05pt;margin-top:0.05pt;text-align:center"><span><br/></span></div><div style="margin-bottom:0.05pt;margin-top:0.05pt;text-align:center"><span><br/></span></div><div style="margin-bottom:0.05pt;margin-top:0.05pt;text-align:center"><span><br/></span></div><div style="margin-bottom:0.05pt;margin-top:0.05pt;text-align:center"><span><br/></span></div><div style="margin-bottom:0.05pt;margin-top:0.05pt;text-align:center"><span><br/></span></div><div style="margin-bottom:0.05pt;margin-top:0.05pt;text-align:center"><span><br/></span></div><div style="margin-bottom:0.05pt;margin-top:0.05pt;text-align:center"><span><br/></span></div><div style="margin-bottom:0.05pt;margin-top:0.05pt;text-align:center"><span><br/></span></div><div style="margin-bottom:0.05pt;margin-top:0.05pt;text-align:center"><span><br/></span></div><div style="height:65.52pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.951%"><tr><td style="width:1.0%"/><td style="width:42.573%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:35.772%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><img src="spsc-20260629_g1.jpg" alt="sps logo.jpg" style="height:18px;margin-bottom:5pt;vertical-align:text-bottom;width:19px" id="i-5"/><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:133%"> </span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:133%">SPS COMMERCE, INC. 401(K) RETIREMENT SAVINGS PLAN</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%">5</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:120%">Form 11-K for the Year Ended December&#160;31, 2025</span></td></tr></table></div><div><span><br/></span></div><div><span><br/></span></div></div></div><hr style="page-break-after:always"/><div style="min-height:43.92pt;width:100%"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b32d706373f464ab3aefbd75269be51_4">Table of Contents</a></span></div></div><div style="margin-bottom:0.05pt;margin-top:0.05pt;text-align:center"><span><br/></span></div><div id="i8b32d706373f464ab3aefbd75269be51_19"></div><div style="text-align:center"><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">SPS COMMERCE, INC.  </span></div><div style="text-align:center"><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">401(K) RETIREMENT SAVINGS PLAN  </span></div><div style="text-align:center"><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Notes to Financial Statements</span></div><div><span><br/></span></div><div id="i8b32d706373f464ab3aefbd75269be51_22"></div><div><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">NOTE A &#8211; <ix:nonNumeric contextRef="c-2" name="us-gaap-ebp:EmployeeBenefitPlanDescriptionOfPlanTextBlock" id="f-43" continuedAt="f-43-1" escape="true">Plan Description </ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="f-43-1" continuedAt="f-43-2"><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The following description of the SPS Commerce, Inc. 401(k) Retirement Savings Plan (the &#8220;Plan&#8221;) is provided for general informational purposes only. Participants should refer to the Plan document for a more complete description of the Plan&#8217;s provisions.</span></div><div><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">General </span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The Plan, established on December 20, 1995, is a defined contribution plan subject to the provisions of ERISA and was most recently restated on May 1, 2024 when the Plan adopted the Fidelity Pre-Approved Defined Contribution Plan document. SPS Commerce, Inc. is the Plan administrator and sponsor (further referred to herein as the &#8220;Company,&#8221; &#8220;Plan Administrator,&#8221; or &#8220;Plan Sponsor&#8221;).</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">In May 2025, and in connection with the Company&#8217;s prior acquisition of all of the outstanding equity ownership interests of SupplyPike, Inc. (&#8220;SupplyPike&#8221;), the Company transferred the net assets from the defined contribution retirement plan that SupplyPike's eligible employees were participating in (the &#8220;SupplyPike Plan&#8221;) into the Plan. Total net assets transferred into the Plan were $5.9 million. Participants in the SupplyPike Plan became eligible in the Plan in January 2025. </span></div><div><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Eligibility</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"> </span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">All regular employees, upon attaining age <ix:nonFraction unitRef="year" contextRef="c-3" decimals="INF" name="spsc:EBPMinimumAgeToParticipate" id="f-44">21</ix:nonFraction>, may become participants in the Plan on the first day of each Plan month for both participant deferrals and Company matching contributions. Additionally, participants are eligible to receive Company discretionary nonelective contributions on the first day of the month following <ix:nonNumeric contextRef="c-2" name="spsc:EBPRequisiteServicePeriod" format="ixt-sec:durwordsen" id="f-45">one year</ix:nonNumeric> of eligible service if they are employed as of the last day of the plan year.</span></div><div><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Funding Policy </span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Pretax and Roth contributions made pursuant to participant election deferrals are permitted in whole percentages from <ix:nonFraction unitRef="number" contextRef="c-11" decimals="INF" name="us-gaap-ebp:EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate" scale="-2" id="f-46">1</ix:nonFraction>% to <ix:nonFraction unitRef="number" contextRef="c-2" decimals="INF" name="us-gaap-ebp:EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage" scale="-2" id="f-47">80</ix:nonFraction>% of the participant&#8217;s compensation, subject to limits established by law. Participants who will be age 50 or older by the end of the Plan year are permitted to make catch-up contributions. Participants may also make rollover contributions to the Plan from other qualified plans.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The Company matches half of the participant&#8217;s elective deferrals, up to the first <ix:nonFraction unitRef="number" contextRef="c-2" decimals="INF" name="us-gaap-ebp:EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage" scale="-2" id="f-48">6</ix:nonFraction>% of the participant&#8217;s pre-tax compensation for each pay period. Half of the match is in Company stock, which is purchased in the open market by Fidelity Management Trust Company (&#8220;Fidelity&#8221;) and immediately deposited into the participant&#8217;s 401(k) account. The other half of the match is allocated in the same manner as the participant investment election(s).</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The Company may make discretionary nonelective contributions at the discretion of the Company&#8217;s Board of Directors. No discretionary employer contributions were made during the year ended December&#160;31, 2025.</span></div><div><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Participants&#8217; 401(k) Accounts </span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Participants&#8217; accounts are credited with their contributions, employer matching contributions, discretionary employer contributions, earnings or losses thereon, and charged with an allocation of administrative expenses. Expense allocations are either pro-rata to each participant or based on each participant&#8217;s account balance, as defined by the Plan. The benefit to which a participant is entitled is the benefit which can be provided from the participant&#8217;s vested account.</span></div><div style="text-indent:36pt"><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Vesting </span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Each participant is fully vested in the portion of the participant&#8217;s account that relates to participant contributions and earnings thereon. <ix:nonNumeric contextRef="c-2" name="spsc:EBPEmployerContributionVestingScheduleTableTextBlock" id="f-49" continuedAt="f-49-1" escape="true">Vesting in the employer matching and discretionary nonelective contribution portions of participant accounts, plus actual earnings thereon, is based on hire date and years of vesting service, as defined in the Plan document as follows: </ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="f-49-1"><div style="padding-left:0.07pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.951%"><tr><td style="width:1.0%"/><td style="width:77.267%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.296%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.015%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.015%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.707%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Hire Date and Years of Service</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Vesting Percentage</span></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Hire date prior to January 1, 2018</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">immediately</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="number" contextRef="c-12" decimals="INF" name="spsc:EBPEmployerContributionVestingPercentage" scale="-2" id="f-50">100</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">%</span></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Hire date January 1, 2018 or after</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-left:6.85pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">less than <ix:nonNumeric contextRef="c-13" name="spsc:EBPEmployerContributionVestingRequisiteServicePeriod" format="ixt-sec:durwordsen" id="f-51">two years</ix:nonNumeric> of service</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="number" contextRef="c-14" decimals="INF" name="spsc:EBPEmployerContributionVestingPercentage" id="f-52">0</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">%</span></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-left:6.85pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonNumeric contextRef="c-15" name="spsc:EBPEmployerContributionVestingRequisiteServicePeriod" format="ixt-sec:durwordsen" id="f-53">two years</ix:nonNumeric> or more of service</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="number" contextRef="c-16" decimals="INF" name="spsc:EBPEmployerContributionVestingPercentage" scale="-2" id="f-54">100</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">%</span></div></td></tr></table></div></ix:continuation><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Plan participants from defined contribution retirement plans merged into the Plan are generally fully vested in all balances transferred into the Plan. All contributions made after entering the Plan follow normal Plan vesting terms, as noted above. </span></div></ix:continuation><div style="height:65.52pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.951%"><tr><td style="width:1.0%"/><td style="width:42.573%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:35.772%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><img src="spsc-20260629_g1.jpg" alt="sps logo.jpg" style="height:18px;margin-bottom:5pt;vertical-align:text-bottom;width:19px" id="i-6"/><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:133%"> </span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:133%">SPS COMMERCE, INC. 401(K) RETIREMENT SAVINGS PLAN</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%">6</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:120%">Form 11-K for the Year Ended December&#160;31, 2025</span></td></tr></table></div><div><span><br/></span></div><div><span><br/></span></div></div></div><hr style="page-break-after:always"/><div style="min-height:43.92pt;width:100%"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b32d706373f464ab3aefbd75269be51_4">Table of Contents</a></span></div></div><div><span><br/></span></div><ix:continuation id="f-43-2"><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Forfeitures</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Upon a participant&#8217;s termination, the unvested portion of the participant&#8217;s employer account is forfeited. Forfeitures remain in the Plan and are used to pay administrative expenses. Any remaining amounts are used to reduce future employer contributions payable under the Plan.</span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Notes Receivable from Participants </span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Participants may borrow from their accounts a minimum of $<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="INF" name="us-gaap-ebp:EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount" format="ixt:num-dot-decimal" scale="0" id="f-55">1,000</ix:nonFraction> and a maximum equal to the lesser of $<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="INF" name="us-gaap-ebp:EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount" format="ixt:num-dot-decimal" scale="0" id="f-56">50,000</ix:nonFraction> or <ix:nonFraction unitRef="number" contextRef="c-3" decimals="2" name="us-gaap-ebp:EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage" scale="-2" id="f-57">50</ix:nonFraction>% of their vested account balance. Note terms range from <span style="-sec-ix-hidden:f-58">one</span> to <ix:nonNumeric contextRef="c-17" name="spsc:EBPNoteReceivableFromParticipantBorrowingTerm" format="ixt-sec:durwordsen" id="f-59">five years</ix:nonNumeric> and are secured by the balance in the participant&#8217;s account. A participant may have longer payment terms as determined by the Plan Administrator if the note is for the purchase of a principal residence. Participant notes receivable bear fixed interest based on the prevailing interest rates charged by other lending institutions for loans which would be made under similar circumstances. Principal and interest are paid ratably through payroll deductions for active participants. A participant may only have <ix:nonFraction unitRef="loan" contextRef="c-3" decimals="INF" name="spsc:EBPNoteReceivableFromParticipantNumberOfLoansAllowed" format="ixt-sec:numwordsen" scale="0" id="f-60">one</ix:nonFraction> outstanding loan at one time.</span></div><div><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Plan Termination </span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Although it has not expressed any intent to do so, the Company has the right under the Plan to discontinue its contributions at any time and terminate the Plan subject to the provisions of ERISA. In the event of Plan termination, participants shall be 100% vested in their accounts.</span></div><div><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Benefits Paid to Participants</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Upon termination of service due to death, disability, retirement, termination of employment, or other reasons as defined in the Plan, the participant may elect to receive an amount equal to the value of the participant&#8217;s vested interest in his or her account in the form of a lump-sum amount, in approximately equal installment payments, or rollover the entire vested portion to a qualified plan, depending on the participant&#8217;s account balance.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">If the vested account balance does not exceed $<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="0" name="spsc:EBPInvoluntaryCashOutLimit" format="ixt:num-dot-decimal" scale="0" id="f-61">1,000</ix:nonFraction>, a lump-sum distribution will be made. If the value of a separated participant&#8217;s vested balance is between $<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="0" name="spsc:EBPInvoluntaryCashOutLimit" format="ixt:num-dot-decimal" scale="0" id="f-62">1,000</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="0" name="spsc:EBPInvoluntaryTransferToAQualifiedPlanLimit" format="ixt:num-dot-decimal" scale="0" id="f-63">5,000</ix:nonFraction>, the Plan requires the vested balance to be transferred to an individual qualified retirement account. If the vested balance exceeds $<ix:nonFraction unitRef="usd" contextRef="c-2" decimals="0" name="spsc:EBPInvoluntaryTransferToAQualifiedPlanLimit" format="ixt:num-dot-decimal" scale="0" id="f-64">5,000</ix:nonFraction>, a participant may elect to keep the vested account balance in the Plan, receive a lump-sum distribution, or rollover the entire vested portion to a qualified plan. </span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Participants are permitted withdrawals from their Plan accounts for financial hardships or upon attainment of age 59 1/2. Hardship withdrawals must be approved by the Plan Administrator.</span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Investment Options</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Except for the Company stock portion of the Company matching contribution, all Plan investments are participant directed. Participants may direct the investment of their account balance into various funds and may transfer assets in their accounts between funds on a daily basis, including the Company stock portion of the Company matching contribution.</span></div></ix:continuation><div style="text-align:justify"><span><br/></span></div><div><span><br/></span></div><div id="i8b32d706373f464ab3aefbd75269be51_25"></div><div><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">NOTE B &#8211; <ix:nonNumeric contextRef="c-2" name="us-gaap-ebp:EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock" id="f-66" continuedAt="f-66-1" escape="true">Summary of Significant Accounting Policies</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="f-66-1" continuedAt="f-66-2"><ix:nonNumeric contextRef="c-2" name="us-gaap-ebp:EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock" id="f-67" escape="true"><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Basis of Accounting</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The accompanying financial statements have been prepared using the accrual method of accounting in accordance with accounting principles generally accepted in the United States of America (&#8220;GAAP&#8221;).</span></div></ix:nonNumeric><div style="text-indent:36pt"><span><br/></span></div><ix:nonNumeric contextRef="c-2" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentPolicyTextBlock" id="f-68" escape="true"><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Investment Valuation and Income (Loss) Recognition</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The Plan&#8217;s investments are reported at fair value. Fair value is the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. See Note C for discussion of fair value measurements.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Purchases and sales of securities are recorded on a trade-date basis. Interest income is recorded on the accrual basis of accounting. Dividends are recorded on the ex-dividend date.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Net appreciation (depreciation) includes the Plan&#8217;s gains and losses on investments bought and sold, as well as held during the year.</span></div></ix:nonNumeric><div style="text-indent:36pt"><span><br/></span></div><ix:nonNumeric contextRef="c-2" name="us-gaap-ebp:EmployeeBenefitPlanExpensePolicyTextBlock" id="f-69" escape="true"><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Administrative Expenses</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Plan administrative expenses, including investment fees, transaction fees, and investment management services, are charged to participant accounts as a percentage of assets invested. Plan administration fees, including audit and legal fees, are paid by the Plan Sponsor.</span></div></ix:nonNumeric><div style="text-indent:36pt"><span><br/></span></div><ix:nonNumeric contextRef="c-2" name="us-gaap-ebp:EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock" id="f-70" continuedAt="f-70-1" escape="true"><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Benefits Paid to Participants &amp; Contributions</span></div></ix:nonNumeric><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"><ix:continuation id="f-70-1">Benefits paid to participants are recorded by the Plan when paid. Contributions are recorded by the Plan when paid.</ix:continuation> </span></div></ix:continuation><div style="height:65.52pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.951%"><tr><td style="width:1.0%"/><td style="width:42.573%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:35.772%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><img src="spsc-20260629_g1.jpg" alt="sps logo.jpg" style="height:18px;margin-bottom:5pt;vertical-align:text-bottom;width:19px" id="i-7"/><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:133%"> </span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:133%">SPS COMMERCE, INC. 401(K) RETIREMENT SAVINGS PLAN</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%">7</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:120%">Form 11-K for the Year Ended December&#160;31, 2025</span></td></tr></table></div><div><span><br/></span></div><div><span><br/></span></div></div></div><hr style="page-break-after:always"/><div style="min-height:43.92pt;width:100%"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b32d706373f464ab3aefbd75269be51_4">Table of Contents</a></span></div></div><div style="text-align:center"><span><br/></span></div><ix:continuation id="f-66-2" continuedAt="f-66-3"><ix:nonNumeric contextRef="c-2" name="us-gaap-ebp:EbpRiskAndUncertaintyPolicyTextBlock" id="f-71" continuedAt="f-71-1" escape="true"><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Risks and Uncertainties</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The Plan invests in various investment securities that are exposed to various risks, such as interest rate, market, and credit risks. Due to the level of risk associated with certain investment securities, it is reasonably possible that changes in the values of investment securities will occur in the near term and that such changes could materially affect participants&#8217; balances and the amounts reported in the Statements of Net Assets Available for Benefits.</span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Concentration of Market Risk</span></div></ix:nonNumeric><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"><ix:continuation id="f-71-1">At December&#160;31, 2025 and 2024, <ix:nonFraction unitRef="number" contextRef="c-7" decimals="2" name="us-gaap-ebp:EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage" scale="-2" id="f-72">4</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="c-8" decimals="2" name="us-gaap-ebp:EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage" scale="-2" id="f-73">9</ix:nonFraction>% of the Plan&#8217;s net assets, respectively, were invested in the common stock of the Company. The underlying value of the Company&#8217;s common stock is entirely dependent upon the performance of the Company and the market&#8217;s evaluation of such performance. It is possible that changes in the fair value of the Company&#8217;s common stock in the near term could materially affect participants&#8217; account balances and the amounts reported in the Statements of Net Assets Available for Benefits and the Statement of Changes in Net Assets Available for Benefits.</ix:continuation> </span></div><div><span><br/></span></div><ix:nonNumeric contextRef="c-2" name="us-gaap-ebp:EmployeeBenefitPlanUseOfEstimatePolicyTextBlock" id="f-74" escape="true"><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Use of Estimates</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The preparation of financial statements in conformity with GAAP requires Plan management to make estimates and assumptions that affect the reported amounts of assets and liabilities, and changes therein, and disclosure of contingent assets and liabilities. Actual results may differ from those estimates.</span></div></ix:nonNumeric><div><span><br/></span></div><ix:nonNumeric contextRef="c-2" name="us-gaap-ebp:EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock" id="f-75" escape="true"><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Notes Receivable from Participants</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"> </span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Notes receivable from participants are measured at their unpaid balance plus any accrued but unpaid interest. Delinquent notes are reclassified as distributions in the quarter subsequent to when a participant misses a scheduled repayment. No allowance for credit losses has been recorded as of December&#160;31, 2025 and 2024.</span></div></ix:nonNumeric><div><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Accounting Pronouncements Recently Adopted</span></div></ix:continuation><div style="margin-top:6pt"><ix:continuation id="f-66-3" continuedAt="f-66-4"><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">&#160;&#160;&#160;&#160;</span><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">For the year ended December 31,</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"> 2025</span></ix:continuation><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"><ix:continuation id="f-66-4"> there were no new accounting pronouncements that were adopted.</ix:continuation> </span></div><div><span><br/></span></div><div id="i8b32d706373f464ab3aefbd75269be51_28"></div><div><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">NOTE C &#8211; <ix:nonNumeric contextRef="c-2" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock" id="f-76" continuedAt="f-76-1" escape="true">Fair Value Measurements</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="f-76-1" continuedAt="f-76-2"><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Fair Value Measurements</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The Plan measures certain financial assets at fair value on a recurring basis based on a fair value hierarchy that requires the Plan to maximize the use of observable inputs and minimize the use of unobservable inputs when measuring fair value. A financial instrument&#8217;s categorization within the fair value hierarchy is based upon the lowest level of input that is significant to the fair value measurement. The three levels of inputs that may be used to measure fair value are:</span></div><div style="margin-top:6pt;padding-left:96.5pt;text-indent:-42.5pt"><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:100%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;padding-left:37.03pt">Level 1 &#8211; quoted prices in active markets for identical assets or liabilities.</span></div><div style="margin-top:6pt;padding-left:96.5pt;text-indent:-42.5pt"><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:100%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;padding-left:37.03pt">Level 2 &#8211; observable inputs other than Level 1 prices, such as: (a) quoted prices for similar assets or liabilities, (b) quoted prices in markets with insufficient volume or infrequent transactions (less active markets), or (c) model-derived valuations in which all significant inputs are observable or can be derived principally from or corroborated by observable market data for substantially the full term of the assets or liabilities.</span></div><div style="margin-top:6pt;padding-left:96.5pt;text-indent:-42.5pt"><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:100%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;padding-left:37.03pt">Level 3 &#8211; unobservable inputs to the valuation methodology that are significant to the measurement of fair value of assets or liabilities.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Following is a description of the valuation methodologies used for assets measured at fair value. There have been no changes in the methodologies used at December&#160;31, 2025 and 2024.</span></div><div style="margin-top:6pt;padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Common Stock:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"> Valued at quoted market prices, as they are actively traded.</span></div><div style="margin-top:6pt;padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Mutual funds</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">: Valued at the daily closing price as reported by the fund. Mutual funds held by the Plan are open-end mutual funds that are registered with the Securities and Exchange Commission. These funds are required to publish their daily net asset value (&#8220;NAV&#8221;) and to transact at that price. The mutual funds held by the Plan are deemed to be actively traded.</span></div><div style="margin-top:6pt;padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Common collective trust funds</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">: Valued at the NAV of shares held by the Plan based on the fair value of its underlying assets reported in the fund&#8217;s audited financial statements. The NAV is used as a practical expedient to estimate fair value. This practical expedient would not be used if it was determined to be probable that the funds will sell the underlying investments for an amount different from the reported NAV. Participant transactions (purchases and sales) may occur daily. If the Plan initiates a full redemption of the collective trust, the issuer reserves the right to require 12 months&#8217; notification in order to ensure that securities liquidations will be carried out in an orderly business manner.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The preceding methods described above may produce a fair value calculation that may not be indicative of net realizable value or reflective of future fair values. Furthermore, while the Plan believes its valuation methods are appropriate and consistent with other market participants, the use of different methodologies or assumptions to determine the fair value of certain financial instruments could result in a different fair value measurement at the reporting date.</span></div></ix:continuation><div style="height:65.52pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.951%"><tr><td style="width:1.0%"/><td style="width:42.573%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:35.772%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><img src="spsc-20260629_g1.jpg" alt="sps logo.jpg" style="height:18px;margin-bottom:5pt;vertical-align:text-bottom;width:19px" id="i-8"/><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:133%"> </span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:133%">SPS COMMERCE, INC. 401(K) RETIREMENT SAVINGS PLAN</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%">8</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:120%">Form 11-K for the Year Ended December&#160;31, 2025</span></td></tr></table></div><div><span><br/></span></div><div><span><br/></span></div></div></div><hr style="page-break-after:always"/><div style="min-height:43.92pt;width:100%"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b32d706373f464ab3aefbd75269be51_4">Table of Contents</a></span></div></div><ix:nonNumeric contextRef="c-2" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock" id="f-77" escape="true"><ix:continuation id="f-76-2"><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The following table sets forth by level, within the fair value hierarchy, the Plan&#8217;s investments at fair value:</span></div><div style="text-align:justify"><span><br/></span></div><div style="padding-left:0.15pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.863%"><tr><td style="width:1.0%"/><td style="width:41.953%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.037%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.967%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.900%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.967%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.900%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.967%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.900%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.109%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">December 31, 2025</span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Level 1</span></div></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Level 2</span></div></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Level 3</span></div></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Total</span></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Common stock</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-18" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-78">10,714,050</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-19" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:fixed-zero" scale="0" id="f-79">&#8212;</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-20" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:fixed-zero" scale="0" id="f-80">&#8212;</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-21" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-81">10,714,050</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Mutual funds</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-22" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-82">74,651,689</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-23" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:fixed-zero" scale="0" id="f-83">&#8212;</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-24" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:fixed-zero" scale="0" id="f-84">&#8212;</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-25" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-85">74,651,689</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Total assets in the fair value hierarchy</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-26" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-86">85,365,739</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-27" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:fixed-zero" scale="0" id="f-87">&#8212;</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-28" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:fixed-zero" scale="0" id="f-88">&#8212;</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-29" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-89">85,365,739</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Common collective trust funds, measured at NAV</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-30" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-90">170,546,549</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 14.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Investments at fair value</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-91">255,912,288</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%">Level 1</span></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%">Level 2</span></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%">Level 3</span></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Common stock</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-31" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-92">19,378,857</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-32" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:fixed-zero" scale="0" id="f-93">&#8212;</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-33" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:fixed-zero" scale="0" id="f-94">&#8212;</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-34" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-95">19,378,857</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Mutual funds</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-35" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-96">62,109,137</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-36" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:fixed-zero" scale="0" id="f-97">&#8212;</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-37" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:fixed-zero" scale="0" id="f-98">&#8212;</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-38" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-99">62,109,137</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Total assets in the fair value hierarchy</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-39" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-100">81,487,994</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-40" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:fixed-zero" scale="0" id="f-101">&#8212;</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-41" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:fixed-zero" scale="0" id="f-102">&#8212;</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-42" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-103">81,487,994</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Common collective trust funds, measured at NAV</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-43" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-104">129,601,053</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 14.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Investments at fair value</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"/><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-4" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" format="ixt:num-dot-decimal" scale="0" id="f-105">211,089,047</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr></table></div></ix:continuation></ix:nonNumeric><div style="text-align:justify"><span><br/></span></div><div><span><br/></span></div><div id="i8b32d706373f464ab3aefbd75269be51_31"></div><div><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">NOTE D &#8211; <ix:nonNumeric contextRef="c-2" name="us-gaap-ebp:EmployeeBenefitPlanTaxStatusTextBlock" id="f-106" continuedAt="f-106-1" escape="true">Income Tax Status</ix:nonNumeric></span></div><ix:continuation id="f-106-1"><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The Plan uses a volume submitter plan document created by Fidelity Management &amp; Research Co. (&#8220;FMR&#8221;), an affiliate of the Plan&#8217;s recordkeeper, Fidelity. The Internal Revenue Service (&#8220;IRS&#8221;) has determined and informed FMR by a letter dated June 30, 2020, that the volume submitter plan is designed in accordance with applicable sections of the Internal Revenue Code (&#8220;IRC&#8221;). Although the Plan has been restated since receiving the FMR opinion letter, the Plan&#8217;s management believes that the Plan is designed and is currently being operated in compliance with the applicable requirements of the IRC.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">GAAP requires plan management to evaluate tax positions taken by the Plan and recognize a tax liability (or asset) if the organization has taken an uncertain position that more likely than not would not be sustained upon examination by the IRS. The Plan Administrator has analyzed the tax positions taken by the Plan, and has concluded that as of December&#160;31, 2025 and 2024, there are no uncertain positions taken or expected to be taken that would require recognition of a liability (or asset) or disclosure in the financial statements. The Plan is subject to routine audits by taxing jurisdictions; however, there are currently no audits for any tax periods in progress.</span></div></ix:continuation><div><span><br/></span></div><div><span><br/></span></div><div id="i8b32d706373f464ab3aefbd75269be51_34"></div><div><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">NOTE E &#8211; <ix:nonNumeric contextRef="c-2" name="us-gaap-ebp:EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock" id="f-107" continuedAt="f-107-1" escape="true">Party-in-Interest Transactions</ix:nonNumeric></span></div><ix:continuation id="f-107-1"><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The Plan held <ix:nonFraction unitRef="shares" contextRef="c-7" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentNumberOfShares" format="ixt:num-dot-decimal" scale="0" id="f-108">120,207</ix:nonFraction> shares and <ix:nonFraction unitRef="shares" contextRef="c-8" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentNumberOfShares" format="ixt:num-dot-decimal" scale="0" id="f-109">105,326</ix:nonFraction> shares of common stock of the Company, the sponsoring employer, valued at $<ix:nonFraction unitRef="usd" contextRef="c-7" decimals="-5" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" scale="6" id="f-110">10.7</ix:nonFraction> million and $<ix:nonFraction unitRef="usd" contextRef="c-8" decimals="-5" name="us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" scale="6" id="f-111">19.4</ix:nonFraction> million at December&#160;31, 2025 and 2024, respectively. The investment and transactions in this investment qualify as party-in-interest transactions which are exempt from the prohibited transaction rules of ERISA.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Plan investments include shares of mutual funds managed by Fidelity, the custodian as defined by the Plan; therefore, transactions in these investments qualify as exempt party-in-interest transactions.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Certain employees of the Plan Sponsor provide administrative services to the Plan. These services are provided at no cost to the Plan.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Party-in-interest transactions also include loans made to participants.</span></div></ix:continuation><div><span><br/></span></div><div style="height:65.52pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.951%"><tr><td style="width:1.0%"/><td style="width:42.573%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:35.772%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><img src="spsc-20260629_g1.jpg" alt="sps logo.jpg" style="height:18px;margin-bottom:5pt;vertical-align:text-bottom;width:19px" id="i-9"/><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:133%"> </span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:133%">SPS COMMERCE, INC. 401(K) RETIREMENT SAVINGS PLAN</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%">9</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:120%">Form 11-K for the Year Ended December&#160;31, 2025</span></td></tr></table></div><div><span><br/></span></div><div><span><br/></span></div></div></div><hr style="page-break-after:always"/><div style="min-height:43.92pt;width:100%"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b32d706373f464ab3aefbd75269be51_4">Table of Contents</a></span></div></div><div><span><br/></span></div><div id="i8b32d706373f464ab3aefbd75269be51_37"></div><ix:nonNumeric contextRef="c-2" name="us-gaap-ebp:EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock" id="f-112" escape="true"><div style="text-align:center"><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">SPS COMMERCE, INC.</span></div><div style="text-align:center"><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">401(K) RETIREMENT SAVINGS PLAN</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">EIN: <ix:nonNumeric contextRef="c-2" name="dei:EntityTaxIdentificationNumber" id="f-113">41-2015217</ix:nonNumeric>, Plan: <ix:nonNumeric contextRef="c-2" name="us-gaap-ebp:EmployeeBenefitPlanPlanNumber" id="f-114">001</ix:nonNumeric></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Form 5500, Schedule H, Part IV, Line 4(i)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Schedule of Assets (Held at End of Year) </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">As of December&#160;31, 2025</span></div><div><span><br/></span></div><div style="padding-left:0.12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.951%"><tr><td style="width:1.0%"/><td style="width:3.389%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:2.521%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:23.661%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.296%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:39.716%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.296%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.648%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.888%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.285%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Identity of issuer, borrower, lessor, or similar party</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Description of investment including maturity date, rate of interest, collateral, par, or maturity value</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Cost</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Current value</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%;text-decoration:underline">Collective trust funds</span></div></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"><div style="margin-bottom:0.1pt;text-align:center"></div></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard </span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2055 Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-44" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-115">37,114,282</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard </span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2050 Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-45" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-116">33,428,634</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard </span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2045 Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-46" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-117">30,463,895</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard </span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2060 Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-47" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-118">18,064,883</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard </span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2040 Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-48" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-119">13,314,586</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard </span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2035 Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-49" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-120">12,269,543</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2030 Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-50" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-121">10,395,498</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard </span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2065 Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-51" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-122">6,469,746</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard </span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2025 Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-52" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-123">2,953,520</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Prudential</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Total Return Bond Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-53" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-124">2,059,033</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Union Bank and Trust Company</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Morley Stable Value Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-54" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-125">1,978,692</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement Income Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-55" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-126">1,275,476</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2020 Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-56" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-127">568,917</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2070 Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-57" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-128">189,844</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-9" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-129">170,546,549</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%;text-decoration:underline">Mutual funds</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><div style="margin-bottom:0.1pt;text-align:center"></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Fidelity</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Institutional 500 Index Fund </span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-58" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-130">31,661,967</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;J.P. Morgan</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Large Cap Growth Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-59" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-131">12,657,101</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Fidelity</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Mid-Cap Index Fund </span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-60" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-132">7,262,551</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="background-color:#cceeff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Fidelity </span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;MFS Research International Fund </span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-61" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-133">6,054,830</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Fidelity </span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;MFS Value Fund </span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-62" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-134">4,633,621</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="background-color:#cceeff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Fidelity</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Small Cap Growth Index Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-63" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-135">3,534,899</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Fidelity</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Small Cap Value Index Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-64" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-136">3,140,478</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="background-color:#cceeff;color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Fidelity</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="background-color:#cceeff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">US Bond Index Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-65" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-137">2,444,609</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Fidelity</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Total International Index Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-66" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-138">2,289,161</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="background-color:#cceeff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Fidelity</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Small Cap Index Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-67" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-139">405,166</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">PIMCO</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Income Institutional Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-68" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-140">359,156</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Principal</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Mid-Cap Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-69" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-141">154,919</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">John Hancock</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Disciplined Value Mid-Cap Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-70" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-142">53,231</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-5" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-143">74,651,689</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%;text-decoration:underline">SPS Commerce Stock</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt;text-align:center"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="background-color:#cceeff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;SPS Commerce, Inc.</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Common Stock</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-71" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" format="ixt:num-dot-decimal" scale="0" id="f-144">10,714,050</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%;text-decoration:underline">Participant loans</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Participant loans</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Interest from <ix:nonFraction unitRef="number" contextRef="c-11" decimals="4" name="us-gaap-ebp:EmployeeBenefitPlanParticipantLoanInterestRate" scale="-2" id="f-145">4.25</ix:nonFraction>% to <ix:nonFraction unitRef="number" contextRef="c-17" decimals="4" name="us-gaap-ebp:EmployeeBenefitPlanParticipantLoanInterestRate" scale="-2" id="f-146">9.50</ix:nonFraction>% maturing through 2031</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$<ix:nonFraction unitRef="usd" contextRef="c-3" decimals="0" name="spsc:EBPAssetHeldForInvestmentParticipantLoanCost" scale="0" id="f-147">0</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution" format="ixt:num-dot-decimal" scale="0" id="f-148">1,611,115</ix:nonFraction>&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"><ix:nonFraction unitRef="usd" contextRef="c-3" decimals="0" name="us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestment" format="ixt:num-dot-decimal" scale="0" id="f-149">257,523,403</ix:nonFraction>&#160;</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr></table></div><div style="padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">*&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Represents a party-in-interest</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">**&#160;&#160;&#160;&#160;Historical cost information not required for participant-directed investments</span></div></ix:nonNumeric><div style="height:65.52pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.951%"><tr><td style="width:1.0%"/><td style="width:42.573%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:35.772%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><img src="spsc-20260629_g1.jpg" alt="sps logo.jpg" style="height:18px;margin-bottom:5pt;vertical-align:text-bottom;width:19px" id="i-10"/><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:133%"> </span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:133%">SPS COMMERCE, INC. 401(K) RETIREMENT SAVINGS PLAN</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%">10</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:120%">Form 11-K for the Year Ended December&#160;31, 2025</span></td></tr></table></div><div><span><br/></span></div><div><span><br/></span></div></div></div><hr style="page-break-after:always"/><div style="min-height:43.92pt;width:100%"><div style="text-align:right"><span style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#0000ff;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i8b32d706373f464ab3aefbd75269be51_4">Table of Contents</a></span></div></div><div><span><br/></span></div><div id="i8b32d706373f464ab3aefbd75269be51_40"></div><div style="-sec-extract:summary;text-align:center"><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Exhibit Index </span></div><div><span><br/></span></div><div style="padding-left:0.07pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:7.855%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.614%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:56.837%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.614%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:30.380%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Number</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Description</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Manner of Filing</span></div></td></tr><tr style="height:6pt"><td colspan="3" style="border-top:0.5pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:0.5pt solid #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:0.5pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">23.1</span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#0000ff;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#0000ff;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="exhibit231-wipfliconsent20.htm">Consent of Wipfli LLP</a></span></div></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Filed electronically herewith</span></div></td></tr></table></div><div><span><br/></span></div><div><span><br/></span></div><div id="i8b32d706373f464ab3aefbd75269be51_43"></div><div style="text-align:center"><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Signatures</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Pursuant to the requirements of the Securities Exchange Act of 1934, the trustees (or other persons who administer the employee bene&#64257;t plan) have duly caused this annual report to be signed on its behalf by the undersigned hereunto duly authorized.</span></div><div style="padding-right:3.25pt;text-align:justify"><span><br/></span></div><div style="padding-left:0.02pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:40.012%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:3.513%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:53.175%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;margin-top:21pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Date: June&#160;29, 2026</span></div></td><td colspan="6" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">SPS COMMERCE, INC. 401(K) RETIREMENT SAVINGS PLAN</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">By:    SPS COMMERCE, INC., the Plan Sponsor and Plan Administrator</span></div></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Date: June&#160;29, 2026</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">By:</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">/s/ JOSEPH DEL PRETO</span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:0.5pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Joseph Del Preto</span></div><div><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">SPS Commerce, Inc. Executive Vice President and Chief Financial Officer (principal financial and accounting officer) </span></div></td></tr></table></div><div><span><br/></span></div><div><span><br/></span></div><div style="height:65.52pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.951%"><tr><td style="width:1.0%"/><td style="width:42.573%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:35.772%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><img src="spsc-20260629_g1.jpg" alt="sps logo.jpg" style="height:18px;margin-bottom:5pt;vertical-align:text-bottom;width:19px" id="i-11"/><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:133%"> </span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:133%">SPS COMMERCE, INC. 401(K) RETIREMENT SAVINGS PLAN</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:400;line-height:120%">11</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:7.5pt;font-weight:700;line-height:120%">Form 11-K for the Year Ended December&#160;31, 2025</span></td></tr></table></div><div><span><br/></span></div><div><span><br/></span></div></div></div></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23.1
<SEQUENCE>2
<FILENAME>exhibit231-wipfliconsent20.htm
<DESCRIPTION>EX-23.1
<TEXT>
<html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2026 Workiva -->
<title>Document</title></head><body><div id="i96979b482f52428cb0394bd292b465d7_1"></div><div style="min-height:72pt;width:100%"><div><font><br></font></div></div><div style="text-align:right"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Exhibit 23.1</font></div><div style="text-align:center"><font><br></font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">Consent of Independent Registered Public Accounting Firm</font></div><div><font><br></font></div><div style="margin-top:2pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The Audit Committee of the Board of Directors</font></div><div style="margin-top:2pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">SPS Commerce, Inc. 401(k) Retirement Savings Plan&#58;</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">We consent to the incorporation by reference in the registration statement (No. 333-222438) on Form S-8 of SPS Commerce, Inc. of our report dated June&#160;29, 2026, with respect to the statement of net assets available for benefits of the SPS Commerce, Inc. 401(k) Retirement Savings Plan as of December&#160;31, 2025 and 2024, the related statement of changes in net assets available for benefits for the year ended December&#160;31, 2025 and the related notes, and the supplemental schedule, Schedule H, Part IV, Line 4(i) &#8211; Schedule of Assets (Held at End of Year) as of December&#160;31, 2025, which report appears in the December&#160;31, 2025 annual report for Form 11-K of the SPS Commerce, Inc. 401(k) Retirement Savings Plan.</font></div><div style="text-align:center"><font><br></font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; WIPFLI LLP</font></div><div><font><br></font></div><div style="margin-top:2pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Minneapolis, Minnesota</font></div><div style="margin-top:2pt"><font style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">June&#160;29, 2026</font></div><div style="height:72pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>3
<FILENAME>spsc-20260629.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2026 Workiva-->
<!--r:019d726d-e0a2-7f08-9c37-20a11dea5949,g:aa020773-9240-4449-869e-daa4f8245da4-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:spsc="http://www.spscommerce.com/20260629" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2024-01-31" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.spscommerce.com/20260629">
  <xs:import namespace="http://fasb.org/srt/2026" schemaLocation="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd"/>
  <xs:import namespace="http://fasb.org/us-gaap-ebp/2026" schemaLocation="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd"/>
  <xs:import namespace="http://fasb.org/us-gaap/2026" schemaLocation="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/dtr/type/2024-01-31" schemaLocation="https://www.xbrl.org/dtr/type/2024-01-31/types.xsd"/>
  <xs:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/dei/2026" schemaLocation="https://xbrl.sec.gov/dei/2026/dei-2026.xsd"/>
  <xs:annotation>
    <xs:appinfo>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="spsc-20260629_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="spsc-20260629_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="spsc-20260629_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="spsc-20260629_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:type="simple"/>
      <link:roleType id="Cover" roleURI="http://www.spscommerce.com/role/Cover">
        <link:definition>0000001 - Document - Cover</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement" roleURI="http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement">
        <link:definition>0000002 - Statement - STATEMENTS OF NET ASSETS AVAILABLE FOR BENEFITS (Statement)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement" roleURI="http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement">
        <link:definition>0000003 - Statement - STATEMENT OF CHANGES IN NET ASSETS AVAILABLE FOR BENEFITS (Statement)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PlanDescription" roleURI="http://www.spscommerce.com/role/PlanDescription">
        <link:definition>0000004 - Disclosure - Plan Description</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryofSignificantAccountingPolicies" roleURI="http://www.spscommerce.com/role/SummaryofSignificantAccountingPolicies">
        <link:definition>0000005 - Disclosure - Summary of Significant Accounting Policies</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueMeasurements" roleURI="http://www.spscommerce.com/role/FairValueMeasurements">
        <link:definition>0000006 - Disclosure - Fair Value Measurements</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxStatus" roleURI="http://www.spscommerce.com/role/IncomeTaxStatus">
        <link:definition>0000007 - Disclosure - Income Tax Status</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PartyinInterestTransactions" roleURI="http://www.spscommerce.com/role/PartyinInterestTransactions">
        <link:definition>0000008 - Disclosure - Party-in-Interest Transactions</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYear" roleURI="http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYear">
        <link:definition>0000009 - Disclosure - Form 5500, Schedule H, Part IV, Line 4(i) Schedule of Assets (Held at End of Year)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryofSignificantAccountingPoliciesPolicies" roleURI="http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies">
        <link:definition>0000010 - Disclosure - Summary of Significant Accounting Policies (Policies)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PlanDescriptionTables" roleURI="http://www.spscommerce.com/role/PlanDescriptionTables">
        <link:definition>0000011 - Disclosure - Plan Description (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueMeasurementsTables" roleURI="http://www.spscommerce.com/role/FairValueMeasurementsTables">
        <link:definition>0000012 - Disclosure - Fair Value Measurements (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PlanDescriptionNarrativeDetails" roleURI="http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails">
        <link:definition>0000013 - Disclosure - Plan Description - Narrative (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PlanDescriptionVestingScheduleofEmployerContributionDetails" roleURI="http://www.spscommerce.com/role/PlanDescriptionVestingScheduleofEmployerContributionDetails">
        <link:definition>0000014 - Disclosure - Plan Description - Vesting Schedule of Employer Contribution (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SummaryofSignificantAccountingPoliciesDetails" roleURI="http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesDetails">
        <link:definition>0000015 - Disclosure - Summary of Significant Accounting Policies (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails" roleURI="http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails">
        <link:definition>0000016 - Disclosure - Fair Value Measurements - Schedule of Investment at Fair Value and NAV (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="PartyinInterestTransactionsDetails" roleURI="http://www.spscommerce.com/role/PartyinInterestTransactionsDetails">
        <link:definition>0000017 - Disclosure - Party-in-Interest Transactions (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails" roleURI="http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails">
        <link:definition>0000018 - Disclosure - Form 5500, Schedule H, Part IV, Line 4(i) Schedule of Assets (Held at End of Year) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails_1" roleURI="http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails_1">
        <link:definition>0000018 - Disclosure - Form 5500, Schedule H, Part IV, Line 4(i) Schedule of Assets (Held at End of Year) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
    </xs:appinfo>
  </xs:annotation>
  <xs:element id="spsc_EBP001Member" abstract="true" name="EBP001Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="spsc_EBPEmployerContributionVestingScheduleTableTextBlock" abstract="false" name="EBPEmployerContributionVestingScheduleTableTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="spsc_EBPMinimumAgeToParticipate" abstract="false" name="EBPMinimumAgeToParticipate" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="spsc_EBPRequisiteServicePeriod" abstract="false" name="EBPRequisiteServicePeriod" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="spsc_EBPNoteReceivableFromParticipantBorrowingTerm" abstract="false" name="EBPNoteReceivableFromParticipantBorrowingTerm" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed" abstract="false" name="EBPNoteReceivableFromParticipantNumberOfLoansAllowed" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
  <xs:element id="spsc_EBPInvoluntaryCashOutLimit" abstract="false" name="EBPInvoluntaryCashOutLimit" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit" abstract="false" name="EBPInvoluntaryTransferToAQualifiedPlanLimit" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="spsc_EBPEmployerContributionVestingAxis" abstract="true" name="EBPEmployerContributionVestingAxis" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrldt:dimensionItem" type="xbrli:stringItemType"/>
  <xs:element id="spsc_EBPEmployerContributionVestingDomain" abstract="true" name="EBPEmployerContributionVestingDomain" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="spsc_EBPVestingScheduleTrancheOneMember" abstract="true" name="EBPVestingScheduleTrancheOneMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="spsc_EBPVestingScheduleTrancheTwoMember" abstract="true" name="EBPVestingScheduleTrancheTwoMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="spsc_EBPVestingScheduleTrancheThreeMember" abstract="true" name="EBPVestingScheduleTrancheThreeMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="spsc_EBPEmployerContributionVestingPercentage" abstract="false" name="EBPEmployerContributionVestingPercentage" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="spsc_EBPEmployerContributionVestingRequisiteServicePeriod" abstract="false" name="EBPEmployerContributionVestingRequisiteServicePeriod" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="spsc_EBPAssetHeldForInvestmentParticipantLoanCost" abstract="false" name="EBPAssetHeldForInvestmentParticipantLoanCost" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
</xs:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>4
<FILENAME>spsc-20260629_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2026 Workiva-->
<!--r:019d726d-e0a2-7f08-9c37-20a11dea5949,g:aa020773-9240-4449-869e-daa4f8245da4-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:arcroleRef arcroleURI="https://xbrl.org/2023/arcrole/summation-item" xlink:type="simple" xlink:href="https://www.xbrl.org/2023/calculation-1.1.xsd#summation-item"/>
  <link:roleRef roleURI="http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement" xlink:type="simple" xlink:href="spsc-20260629.xsd#STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement"/>
  <link:calculationLink xlink:role="http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit_019d726d-e0a2-7650-8121-92f2f90e3ec9" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanCash_019d726d-e0a2-7ee2-aec1-d1a89dcb9a46" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanCash"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit_019d726d-e0a2-7650-8121-92f2f90e3ec9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanCash_019d726d-e0a2-7ee2-aec1-d1a89dcb9a46" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue_019d726d-e0a2-7ba8-aaea-41287751ce9a" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit_019d726d-e0a2-7650-8121-92f2f90e3ec9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue_019d726d-e0a2-7ba8-aaea-41287751ce9a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanReceivable_019f03fe-b0e8-7a60-bf15-1ecb90b65863" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanReceivable"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit_019d726d-e0a2-7650-8121-92f2f90e3ec9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanReceivable_019f03fe-b0e8-7a60-bf15-1ecb90b65863" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanReceivable_019f03fe-2e2e-7998-882b-210782fc7c77" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanReceivable"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanOtherReceivable_019f03fe-2e2e-7793-9bfa-4aadd5c6852c" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanOtherReceivable"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanReceivable_019f03fe-2e2e-7998-882b-210782fc7c77" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanOtherReceivable_019f03fe-2e2e-7793-9bfa-4aadd5c6852c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant_019f03fe-2e2e-732a-b829-1ca07db73282" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanReceivable_019f03fe-2e2e-7998-882b-210782fc7c77" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant_019f03fe-2e2e-732a-b829-1ca07db73282" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement" xlink:type="simple" xlink:href="spsc-20260629.xsd#STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"/>
  <link:calculationLink xlink:role="http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution_019d726d-e0a2-7963-89ca-f4a53b14d1c6" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover_019d726d-e0a2-7e4c-9291-290dfff5e1c3" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution_019d726d-e0a2-7963-89ca-f4a53b14d1c6" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover_019d726d-e0a2-7e4c-9291-290dfff5e1c3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash_019d726d-e0a2-79a3-bdb1-33a65ec80f62" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution_019d726d-e0a2-7963-89ca-f4a53b14d1c6" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash_019d726d-e0a2-79a3-bdb1-33a65ec80f62" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover_019d726d-e0a2-7397-b948-b8f0201f668a" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution_019d726d-e0a2-7963-89ca-f4a53b14d1c6" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover_019d726d-e0a2-7397-b948-b8f0201f668a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment_019d726d-e0a2-7648-bbd7-3bb67646f6ae" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment_019d726d-e0a2-72fc-b5d7-f6350aa10250" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment_019d726d-e0a2-7648-bbd7-3bb67646f6ae" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment_019d726d-e0a2-72fc-b5d7-f6350aa10250" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment_019d726d-e0a2-7e2e-bbac-2f076a549098" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment_019d726d-e0a2-7648-bbd7-3bb67646f6ae" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment_019d726d-e0a2-7e2e-bbac-2f076a549098" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease_019d726d-e0a2-7a41-bb60-9950ccfaa5c1" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment_019d726d-e0a2-7855-8594-b629a6ce385f" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease_019d726d-e0a2-7a41-bb60-9950ccfaa5c1" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment_019d726d-e0a2-7855-8594-b629a6ce385f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant_019d726d-e0a2-7190-b48b-724ae222b45e" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease_019d726d-e0a2-7a41-bb60-9950ccfaa5c1" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant_019d726d-e0a2-7190-b48b-724ae222b45e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution_019d726d-e0a2-7d8e-9e14-7b0aa23d4b1f" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease_019d726d-e0a2-7a41-bb60-9950ccfaa5c1" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution_019d726d-e0a2-7d8e-9e14-7b0aa23d4b1f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease_019d726d-e0a2-76d8-ae54-d7776d761008" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant_019d726d-e0a2-7027-8c17-5ac8111e8445" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease_019d726d-e0a2-76d8-ae54-d7776d761008" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant_019d726d-e0a2-7027-8c17-5ac8111e8445" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense_019d726d-e0a2-7f5f-a24c-77735238f7a1" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease_019d726d-e0a2-76d8-ae54-d7776d761008" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense_019d726d-e0a2-7f5f-a24c-77735238f7a1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease_019d726d-e0a2-762d-ae79-34d8233c2bc5" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease_019d726d-e0a2-7a7c-98da-ff85a3dcc17c" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease_019d726d-e0a2-762d-ae79-34d8233c2bc5" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease_019d726d-e0a2-7a7c-98da-ff85a3dcc17c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease_019d726d-e0a2-7334-81fd-144c354c9ac8" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease_019d726d-e0a2-762d-ae79-34d8233c2bc5" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease_019d726d-e0a2-7334-81fd-144c354c9ac8" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails" xlink:type="simple" xlink:href="spsc-20260629.xsd#Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails"/>
  <link:calculationLink xlink:role="http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment_019d726d-e0a2-7311-9daa-1265d392a3ad" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue_019d726d-e0a2-7c94-93b5-b331340ec48d" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment_019d726d-e0a2-7311-9daa-1265d392a3ad" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue_019d726d-e0a2-7c94-93b5-b331340ec48d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution_019d726d-e0a2-7105-87cd-292c632847c9" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="https://xbrl.org/2023/arcrole/summation-item" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment_019d726d-e0a2-7311-9daa-1265d392a3ad" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution_019d726d-e0a2-7105-87cd-292c632847c9" xlink:type="arc"/>
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>5
<FILENAME>spsc-20260629_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2026 Workiva-->
<!--r:019d726d-e0a2-7f08-9c37-20a11dea5949,g:aa020773-9240-4449-869e-daa4f8245da4-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member"/>
  <link:roleRef roleURI="http://www.spscommerce.com/role/Cover" xlink:type="simple" xlink:href="spsc-20260629.xsd#Cover"/>
  <link:definitionLink xlink:role="http://www.spscommerce.com/role/Cover" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentInformationLineItems_019d726d-e0a2-758e-906f-5260bf26d775" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentInformationLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentInformationTable_019d726d-e0a2-78f1-8c4b-cb7d0886a954" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentInformationTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_dei_DocumentInformationLineItems_019d726d-e0a2-758e-906f-5260bf26d775" xlink:to="loc_dei_DocumentInformationTable_019d726d-e0a2-78f1-8c4b-cb7d0886a954" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7490-ae66-a08c4b9fd45f" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_dei_DocumentInformationTable_019d726d-e0a2-78f1-8c4b-cb7d0886a954" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7490-ae66-a08c4b9fd45f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7490-ae66-a08c4b9fd45f_default" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7490-ae66-a08c4b9fd45f" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7490-ae66-a08c4b9fd45f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7f12-a1b2-8aacdd6a3be4" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7490-ae66-a08c4b9fd45f" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7f12-a1b2-8aacdd6a3be4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-7ccc-b2e6-c02b57d403de" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7f12-a1b2-8aacdd6a3be4" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-7ccc-b2e6-c02b57d403de" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType_019d726d-e0a2-7907-aed2-33a603cb168e" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentType"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_019d726d-e0a2-758e-906f-5260bf26d775" xlink:to="loc_dei_DocumentType_019d726d-e0a2-7907-aed2-33a603cb168e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName_019d726d-e0a2-74bc-8033-7519ef6c7bc7" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityRegistrantName"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_019d726d-e0a2-758e-906f-5260bf26d775" xlink:to="loc_dei_EntityRegistrantName_019d726d-e0a2-74bc-8033-7519ef6c7bc7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey_019d726d-e0a2-7f4e-b8c5-31975f88d0db" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityCentralIndexKey"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_019d726d-e0a2-758e-906f-5260bf26d775" xlink:to="loc_dei_EntityCentralIndexKey_019d726d-e0a2-7f4e-b8c5-31975f88d0db" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag_019d726d-e0a2-7f88-8e27-708625a36e5d" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_AmendmentFlag"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_DocumentInformationLineItems_019d726d-e0a2-758e-906f-5260bf26d775" xlink:to="loc_dei_AmendmentFlag_019d726d-e0a2-7f88-8e27-708625a36e5d" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement" xlink:type="simple" xlink:href="spsc-20260629.xsd#STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement"/>
  <link:definitionLink xlink:role="http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems_019d726d-e0a2-78f6-8fbb-34fd990b1149" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable_019d726d-e0a2-758d-b059-892233e215e6" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems_019d726d-e0a2-78f6-8fbb-34fd990b1149" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable_019d726d-e0a2-758d-b059-892233e215e6" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7cc4-aef3-1e76b8b25235" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable_019d726d-e0a2-758d-b059-892233e215e6" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7cc4-aef3-1e76b8b25235" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7cc4-aef3-1e76b8b25235_default" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7cc4-aef3-1e76b8b25235" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7cc4-aef3-1e76b8b25235_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7834-a6ce-1ef14feecb39" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7cc4-aef3-1e76b8b25235" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7834-a6ce-1ef14feecb39" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-70a4-b2ae-1ba9f98298c5" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7834-a6ce-1ef14feecb39" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-70a4-b2ae-1ba9f98298c5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7866-b984-82abc180c32c" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable_019d726d-e0a2-758d-b059-892233e215e6" xlink:to="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7866-b984-82abc180c32c" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7866-b984-82abc180c32c_default" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7866-b984-82abc180c32c" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7866-b984-82abc180c32c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7492-829d-8c765c58a31b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7866-b984-82abc180c32c" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7492-829d-8c765c58a31b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MutualFundMember_019d726d-e0a2-7c20-9e4c-0c2db998a04c" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_MutualFundMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7492-829d-8c765c58a31b" xlink:to="loc_us-gaap_MutualFundMember_019d726d-e0a2-7c20-9e4c-0c2db998a04c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember_019d726d-e0a2-75ec-a51f-14eebbd8bd16" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7492-829d-8c765c58a31b" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember_019d726d-e0a2-75ec-a51f-14eebbd8bd16" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember_019d726d-e0a2-7fb6-8b45-775a0702f2da" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7492-829d-8c765c58a31b" xlink:to="loc_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember_019d726d-e0a2-7fb6-8b45-775a0702f2da" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract_019d726d-e0a2-73ff-b263-6386e676a9bf" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAssetAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems_019d726d-e0a2-78f6-8fbb-34fd990b1149" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract_019d726d-e0a2-73ff-b263-6386e676a9bf" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanCash_019d726d-e0a2-73a8-b138-6d2d03c949de" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanCash"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract_019d726d-e0a2-73ff-b263-6386e676a9bf" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanCash_019d726d-e0a2-73a8-b138-6d2d03c949de" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract_019d726d-e0a2-75a5-a661-fcbc5609c0cd" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract_019d726d-e0a2-73ff-b263-6386e676a9bf" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract_019d726d-e0a2-75a5-a661-fcbc5609c0cd" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue_019d726d-e0a2-786b-b605-a7d486f5345a" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract_019d726d-e0a2-75a5-a661-fcbc5609c0cd" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue_019d726d-e0a2-786b-b605-a7d486f5345a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanOtherReceivable_019ef07f-e1c8-762c-a26b-cd2b280dd77e" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanOtherReceivable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract_019d726d-e0a2-73ff-b263-6386e676a9bf" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanOtherReceivable_019ef07f-e1c8-762c-a26b-cd2b280dd77e" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant_019d726d-e0a2-7322-9424-a133aa9e5d50" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract_019d726d-e0a2-73ff-b263-6386e676a9bf" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant_019d726d-e0a2-7322-9424-a133aa9e5d50" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanReceivable_019f03fd-ce00-752c-bc19-c3ed21d4a62f" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanReceivable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract_019d726d-e0a2-73ff-b263-6386e676a9bf" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanReceivable_019f03fd-ce00-752c-bc19-c3ed21d4a62f" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit_019d726d-e0a2-7f29-8133-53c950a3030c" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems_019d726d-e0a2-78f6-8fbb-34fd990b1149" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit_019d726d-e0a2-7f29-8133-53c950a3030c" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement" xlink:type="simple" xlink:href="spsc-20260629.xsd#STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"/>
  <link:definitionLink xlink:role="http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems_019d726d-e0a2-7e38-8227-30cb7e093e78" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitTable_019d726d-e0a2-71a0-927b-90e0a6ef60fb" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems_019d726d-e0a2-7e38-8227-30cb7e093e78" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitTable_019d726d-e0a2-71a0-927b-90e0a6ef60fb" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-79aa-a8f8-204165a40c6e" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitTable_019d726d-e0a2-71a0-927b-90e0a6ef60fb" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-79aa-a8f8-204165a40c6e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-79aa-a8f8-204165a40c6e_default" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-79aa-a8f8-204165a40c6e" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-79aa-a8f8-204165a40c6e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-76aa-ab4e-6a2addb2294f" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-79aa-a8f8-204165a40c6e" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-76aa-ab4e-6a2addb2294f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-71e3-acb1-88648388aeb0" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-76aa-ab4e-6a2addb2294f" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-71e3-acb1-88648388aeb0" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract_019d726d-e0a2-7cf3-8b48-7e615fa918f2" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems_019d726d-e0a2-7e38-8227-30cb7e093e78" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract_019d726d-e0a2-7cf3-8b48-7e615fa918f2" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract_019d726d-e0a2-7133-8c62-8ede5e7683be" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract_019d726d-e0a2-7cf3-8b48-7e615fa918f2" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract_019d726d-e0a2-7133-8c62-8ede5e7683be" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment_019d726d-e0a2-7f6a-a8cf-eed038d5e617" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract_019d726d-e0a2-7133-8c62-8ede5e7683be" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment_019d726d-e0a2-7f6a-a8cf-eed038d5e617" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment_019d726d-e0a2-7097-ba49-0b03e1e87cfe" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract_019d726d-e0a2-7133-8c62-8ede5e7683be" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment_019d726d-e0a2-7097-ba49-0b03e1e87cfe" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment_019d726d-e0a2-73fb-8844-b25016dc3a0a" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract_019d726d-e0a2-7133-8c62-8ede5e7683be" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment_019d726d-e0a2-73fb-8844-b25016dc3a0a" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant_019d726d-e0a2-7169-9a6e-58aec44907bb" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract_019d726d-e0a2-7cf3-8b48-7e615fa918f2" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant_019d726d-e0a2-7169-9a6e-58aec44907bb" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract_019d726d-e0a2-74b4-a2c1-517f1d38ecc9" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract_019d726d-e0a2-7cf3-8b48-7e615fa918f2" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract_019d726d-e0a2-74b4-a2c1-517f1d38ecc9" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover_019d726d-e0a2-7889-8e54-5e1844a2fb26" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract_019d726d-e0a2-74b4-a2c1-517f1d38ecc9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover_019d726d-e0a2-7889-8e54-5e1844a2fb26" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash_019d726d-e0a2-7ac7-a1b2-822c2d3ea3d6" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract_019d726d-e0a2-74b4-a2c1-517f1d38ecc9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash_019d726d-e0a2-7ac7-a1b2-822c2d3ea3d6" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover_019d726d-e0a2-74af-a64f-ae594935bfbb" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract_019d726d-e0a2-74b4-a2c1-517f1d38ecc9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover_019d726d-e0a2-74af-a64f-ae594935bfbb" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution_019d726d-e0a2-7b78-ab63-cc4429ef81de" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract_019d726d-e0a2-74b4-a2c1-517f1d38ecc9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution_019d726d-e0a2-7b78-ab63-cc4429ef81de" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease_019d726d-e0a2-75c8-96f5-fd2a517433c7" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract_019d726d-e0a2-7cf3-8b48-7e615fa918f2" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease_019d726d-e0a2-75c8-96f5-fd2a517433c7" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract_019d726d-e0a2-7ac0-be91-20eb36c90339" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems_019d726d-e0a2-7e38-8227-30cb7e093e78" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract_019d726d-e0a2-7ac0-be91-20eb36c90339" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant_019d726d-e0a2-754c-ac7c-cdf9ccf10721" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract_019d726d-e0a2-7ac0-be91-20eb36c90339" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant_019d726d-e0a2-754c-ac7c-cdf9ccf10721" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense_019d726d-e0a2-70c7-af0c-ac33d8a6323c" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract_019d726d-e0a2-7ac0-be91-20eb36c90339" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense_019d726d-e0a2-70c7-af0c-ac33d8a6323c" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease_019d726d-e0a2-734e-9f4f-5a058563c75b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract_019d726d-e0a2-7ac0-be91-20eb36c90339" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease_019d726d-e0a2-734e-9f4f-5a058563c75b" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease_019d726d-e0a2-749e-b440-d76612ba2473" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems_019d726d-e0a2-7e38-8227-30cb7e093e78" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease_019d726d-e0a2-749e-b440-d76612ba2473" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan_019d726d-e0a2-71a6-b8ff-f5020572d5ee" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems_019d726d-e0a2-7e38-8227-30cb7e093e78" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan_019d726d-e0a2-71a6-b8ff-f5020572d5ee" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract_019d726d-e0a2-780e-be54-44c1c76dc688" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems_019d726d-e0a2-7e38-8227-30cb7e093e78" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract_019d726d-e0a2-780e-be54-44c1c76dc688" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit_019d726d-e0a2-762f-8a05-16b5cba23922" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract_019d726d-e0a2-780e-be54-44c1c76dc688" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit_019d726d-e0a2-762f-8a05-16b5cba23922" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit_019d726d-e0a2-7c83-b910-77f5dc956a15" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/PlanDescription" xlink:type="simple" xlink:href="spsc-20260629.xsd#PlanDescription"/>
  <link:definitionLink xlink:role="http://www.spscommerce.com/role/PlanDescription" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-737a-b866-8d2b286cab67" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-78f4-b272-af080249f585" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-737a-b866-8d2b286cab67" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-78f4-b272-af080249f585" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-725b-a878-977fe98f3b84" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-78f4-b272-af080249f585" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-725b-a878-977fe98f3b84" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-725b-a878-977fe98f3b84_default" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-725b-a878-977fe98f3b84" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-725b-a878-977fe98f3b84_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-72d7-9b07-9ae5bf58d4b2" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-725b-a878-977fe98f3b84" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-72d7-9b07-9ae5bf58d4b2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-7f56-a85a-383d90652920" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-72d7-9b07-9ae5bf58d4b2" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-7f56-a85a-383d90652920" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTextBlock_019d726d-e0a2-7827-bb12-0b70399236d6" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-737a-b866-8d2b286cab67" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTextBlock_019d726d-e0a2-7827-bb12-0b70399236d6" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/SummaryofSignificantAccountingPolicies" xlink:type="simple" xlink:href="spsc-20260629.xsd#SummaryofSignificantAccountingPolicies"/>
  <link:definitionLink xlink:role="http://www.spscommerce.com/role/SummaryofSignificantAccountingPolicies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-759c-b55a-60b5e59ecbf3" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-7eb1-841f-b0fd7e3626e9" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-759c-b55a-60b5e59ecbf3" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-7eb1-841f-b0fd7e3626e9" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7a94-bc9f-aacaa84c1fe9" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-7eb1-841f-b0fd7e3626e9" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7a94-bc9f-aacaa84c1fe9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7a94-bc9f-aacaa84c1fe9_default" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7a94-bc9f-aacaa84c1fe9" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7a94-bc9f-aacaa84c1fe9_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-73ac-b920-807e703352b7" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7a94-bc9f-aacaa84c1fe9" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-73ac-b920-807e703352b7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-74d8-a1c8-f193a8a2f0eb" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-73ac-b920-807e703352b7" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-74d8-a1c8-f193a8a2f0eb" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock_019d726d-e0a2-72d9-abcb-357554ad356e" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-759c-b55a-60b5e59ecbf3" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock_019d726d-e0a2-72d9-abcb-357554ad356e" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/FairValueMeasurements" xlink:type="simple" xlink:href="spsc-20260629.xsd#FairValueMeasurements"/>
  <link:definitionLink xlink:role="http://www.spscommerce.com/role/FairValueMeasurements" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_019d726d-e0a2-742a-a630-b4fea906f668" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-7d2e-88bd-f7459a73b409" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_019d726d-e0a2-742a-a630-b4fea906f668" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-7d2e-88bd-f7459a73b409" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7506-a664-ec7d53318070" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-7d2e-88bd-f7459a73b409" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7506-a664-ec7d53318070" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7506-a664-ec7d53318070_default" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7506-a664-ec7d53318070" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7506-a664-ec7d53318070_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7939-8d05-f5c068740583" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7506-a664-ec7d53318070" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7939-8d05-f5c068740583" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-7ea4-92dc-eabea8d109e8" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7939-8d05-f5c068740583" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-7ea4-92dc-eabea8d109e8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock_019d726d-e0a2-795d-8c28-a5913ba78c3e" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_019d726d-e0a2-742a-a630-b4fea906f668" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock_019d726d-e0a2-795d-8c28-a5913ba78c3e" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/IncomeTaxStatus" xlink:type="simple" xlink:href="spsc-20260629.xsd#IncomeTaxStatus"/>
  <link:definitionLink xlink:role="http://www.spscommerce.com/role/IncomeTaxStatus" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems_019d726d-e0a2-7ac6-b840-17b862037838" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTable_019d726d-e0a2-7c35-ab64-3ba299239d8b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanTaxStatusTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems_019d726d-e0a2-7ac6-b840-17b862037838" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTable_019d726d-e0a2-7c35-ab64-3ba299239d8b" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7f92-a1ea-a679a9840d44" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTable_019d726d-e0a2-7c35-ab64-3ba299239d8b" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7f92-a1ea-a679a9840d44" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7f92-a1ea-a679a9840d44_default" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7f92-a1ea-a679a9840d44" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7f92-a1ea-a679a9840d44_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7a23-b026-40ee8c8dcf65" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7f92-a1ea-a679a9840d44" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7a23-b026-40ee8c8dcf65" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-7733-b1b3-70a4e6299506" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7a23-b026-40ee8c8dcf65" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-7733-b1b3-70a4e6299506" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTextBlock_019d726d-e0a2-7613-9c3a-7987499c749e" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanTaxStatusTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems_019d726d-e0a2-7ac6-b840-17b862037838" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTextBlock_019d726d-e0a2-7613-9c3a-7987499c749e" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/PartyinInterestTransactions" xlink:type="simple" xlink:href="spsc-20260629.xsd#PartyinInterestTransactions"/>
  <link:definitionLink xlink:role="http://www.spscommerce.com/role/PartyinInterestTransactions" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems_019d726d-e0a2-7d1f-b67f-450b445742a6" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable_019d726d-e0a2-7946-b35f-a8196dc96d70" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems_019d726d-e0a2-7d1f-b67f-450b445742a6" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable_019d726d-e0a2-7946-b35f-a8196dc96d70" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7287-8a74-f373ecd45d5f" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable_019d726d-e0a2-7946-b35f-a8196dc96d70" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7287-8a74-f373ecd45d5f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7287-8a74-f373ecd45d5f_default" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7287-8a74-f373ecd45d5f" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7287-8a74-f373ecd45d5f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7f69-a904-4a0c3e3eda5e" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7287-8a74-f373ecd45d5f" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7f69-a904-4a0c3e3eda5e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-7c73-92eb-e184a6bb163a" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7f69-a904-4a0c3e3eda5e" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-7c73-92eb-e184a6bb163a" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock_019d726d-e0a2-7c1e-a056-a3c100ebdb3d" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems_019d726d-e0a2-7d1f-b67f-450b445742a6" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock_019d726d-e0a2-7c1e-a056-a3c100ebdb3d" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYear" xlink:type="simple" xlink:href="spsc-20260629.xsd#Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYear"/>
  <link:definitionLink xlink:role="http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYear" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-7864-b041-c79990290237" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-7efe-bb91-844c235adf49" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-7864-b041-c79990290237" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-7efe-bb91-844c235adf49" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7b82-97cf-a020362b50d5" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-7efe-bb91-844c235adf49" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7b82-97cf-a020362b50d5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7b82-97cf-a020362b50d5_default" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7b82-97cf-a020362b50d5" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7b82-97cf-a020362b50d5_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7816-afe9-176c583eb2d1" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7b82-97cf-a020362b50d5" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7816-afe9-176c583eb2d1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-7587-9ee5-2dc428986e0c" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7816-afe9-176c583eb2d1" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-7587-9ee5-2dc428986e0c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock_019d726d-e0a2-7f57-99a7-7da236ef2f10" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-7864-b041-c79990290237" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock_019d726d-e0a2-7f57-99a7-7da236ef2f10" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies" xlink:type="simple" xlink:href="spsc-20260629.xsd#SummaryofSignificantAccountingPoliciesPolicies"/>
  <link:definitionLink xlink:role="http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-77dc-a958-2de592353ba9" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-7c32-b4cb-c6b391b0f080" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-77dc-a958-2de592353ba9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-7c32-b4cb-c6b391b0f080" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-70e0-9f2b-cd12cc4258fe" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-7c32-b4cb-c6b391b0f080" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-70e0-9f2b-cd12cc4258fe" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-70e0-9f2b-cd12cc4258fe_default" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-70e0-9f2b-cd12cc4258fe" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-70e0-9f2b-cd12cc4258fe_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-79c5-842c-c5e6b8365784" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-70e0-9f2b-cd12cc4258fe" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-79c5-842c-c5e6b8365784" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-71cf-aab6-cddb002c726b" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-79c5-842c-c5e6b8365784" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-71cf-aab6-cddb002c726b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock_019d726d-e0a2-72c2-8284-c3836012402c" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-77dc-a958-2de592353ba9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock_019d726d-e0a2-72c2-8284-c3836012402c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentPolicyTextBlock_019d726d-e0a2-78d1-b99f-ec2b87c2365d" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentPolicyTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-77dc-a958-2de592353ba9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentPolicyTextBlock_019d726d-e0a2-78d1-b99f-ec2b87c2365d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanExpensePolicyTextBlock_019d726d-e0a2-70c3-87cc-675a3c6b66f9" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanExpensePolicyTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-77dc-a958-2de592353ba9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanExpensePolicyTextBlock_019d726d-e0a2-70c3-87cc-675a3c6b66f9" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock_019d726d-e0a2-715a-bdf3-cfa0a7ce2534" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-77dc-a958-2de592353ba9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock_019d726d-e0a2-715a-bdf3-cfa0a7ce2534" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EbpRiskAndUncertaintyPolicyTextBlock_019d726d-e0a2-70db-ac5e-36f3203a7255" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EbpRiskAndUncertaintyPolicyTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-77dc-a958-2de592353ba9" xlink:to="loc_us-gaap-ebp_EbpRiskAndUncertaintyPolicyTextBlock_019d726d-e0a2-70db-ac5e-36f3203a7255" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanUseOfEstimatePolicyTextBlock_019d726d-e0a2-78f9-8172-19fc4ae39698" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanUseOfEstimatePolicyTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-77dc-a958-2de592353ba9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanUseOfEstimatePolicyTextBlock_019d726d-e0a2-78f9-8172-19fc4ae39698" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock_019d726d-e0a2-7651-9142-e285cb56c2c9" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-77dc-a958-2de592353ba9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock_019d726d-e0a2-7651-9142-e285cb56c2c9" xlink:type="arc" order="6"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/PlanDescriptionTables" xlink:type="simple" xlink:href="spsc-20260629.xsd#PlanDescriptionTables"/>
  <link:definitionLink xlink:role="http://www.spscommerce.com/role/PlanDescriptionTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-7967-9f58-3eefa98ee9aa" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-7bad-839b-2d43552ea099" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-7967-9f58-3eefa98ee9aa" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-7bad-839b-2d43552ea099" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7ccb-9188-fb9828521bab" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-7bad-839b-2d43552ea099" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7ccb-9188-fb9828521bab" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7ccb-9188-fb9828521bab_default" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7ccb-9188-fb9828521bab" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7ccb-9188-fb9828521bab_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-773d-aa4a-899c05ce8e93" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7ccb-9188-fb9828521bab" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-773d-aa4a-899c05ce8e93" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-7131-856a-91aa6f87ba8c" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-773d-aa4a-899c05ce8e93" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-7131-856a-91aa6f87ba8c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPEmployerContributionVestingScheduleTableTextBlock_019d726d-e0a2-7286-9de9-0a258ae57c56" xlink:href="spsc-20260629.xsd#spsc_EBPEmployerContributionVestingScheduleTableTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-7967-9f58-3eefa98ee9aa" xlink:to="loc_spsc_EBPEmployerContributionVestingScheduleTableTextBlock_019d726d-e0a2-7286-9de9-0a258ae57c56" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/FairValueMeasurementsTables" xlink:type="simple" xlink:href="spsc-20260629.xsd#FairValueMeasurementsTables"/>
  <link:definitionLink xlink:role="http://www.spscommerce.com/role/FairValueMeasurementsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_019d726d-e0a2-7434-98b0-3737fe0f8a51" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-79d7-baba-6763624fadd5" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_019d726d-e0a2-7434-98b0-3737fe0f8a51" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-79d7-baba-6763624fadd5" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-74e6-b6f7-6890c33b053c" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-79d7-baba-6763624fadd5" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-74e6-b6f7-6890c33b053c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-74e6-b6f7-6890c33b053c_default" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-74e6-b6f7-6890c33b053c" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-74e6-b6f7-6890c33b053c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7b26-b95f-90f997684742" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-74e6-b6f7-6890c33b053c" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7b26-b95f-90f997684742" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-7218-849c-29e77374f353" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7b26-b95f-90f997684742" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-7218-849c-29e77374f353" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock_019d726d-e0a2-76df-973b-8a902819297c" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_019d726d-e0a2-7434-98b0-3737fe0f8a51" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock_019d726d-e0a2-76df-973b-8a902819297c" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails" xlink:type="simple" xlink:href="spsc-20260629.xsd#PlanDescriptionNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-78a6-87f0-c92b1a337680" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-78a6-87f0-c92b1a337680" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-73ac-9567-0b96fd000810" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-78a6-87f0-c92b1a337680" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-73ac-9567-0b96fd000810" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-73ac-9567-0b96fd000810_default" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-73ac-9567-0b96fd000810" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-73ac-9567-0b96fd000810_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7e57-92ab-2b7970b289f0" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-73ac-9567-0b96fd000810" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7e57-92ab-2b7970b289f0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-73a2-8803-6bc42dfef35e" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7e57-92ab-2b7970b289f0" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-73a2-8803-6bc42dfef35e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_019d726d-e0a2-7141-95b5-8b9d4b8aaf31" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-78a6-87f0-c92b1a337680" xlink:to="loc_srt_RangeAxis_019d726d-e0a2-7141-95b5-8b9d4b8aaf31" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_019d726d-e0a2-7141-95b5-8b9d4b8aaf31_default" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_019d726d-e0a2-7141-95b5-8b9d4b8aaf31" xlink:to="loc_srt_RangeMember_019d726d-e0a2-7141-95b5-8b9d4b8aaf31_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_019d726d-e0a2-7766-88b0-93adb07d4558" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_019d726d-e0a2-7141-95b5-8b9d4b8aaf31" xlink:to="loc_srt_RangeMember_019d726d-e0a2-7766-88b0-93adb07d4558" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_019d726d-e0a2-77db-84bd-13937b635552" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_019d726d-e0a2-7766-88b0-93adb07d4558" xlink:to="loc_srt_MinimumMember_019d726d-e0a2-77db-84bd-13937b635552" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_019d726d-e0a2-77a4-9d2a-01defe237ecf" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_019d726d-e0a2-7766-88b0-93adb07d4558" xlink:to="loc_srt_MaximumMember_019d726d-e0a2-77a4-9d2a-01defe237ecf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan_019d726d-e0a2-71bc-8c69-50a3d66bf596" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan_019d726d-e0a2-71bc-8c69-50a3d66bf596" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPMinimumAgeToParticipate_019d726d-e0a2-7a5a-8fef-e3a7469b4227" xlink:href="spsc-20260629.xsd#spsc_EBPMinimumAgeToParticipate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_spsc_EBPMinimumAgeToParticipate_019d726d-e0a2-7a5a-8fef-e3a7469b4227" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPRequisiteServicePeriod_019d726d-e0a2-7655-87e9-a2661e8bdeab" xlink:href="spsc-20260629.xsd#spsc_EBPRequisiteServicePeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_spsc_EBPRequisiteServicePeriod_019d726d-e0a2-7655-87e9-a2661e8bdeab" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate_019d726d-e0a2-7d62-8f0a-fb324b7272c6" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate_019d726d-e0a2-7d62-8f0a-fb324b7272c6" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage_019d726d-e0a2-7809-9f03-bb3ddd644690" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage_019d726d-e0a2-7809-9f03-bb3ddd644690" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionMatchingPercentage_019d726d-e0a2-7796-8572-6ab6c85a2aac" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanEmployerContributionMatchingPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionMatchingPercentage_019d726d-e0a2-7796-8572-6ab6c85a2aac" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage_019d726d-e0a2-7f12-b201-43c4682bb118" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage_019d726d-e0a2-7f12-b201-43c4682bb118" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount_019d726d-e0a2-7840-806c-12a5238a26db" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount_019d726d-e0a2-7840-806c-12a5238a26db" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount_019d726d-e0a2-714c-857d-dffe91dfcd25" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount_019d726d-e0a2-714c-857d-dffe91dfcd25" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage_019d726d-e0a2-719d-a048-8d78473c9fc5" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage_019d726d-e0a2-719d-a048-8d78473c9fc5" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPNoteReceivableFromParticipantBorrowingTerm_019d726d-e0a2-7f4d-893f-bc31a2027e9e" xlink:href="spsc-20260629.xsd#spsc_EBPNoteReceivableFromParticipantBorrowingTerm"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_spsc_EBPNoteReceivableFromParticipantBorrowingTerm_019d726d-e0a2-7f4d-893f-bc31a2027e9e" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed_019d726d-e0a2-7d8e-8523-a7cd48315853" xlink:href="spsc-20260629.xsd#spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed_019d726d-e0a2-7d8e-8523-a7cd48315853" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPInvoluntaryCashOutLimit_019d726d-e0a2-79c7-9112-43358c59db05" xlink:href="spsc-20260629.xsd#spsc_EBPInvoluntaryCashOutLimit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_spsc_EBPInvoluntaryCashOutLimit_019d726d-e0a2-79c7-9112-43358c59db05" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit_019d726d-e0a2-74d6-bde4-d9e9ef9ef697" xlink:href="spsc-20260629.xsd#spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit_019d726d-e0a2-74d6-bde4-d9e9ef9ef697" xlink:type="arc" order="13"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/PlanDescriptionVestingScheduleofEmployerContributionDetails" xlink:type="simple" xlink:href="spsc-20260629.xsd#PlanDescriptionVestingScheduleofEmployerContributionDetails"/>
  <link:definitionLink xlink:role="http://www.spscommerce.com/role/PlanDescriptionVestingScheduleofEmployerContributionDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-7b0b-a9a3-ed5639604c99" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-73d1-a5b2-29a1b09b0681" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-7b0b-a9a3-ed5639604c99" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-73d1-a5b2-29a1b09b0681" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPEmployerContributionVestingAxis_019d726d-e0a2-7193-b946-b12a987da0a4" xlink:href="spsc-20260629.xsd#spsc_EBPEmployerContributionVestingAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-73d1-a5b2-29a1b09b0681" xlink:to="loc_spsc_EBPEmployerContributionVestingAxis_019d726d-e0a2-7193-b946-b12a987da0a4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPEmployerContributionVestingDomain_019d726d-e0a2-7193-b946-b12a987da0a4_default" xlink:href="spsc-20260629.xsd#spsc_EBPEmployerContributionVestingDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_spsc_EBPEmployerContributionVestingAxis_019d726d-e0a2-7193-b946-b12a987da0a4" xlink:to="loc_spsc_EBPEmployerContributionVestingDomain_019d726d-e0a2-7193-b946-b12a987da0a4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPEmployerContributionVestingDomain_019d726d-e0a2-72a1-9b07-15cc05d0ca7b" xlink:href="spsc-20260629.xsd#spsc_EBPEmployerContributionVestingDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_spsc_EBPEmployerContributionVestingAxis_019d726d-e0a2-7193-b946-b12a987da0a4" xlink:to="loc_spsc_EBPEmployerContributionVestingDomain_019d726d-e0a2-72a1-9b07-15cc05d0ca7b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPVestingScheduleTrancheOneMember_019d726d-e0a2-7df1-b4e4-3ab1cd7bb116" xlink:href="spsc-20260629.xsd#spsc_EBPVestingScheduleTrancheOneMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_spsc_EBPEmployerContributionVestingDomain_019d726d-e0a2-72a1-9b07-15cc05d0ca7b" xlink:to="loc_spsc_EBPVestingScheduleTrancheOneMember_019d726d-e0a2-7df1-b4e4-3ab1cd7bb116" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPVestingScheduleTrancheTwoMember_019d726d-e0a2-7490-9fdf-4dd51b7a5dd2" xlink:href="spsc-20260629.xsd#spsc_EBPVestingScheduleTrancheTwoMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_spsc_EBPEmployerContributionVestingDomain_019d726d-e0a2-72a1-9b07-15cc05d0ca7b" xlink:to="loc_spsc_EBPVestingScheduleTrancheTwoMember_019d726d-e0a2-7490-9fdf-4dd51b7a5dd2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPVestingScheduleTrancheThreeMember_019d726d-e0a2-7b35-8904-2a4f9c1a5f5f" xlink:href="spsc-20260629.xsd#spsc_EBPVestingScheduleTrancheThreeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_spsc_EBPEmployerContributionVestingDomain_019d726d-e0a2-72a1-9b07-15cc05d0ca7b" xlink:to="loc_spsc_EBPVestingScheduleTrancheThreeMember_019d726d-e0a2-7b35-8904-2a4f9c1a5f5f" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7b1b-8f06-a8cfd983e63c" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-73d1-a5b2-29a1b09b0681" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7b1b-8f06-a8cfd983e63c" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7b1b-8f06-a8cfd983e63c_default" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7b1b-8f06-a8cfd983e63c" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7b1b-8f06-a8cfd983e63c_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-71be-b345-39e7971265de" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7b1b-8f06-a8cfd983e63c" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-71be-b345-39e7971265de" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-77cb-8a47-2c4037dadad8" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-71be-b345-39e7971265de" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-77cb-8a47-2c4037dadad8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPEmployerContributionVestingPercentage_019d726d-e0a2-7b7f-a84f-6d4c834fb061" xlink:href="spsc-20260629.xsd#spsc_EBPEmployerContributionVestingPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-7b0b-a9a3-ed5639604c99" xlink:to="loc_spsc_EBPEmployerContributionVestingPercentage_019d726d-e0a2-7b7f-a84f-6d4c834fb061" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPEmployerContributionVestingRequisiteServicePeriod_019d726d-e0a2-71e7-b75c-af671342b392" xlink:href="spsc-20260629.xsd#spsc_EBPEmployerContributionVestingRequisiteServicePeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-7b0b-a9a3-ed5639604c99" xlink:to="loc_spsc_EBPEmployerContributionVestingRequisiteServicePeriod_019d726d-e0a2-71e7-b75c-af671342b392" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesDetails" xlink:type="simple" xlink:href="spsc-20260629.xsd#SummaryofSignificantAccountingPoliciesDetails"/>
  <link:definitionLink xlink:role="http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-76da-af07-976fc2df37c8" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-70c9-be51-c9de37aac8f8" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-76da-af07-976fc2df37c8" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-70c9-be51-c9de37aac8f8" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-758d-ab20-d1cb83647f51" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-70c9-be51-c9de37aac8f8" xlink:to="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-758d-ab20-d1cb83647f51" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-758d-ab20-d1cb83647f51_default" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-758d-ab20-d1cb83647f51" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-758d-ab20-d1cb83647f51_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-752b-8641-7c174342a806" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-758d-ab20-d1cb83647f51" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-752b-8641-7c174342a806" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember_019d726d-e0a2-7b06-a760-2a793897cc8c" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-752b-8641-7c174342a806" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember_019d726d-e0a2-7b06-a760-2a793897cc8c" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7685-8b67-3323506d26a3" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-70c9-be51-c9de37aac8f8" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7685-8b67-3323506d26a3" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7685-8b67-3323506d26a3_default" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7685-8b67-3323506d26a3" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7685-8b67-3323506d26a3_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7c42-88e4-493b3f6ce847" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7685-8b67-3323506d26a3" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7c42-88e4-493b3f6ce847" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-73d1-82b6-011e4075ed8f" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7c42-88e4-493b3f6ce847" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-73d1-82b6-011e4075ed8f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage_019d726d-e0a2-7b3a-85a4-f096b813b5e5" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-76da-af07-976fc2df37c8" xlink:to="loc_us-gaap-ebp_EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage_019d726d-e0a2-7b3a-85a4-f096b813b5e5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan_019d726d-e0a2-7419-afba-ae2127c5d554" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-76da-af07-976fc2df37c8" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan_019d726d-e0a2-7419-afba-ae2127c5d554" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails" xlink:type="simple" xlink:href="spsc-20260629.xsd#FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails"/>
  <link:definitionLink xlink:role="http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_019d726d-e0a2-76db-b542-41edb96246b1" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-7ec5-b184-5d2d5384e533" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_019d726d-e0a2-76db-b542-41edb96246b1" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-7ec5-b184-5d2d5384e533" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_019d726d-e0a2-706e-a87e-b575a2ae4358" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-7ec5-b184-5d2d5384e533" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_019d726d-e0a2-706e-a87e-b575a2ae4358" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_019d726d-e0a2-706e-a87e-b575a2ae4358_default" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_019d726d-e0a2-706e-a87e-b575a2ae4358" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_019d726d-e0a2-706e-a87e-b575a2ae4358_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_019d726d-e0a2-71f4-a461-4810765ffbca" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_019d726d-e0a2-706e-a87e-b575a2ae4358" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_019d726d-e0a2-71f4-a461-4810765ffbca" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel12And3Member_019d726d-e0a2-7f34-98a5-200bb8f16fca" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueInputsLevel12And3Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_019d726d-e0a2-71f4-a461-4810765ffbca" xlink:to="loc_us-gaap_FairValueInputsLevel12And3Member_019d726d-e0a2-7f34-98a5-200bb8f16fca" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_019d726d-e0a2-71d0-b71b-c0c2b158bdd5" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueInputsLevel12And3Member_019d726d-e0a2-7f34-98a5-200bb8f16fca" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_019d726d-e0a2-71d0-b71b-c0c2b158bdd5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_019d726d-e0a2-724f-a2a7-b90235e0d1d1" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueInputsLevel12And3Member_019d726d-e0a2-7f34-98a5-200bb8f16fca" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_019d726d-e0a2-724f-a2a7-b90235e0d1d1" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_019d726d-e0a2-71b9-ab61-a5595ecf663b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueInputsLevel12And3Member_019d726d-e0a2-7f34-98a5-200bb8f16fca" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_019d726d-e0a2-71b9-ab61-a5595ecf663b" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasuredAtNetAssetValuePerShareMember_019d726d-e0a2-7530-9903-f5fd523434dc" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueMeasuredAtNetAssetValuePerShareMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_019d726d-e0a2-71f4-a461-4810765ffbca" xlink:to="loc_us-gaap_FairValueMeasuredAtNetAssetValuePerShareMember_019d726d-e0a2-7530-9903-f5fd523434dc" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7ff9-9421-400be807b4cf" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-7ec5-b184-5d2d5384e533" xlink:to="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7ff9-9421-400be807b4cf" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7ff9-9421-400be807b4cf_default" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7ff9-9421-400be807b4cf" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7ff9-9421-400be807b4cf_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7850-a38f-db8658e5b56b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7ff9-9421-400be807b4cf" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7850-a38f-db8658e5b56b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember_019d726d-e0a2-7357-9f94-f91863c029e2" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7850-a38f-db8658e5b56b" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember_019d726d-e0a2-7357-9f94-f91863c029e2" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MutualFundMember_019d726d-e0a2-745c-8763-6171d3042fbf" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_MutualFundMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7850-a38f-db8658e5b56b" xlink:to="loc_us-gaap_MutualFundMember_019d726d-e0a2-745c-8763-6171d3042fbf" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember_019d726d-e0a2-74c3-afc9-0a89d67a8546" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7850-a38f-db8658e5b56b" xlink:to="loc_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember_019d726d-e0a2-74c3-afc9-0a89d67a8546" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7ae1-bedb-d879f028122a" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-7ec5-b184-5d2d5384e533" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7ae1-bedb-d879f028122a" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7ae1-bedb-d879f028122a_default" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7ae1-bedb-d879f028122a" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7ae1-bedb-d879f028122a_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7943-b8c9-ea470cd6f48c" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7ae1-bedb-d879f028122a" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7943-b8c9-ea470cd6f48c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-78c1-802d-c01d2f6e7769" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7943-b8c9-ea470cd6f48c" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-78c1-802d-c01d2f6e7769" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue_019d726d-e0a2-7541-89ca-30a221886a9c" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_019d726d-e0a2-76db-b542-41edb96246b1" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue_019d726d-e0a2-7541-89ca-30a221886a9c" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/PartyinInterestTransactionsDetails" xlink:type="simple" xlink:href="spsc-20260629.xsd#PartyinInterestTransactionsDetails"/>
  <link:definitionLink xlink:role="http://www.spscommerce.com/role/PartyinInterestTransactionsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems_019d726d-e0a2-7c70-9b53-2e7c7ab7fb2e" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable_019d726d-e0a2-7a12-b585-60be15e0e2e5" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems_019d726d-e0a2-7c70-9b53-2e7c7ab7fb2e" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable_019d726d-e0a2-7a12-b585-60be15e0e2e5" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7c94-8169-1225429e39d6" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable_019d726d-e0a2-7a12-b585-60be15e0e2e5" xlink:to="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7c94-8169-1225429e39d6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7c94-8169-1225429e39d6_default" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7c94-8169-1225429e39d6" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7c94-8169-1225429e39d6_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7949-ba25-84a4865de217" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7c94-8169-1225429e39d6" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7949-ba25-84a4865de217" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember_019d726d-e0a2-770b-9cc3-c9fcce3f261e" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7949-ba25-84a4865de217" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember_019d726d-e0a2-770b-9cc3-c9fcce3f261e" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7a39-af94-d7cb1a803a5d" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable_019d726d-e0a2-7a12-b585-60be15e0e2e5" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7a39-af94-d7cb1a803a5d" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7a39-af94-d7cb1a803a5d_default" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7a39-af94-d7cb1a803a5d" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7a39-af94-d7cb1a803a5d_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7153-91f4-a8f6fdd93522" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7a39-af94-d7cb1a803a5d" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7153-91f4-a8f6fdd93522" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-74ab-8c1f-ad725f874ee7" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7153-91f4-a8f6fdd93522" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-74ab-8c1f-ad725f874ee7" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentNumberOfShares_019d726d-e0a2-7469-968c-2475accef424" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentNumberOfShares"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems_019d726d-e0a2-7c70-9b53-2e7c7ab7fb2e" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentNumberOfShares_019d726d-e0a2-7469-968c-2475accef424" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue_019d726d-e0a2-7d94-b85a-fc9795181d7b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems_019d726d-e0a2-7c70-9b53-2e7c7ab7fb2e" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue_019d726d-e0a2-7d94-b85a-fc9795181d7b" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails" xlink:type="simple" xlink:href="spsc-20260629.xsd#Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails"/>
  <link:definitionLink xlink:role="http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-797a-992e-d511619ea42f" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-797a-992e-d511619ea42f" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7fe7-b5a3-d3b5ffb6c153" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-797a-992e-d511619ea42f" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7fe7-b5a3-d3b5ffb6c153" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7fe7-b5a3-d3b5ffb6c153_default" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7fe7-b5a3-d3b5ffb6c153" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7fe7-b5a3-d3b5ffb6c153_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-73bf-b8e5-c50230a27854" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7fe7-b5a3-d3b5ffb6c153" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-73bf-b8e5-c50230a27854" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-7b53-b0da-c59760be5292" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-73bf-b8e5-c50230a27854" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-7b53-b0da-c59760be5292" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_019d726d-e0a2-70cd-ac6f-26344655d436" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-797a-992e-d511619ea42f" xlink:to="loc_srt_RangeAxis_019d726d-e0a2-70cd-ac6f-26344655d436" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_019d726d-e0a2-70cd-ac6f-26344655d436_default" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_019d726d-e0a2-70cd-ac6f-26344655d436" xlink:to="loc_srt_RangeMember_019d726d-e0a2-70cd-ac6f-26344655d436_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_019d726d-e0a2-7979-80f4-a0155634f758" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_019d726d-e0a2-70cd-ac6f-26344655d436" xlink:to="loc_srt_RangeMember_019d726d-e0a2-7979-80f4-a0155634f758" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_019d726d-e0a2-73af-ab3e-4a781940ed97" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_019d726d-e0a2-7979-80f4-a0155634f758" xlink:to="loc_srt_MinimumMember_019d726d-e0a2-73af-ab3e-4a781940ed97" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_019d726d-e0a2-744b-bcc9-1f6c4475f783" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_019d726d-e0a2-7979-80f4-a0155634f758" xlink:to="loc_srt_MaximumMember_019d726d-e0a2-744b-bcc9-1f6c4475f783" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7908-b415-acb2b977b778" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-797a-992e-d511619ea42f" xlink:to="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7908-b415-acb2b977b778" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7908-b415-acb2b977b778_default" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7908-b415-acb2b977b778" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7908-b415-acb2b977b778_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7941-8ec0-ea496f5f3281" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7908-b415-acb2b977b778" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7941-8ec0-ea496f5f3281" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember_019d726d-e0a2-7e0e-b060-2eafdc1bd4f0" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7941-8ec0-ea496f5f3281" xlink:to="loc_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember_019d726d-e0a2-7e0e-b060-2eafdc1bd4f0" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MutualFundMember_019d726d-e0a2-7660-ae8a-d05930236719" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_MutualFundMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7941-8ec0-ea496f5f3281" xlink:to="loc_us-gaap_MutualFundMember_019d726d-e0a2-7660-ae8a-d05930236719" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentIdentifierAxis_019d726d-e0a2-7109-810d-66a631697e77" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentIdentifierAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-797a-992e-d511619ea42f" xlink:to="loc_us-gaap_InvestmentIdentifierAxis_019d726d-e0a2-7109-810d-66a631697e77" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber_019d726d-e0a2-730d-b7f5-cca54f5ac4cf" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_dei_EntityTaxIdentificationNumber_019d726d-e0a2-730d-b7f5-cca54f5ac4cf" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanPlanNumber_019d726d-e0a2-7f06-a91a-3a53ad8cfb3b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanPlanNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanPlanNumber_019d726d-e0a2-7f06-a91a-3a53ad8cfb3b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue_019d726d-e0a2-7707-bf94-8829b34f4c61" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue_019d726d-e0a2-7707-bf94-8829b34f4c61" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate_019d726d-e0a2-7e80-b555-586ba3fae2ae" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate_019d726d-e0a2-7e80-b555-586ba3fae2ae" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution_019d726d-e0a2-7b0a-9c73-b94dec9b3d9b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution_019d726d-e0a2-7b0a-9c73-b94dec9b3d9b" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPAssetHeldForInvestmentParticipantLoanCost_019d726d-e0a2-7b18-84f6-579b2c48ecc1" xlink:href="spsc-20260629.xsd#spsc_EBPAssetHeldForInvestmentParticipantLoanCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_spsc_EBPAssetHeldForInvestmentParticipantLoanCost_019d726d-e0a2-7b18-84f6-579b2c48ecc1" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment_019d726d-e0a2-7fc5-bb6c-9f36937d5d2b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment_019d726d-e0a2-7fc5-bb6c-9f36937d5d2b" xlink:type="arc" order="6"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails_1" xlink:type="simple" xlink:href="spsc-20260629.xsd#Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails_1"/>
  <link:definitionLink xlink:role="http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails_1" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-797a-992e-d511619ea42f" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-797a-992e-d511619ea42f" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7fe7-b5a3-d3b5ffb6c153" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-797a-992e-d511619ea42f" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7fe7-b5a3-d3b5ffb6c153" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7fe7-b5a3-d3b5ffb6c153_default" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7fe7-b5a3-d3b5ffb6c153" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7fe7-b5a3-d3b5ffb6c153_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-73bf-b8e5-c50230a27854" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7fe7-b5a3-d3b5ffb6c153" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-73bf-b8e5-c50230a27854" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-7b53-b0da-c59760be5292" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-73bf-b8e5-c50230a27854" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-7b53-b0da-c59760be5292" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_019d726d-e0a2-70cd-ac6f-26344655d436" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-797a-992e-d511619ea42f" xlink:to="loc_srt_RangeAxis_019d726d-e0a2-70cd-ac6f-26344655d436" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_019d726d-e0a2-70cd-ac6f-26344655d436_default" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_019d726d-e0a2-70cd-ac6f-26344655d436" xlink:to="loc_srt_RangeMember_019d726d-e0a2-70cd-ac6f-26344655d436_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_019d726d-e0a2-7979-80f4-a0155634f758" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_019d726d-e0a2-70cd-ac6f-26344655d436" xlink:to="loc_srt_RangeMember_019d726d-e0a2-7979-80f4-a0155634f758" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_019d726d-e0a2-73af-ab3e-4a781940ed97" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_019d726d-e0a2-7979-80f4-a0155634f758" xlink:to="loc_srt_MinimumMember_019d726d-e0a2-73af-ab3e-4a781940ed97" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_019d726d-e0a2-744b-bcc9-1f6c4475f783" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_019d726d-e0a2-7979-80f4-a0155634f758" xlink:to="loc_srt_MaximumMember_019d726d-e0a2-744b-bcc9-1f6c4475f783" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7908-b415-acb2b977b778" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-797a-992e-d511619ea42f" xlink:to="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7908-b415-acb2b977b778" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7908-b415-acb2b977b778_default" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7908-b415-acb2b977b778" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7908-b415-acb2b977b778_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7941-8ec0-ea496f5f3281" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7908-b415-acb2b977b778" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7941-8ec0-ea496f5f3281" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember_019d726d-e0a2-7e0e-b060-2eafdc1bd4f0" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7941-8ec0-ea496f5f3281" xlink:to="loc_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember_019d726d-e0a2-7e0e-b060-2eafdc1bd4f0" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MutualFundMember_019d726d-e0a2-7660-ae8a-d05930236719" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_MutualFundMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7941-8ec0-ea496f5f3281" xlink:to="loc_us-gaap_MutualFundMember_019d726d-e0a2-7660-ae8a-d05930236719" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber_019d726d-e0a2-730d-b7f5-cca54f5ac4cf" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_dei_EntityTaxIdentificationNumber_019d726d-e0a2-730d-b7f5-cca54f5ac4cf" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanPlanNumber_019d726d-e0a2-7f06-a91a-3a53ad8cfb3b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanPlanNumber"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanPlanNumber_019d726d-e0a2-7f06-a91a-3a53ad8cfb3b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue_019d726d-e0a2-7707-bf94-8829b34f4c61" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue_019d726d-e0a2-7707-bf94-8829b34f4c61" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate_019d726d-e0a2-7e80-b555-586ba3fae2ae" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate_019d726d-e0a2-7e80-b555-586ba3fae2ae" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution_019d726d-e0a2-7b0a-9c73-b94dec9b3d9b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution_019d726d-e0a2-7b0a-9c73-b94dec9b3d9b" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPAssetHeldForInvestmentParticipantLoanCost_019d726d-e0a2-7b18-84f6-579b2c48ecc1" xlink:href="spsc-20260629.xsd#spsc_EBPAssetHeldForInvestmentParticipantLoanCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_spsc_EBPAssetHeldForInvestmentParticipantLoanCost_019d726d-e0a2-7b18-84f6-579b2c48ecc1" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment_019d726d-e0a2-7fc5-bb6c-9f36937d5d2b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment_019d726d-e0a2-7fc5-bb6c-9f36937d5d2b" xlink:type="arc" order="6"/>
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>6
<FILENAME>spsc-20260629_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2026 Workiva-->
<!--r:019d726d-e0a2-7f08-9c37-20a11dea5949,g:aa020773-9240-4449-869e-daa4f8245da4-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel"/>
  <link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
    <link:label id="lab_dei_EntityTaxIdentificationNumber_019d726d-e0a3-7f62-8e82-4199eeed6132_terseLabel_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity tax identification number</link:label>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_label_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityTaxIdentificationNumber" xlink:to="lab_dei_EntityTaxIdentificationNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover_019d726d-e0a2-7118-9de4-701fd81bdc91_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Participant rollovers</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Change in Net Asset Available for Benefit, Increase from Participant Contribution, Rollover</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover" xlink:type="arc" order="1"/>
    <link:label id="lab_spsc_EBPEmployerContributionVestingDomain_019d726d-e0a2-7954-a647-267b19ea3aa4_terseLabel_en-US" xlink:label="lab_spsc_EBPEmployerContributionVestingDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EBP, Employer Contribution, Vesting [Domain]</link:label>
    <link:label id="lab_spsc_EBPEmployerContributionVestingDomain_label_en-US" xlink:label="lab_spsc_EBPEmployerContributionVestingDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Employer Contribution, Vesting [Domain]</link:label>
    <link:label id="lab_spsc_EBPEmployerContributionVestingDomain_documentation_en-US" xlink:label="lab_spsc_EBPEmployerContributionVestingDomain" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">EBP, Employer Contribution, Vesting [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPEmployerContributionVestingDomain" xlink:href="spsc-20260629.xsd#spsc_EBPEmployerContributionVestingDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_spsc_EBPEmployerContributionVestingDomain" xlink:to="lab_spsc_EBPEmployerContributionVestingDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MaximumMember_019d726d-e0a2-701c-b5d8-e1c00cd2a1f6_terseLabel_en-US" xlink:label="lab_srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maximum</link:label>
    <link:label id="lab_srt_MaximumMember_label_en-US" xlink:label="lab_srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Maximum [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MaximumMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MaximumMember" xlink:to="lab_srt_MaximumMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_LegalEntityAxis_019d726d-e0a2-7de4-a0bc-70bb4b90d7f0_terseLabel_en-US" xlink:label="lab_dei_LegalEntityAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Legal Entity [Axis]</link:label>
    <link:label id="lab_dei_LegalEntityAxis_label_en-US" xlink:label="lab_dei_LegalEntityAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Legal Entity [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_LegalEntityAxis" xlink:to="lab_dei_LegalEntityAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeMember_019d726d-e0a2-74ce-8783-4ef03f48829f_terseLabel_en-US" xlink:label="lab_srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:label id="lab_srt_RangeMember_label_en-US" xlink:label="lab_srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeMember" xlink:to="lab_srt_RangeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-73de-84d7-1638d773bec9_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EBP, Description of Plan [Table]</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Description of Plan [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MutualFundMember_019d726d-e0a2-75a8-9ff7-371625ec8e7d_terseLabel_en-US" xlink:label="lab_us-gaap_MutualFundMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Mutual funds</link:label>
    <link:label id="lab_us-gaap_MutualFundMember_label_en-US" xlink:label="lab_us-gaap_MutualFundMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Mutual Fund [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MutualFundMember" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_MutualFundMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MutualFundMember" xlink:to="lab_us-gaap_MutualFundMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable_019d726d-e0a2-75f3-a07e-e9dd5a49fd35_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EBP, Related Party and Party-in-Interest Transactions [Table]</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Related Party and Party-in-Interest Transactions [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage_019d726d-e0a2-7d82-be83-4b86611d2eb2_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maximum annual compensation to total compensation, percentage</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Participant Contribution, Pretax, Maximum Annual Compensation to Total Compensation, Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease_019d726d-e0a2-7727-bb9c-ff5b269898c1_totalLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total deductions</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Change in Net Asset Available for Benefit, Decrease</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount_019d726d-e0a2-7277-9e97-15a494f69b63_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maximum borrowing amount</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Note Receivable from Participant, Account, Maximum Borrowing, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock_019d726d-e0a2-74ae-b6d4-d687b72026fa_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value Measurements</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Investment, Fair Value and NAV [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount_019d726d-e0a3-72a2-b155-6c41199e968b_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Minimum borrowing amount</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Note Receivable from Participant, Account, Minimum Borrowing, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue_019d726d-e0a2-79b7-94a0-31c888d93206_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Total investments</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue_019d726d-e0a2-7d00-8740-aeacb2a28b0d_verboseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Investment, common stock value</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Investment, Excluding Plan Interest in Master Trust, Fair Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueInputsLevel1Member_019d726d-e0a2-7206-90ae-b6319427c13f_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel1Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Level 1</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel1Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel1Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Inputs, Level 1 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel1Member" xlink:to="lab_us-gaap_FairValueInputsLevel1Member" xlink:type="arc" order="1"/>
    <link:label id="lab_spsc_EBPEmployerContributionVestingAxis_019d726d-e0a2-7fe8-876f-6e9b06a5d778_terseLabel_en-US" xlink:label="lab_spsc_EBPEmployerContributionVestingAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EBP, Employer Contribution, Vesting [Axis]</link:label>
    <link:label id="lab_spsc_EBPEmployerContributionVestingAxis_label_en-US" xlink:label="lab_spsc_EBPEmployerContributionVestingAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Employer Contribution, Vesting [Axis]</link:label>
    <link:label id="lab_spsc_EBPEmployerContributionVestingAxis_documentation_en-US" xlink:label="lab_spsc_EBPEmployerContributionVestingAxis" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">EBP, Employer Contribution, Vesting</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPEmployerContributionVestingAxis" xlink:href="spsc-20260629.xsd#spsc_EBPEmployerContributionVestingAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_spsc_EBPEmployerContributionVestingAxis" xlink:to="lab_spsc_EBPEmployerContributionVestingAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavAbstract_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Investment, Fair Value and NAV [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavAbstract" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract_019d726d-e0a2-7731-b21f-872cadf28fcd_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Assets</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Asset [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAssetAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_spsc_EBPEmployerContributionVestingScheduleTableTextBlock_019d726d-e0a2-73e1-b7e6-8460ade3a307_terseLabel_en-US" xlink:label="lab_spsc_EBPEmployerContributionVestingScheduleTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Vesting Schedule of Employer Contribution</link:label>
    <link:label id="lab_spsc_EBPEmployerContributionVestingScheduleTableTextBlock_label_en-US" xlink:label="lab_spsc_EBPEmployerContributionVestingScheduleTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Employer Contribution, Vesting Schedule [Table Text Block]</link:label>
    <link:label id="lab_spsc_EBPEmployerContributionVestingScheduleTableTextBlock_documentation_en-US" xlink:label="lab_spsc_EBPEmployerContributionVestingScheduleTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">EBP, Employer Contribution, Vesting Schedule</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPEmployerContributionVestingScheduleTableTextBlock" xlink:href="spsc-20260629.xsd#spsc_EBPEmployerContributionVestingScheduleTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_spsc_EBPEmployerContributionVestingScheduleTableTextBlock" xlink:to="lab_spsc_EBPEmployerContributionVestingScheduleTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeAxis_019d726d-e0a2-727d-8749-18766bd904e1_terseLabel_en-US" xlink:label="lab_srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:label id="lab_srt_RangeAxis_label_en-US" xlink:label="lab_srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeAxis" xlink:to="lab_srt_RangeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract_019d726d-e0a2-79d2-a5d7-0ec8b0609d9d_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investment Activity &amp; Additions</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Change in Net Asset Available for Benefit, Increase [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitTable_019d726d-e0a2-7a9c-b8a8-564b7b633917_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EBP, Statement of Change in Net Asset Available for Benefit [Table]</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitTable_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Statement of Change in Net Asset Available for Benefit [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitTable" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitTable" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock_019d726d-e0a2-7253-8d0f-fda851776124_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Benefits Paid to Participants &amp; Contributions</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Payment to Participant [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan_019d726d-e0a2-753e-996d-150a8b5e3476_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Transfer in</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan_019d726d-e0a2-7d13-bb8a-2b9b01a25f63_verboseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Total net assets transferred into the Plan</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan_019d726d-e0a2-7c76-bebf-75a41c339f7f_netLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan" xlink:role="http://www.xbrl.org/2009/role/netLabel" xlink:type="resource" xml:lang="en-US">Net assets transferred into the Plan</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Change in Net Asset Available for Benefit, Transfer to (from) Plan</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AmendmentFlag_019d726d-e0a2-7a36-b741-01642b785d38_terseLabel_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Amendment Flag</link:label>
    <link:label id="lab_dei_AmendmentFlag_label_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amendment Flag</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_AmendmentFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AmendmentFlag" xlink:to="lab_dei_AmendmentFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock_019d726d-e0a2-7492-bd94-1e0d2afd96d8_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Basis of Accounting</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Basis of Accounting [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-70bb-9266-32618d69f233_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EBP, Schedule of Asset Held for Investment [Table]</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Schedule of Asset Held for Investment [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable" xlink:type="arc" order="1"/>
    <link:label id="lab_spsc_EBPVestingScheduleTrancheOneMember_019d726d-e0a2-7f96-a003-64d4062c41f8_terseLabel_en-US" xlink:label="lab_spsc_EBPVestingScheduleTrancheOneMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Hire date prior to January 1, 2018, immediately</link:label>
    <link:label id="lab_spsc_EBPVestingScheduleTrancheOneMember_label_en-US" xlink:label="lab_spsc_EBPVestingScheduleTrancheOneMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Vesting Schedule, Tranche One [Member]</link:label>
    <link:label id="lab_spsc_EBPVestingScheduleTrancheOneMember_documentation_en-US" xlink:label="lab_spsc_EBPVestingScheduleTrancheOneMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">EBP, Vesting Schedule, Tranche One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPVestingScheduleTrancheOneMember" xlink:href="spsc-20260629.xsd#spsc_EBPVestingScheduleTrancheOneMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_spsc_EBPVestingScheduleTrancheOneMember" xlink:to="lab_spsc_EBPVestingScheduleTrancheOneMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentNumberOfShares_019d726d-e0a2-7094-ac66-2caac054ff8d_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentNumberOfShares" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investment, number of common stock (in shares)</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentNumberOfShares_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentNumberOfShares" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Investment, Number of Shares</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentNumberOfShares" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentNumberOfShares"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentNumberOfShares" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentNumberOfShares" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanAbstract_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Description of Plan and Accounting Change [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanAbstract" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock_019d726d-e0a2-7c6d-85c3-a16efb3c4796_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Schedule of Investment at Fair Value and NAV</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Investment, Fair Value and NAV [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_spsc_EBPEmployerContributionVestingRequisiteServicePeriod_019d726d-e0a2-71f3-a6a4-181cf921fbd4_terseLabel_en-US" xlink:label="lab_spsc_EBPEmployerContributionVestingRequisiteServicePeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Employer contribution, requisite service period</link:label>
    <link:label id="lab_spsc_EBPEmployerContributionVestingRequisiteServicePeriod_label_en-US" xlink:label="lab_spsc_EBPEmployerContributionVestingRequisiteServicePeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Employer Contribution Vesting, Requisite Service Period</link:label>
    <link:label id="lab_spsc_EBPEmployerContributionVestingRequisiteServicePeriod_documentation_en-US" xlink:label="lab_spsc_EBPEmployerContributionVestingRequisiteServicePeriod" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">EBP, Employer Contribution Vesting, Requisite Service Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPEmployerContributionVestingRequisiteServicePeriod" xlink:href="spsc-20260629.xsd#spsc_EBPEmployerContributionVestingRequisiteServicePeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_spsc_EBPEmployerContributionVestingRequisiteServicePeriod" xlink:to="lab_spsc_EBPEmployerContributionVestingRequisiteServicePeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7bce-b6d1-174250fe63d3_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentTypeCategorizationMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investments [Domain]</link:label>
    <link:label id="lab_us-gaap_InvestmentTypeCategorizationMember_label_en-US" xlink:label="lab_us-gaap_InvestmentTypeCategorizationMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investments [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember" xlink:to="lab_us-gaap_InvestmentTypeCategorizationMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanUseOfEstimatePolicyTextBlock_019d726d-e0a2-7cf8-919a-80cb9304cb28_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanUseOfEstimatePolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Use of Estimates</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanUseOfEstimatePolicyTextBlock_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanUseOfEstimatePolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Use of Estimate [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanUseOfEstimatePolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanUseOfEstimatePolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanUseOfEstimatePolicyTextBlock" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanUseOfEstimatePolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock_019d726d-e0a2-747f-b36a-bb637179592b_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Form 5500, Schedule H, Part IV, Line 4(i) Schedule of Assets (Held at End of Year)</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Schedule of Asset Held for Investment [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CoverAbstract_label_en-US" xlink:label="lab_dei_CoverAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cover [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_CoverAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CoverAbstract" xlink:to="lab_dei_CoverAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash_019d726d-e0a2-756e-95df-6b61dab937fd_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Employer matching</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Change in Net Asset Available for Benefit, Increase from Employer Contribution, Cash</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MinimumMember_019d726d-e0a2-7c99-b25d-b2da141f3fef_terseLabel_en-US" xlink:label="lab_srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Minimum</link:label>
    <link:label id="lab_srt_MinimumMember_label_en-US" xlink:label="lab_srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Minimum [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MinimumMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MinimumMember" xlink:to="lab_srt_MinimumMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant_019d726d-e0a2-78bf-8aa3-37a8d6cf6f77_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Interest income on notes receivable from participants</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Change in Net Asset Available for Benefit, Increase from Interest Income on Note Receivable from Participant</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InvestmentTypeAxis_019d726d-e0a2-757f-9022-975b25d5fc19_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investment Type [Axis]</link:label>
    <link:label id="lab_us-gaap_InvestmentTypeAxis_label_en-US" xlink:label="lab_us-gaap_InvestmentTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investment Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentTypeAxis" xlink:to="lab_us-gaap_InvestmentTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_spsc_EBPVestingScheduleTrancheTwoMember_019d726d-e0a2-7ad3-8864-27800805ddbe_terseLabel_en-US" xlink:label="lab_spsc_EBPVestingScheduleTrancheTwoMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Hire date January 1, 2018 or after, less than two years of service</link:label>
    <link:label id="lab_spsc_EBPVestingScheduleTrancheTwoMember_label_en-US" xlink:label="lab_spsc_EBPVestingScheduleTrancheTwoMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Vesting Schedule, Tranche Two [Member]</link:label>
    <link:label id="lab_spsc_EBPVestingScheduleTrancheTwoMember_documentation_en-US" xlink:label="lab_spsc_EBPVestingScheduleTrancheTwoMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">EBP, Vesting Schedule, Tranche Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPVestingScheduleTrancheTwoMember" xlink:href="spsc-20260629.xsd#spsc_EBPVestingScheduleTrancheTwoMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_spsc_EBPVestingScheduleTrancheTwoMember" xlink:to="lab_spsc_EBPVestingScheduleTrancheTwoMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution_019d726d-e0a2-7edb-ab68-14b8191c0c54_totalLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total contributions</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Change in Net Asset Available for Benefit, Increase from Contribution</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover_019d726d-e0a2-7bee-98ff-7199a0983beb_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Participant elective deferral</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Change in Net Asset Available for Benefit, Increase from Participant Contribution, Excluding Rollover</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment_019d726d-e0a2-7ad2-926c-0904ce51f2a1_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net appreciation in fair value of investments</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Change in Net Asset Available for Benefit, Increase (Decrease) from Gain (Loss) on Investment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment_019d726d-e0a2-7205-a158-0294203b38ef_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Interest and dividend income</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Change in Net Asset Available for Benefit, Increase from Interest and Dividend Income on Investment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a3-7365-bbcd-71f4f79d73a2_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EBP, Description of Plan [Line Items]</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Description of Plan [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanPlanNumber_019d726d-e0a2-7c30-a49d-84b2720bdd94_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanPlanNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Plan number</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanPlanNumber_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanPlanNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Plan Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanPlanNumber" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanPlanNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanPlanNumber" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanPlanNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_019d726d-e0a2-712c-ac2a-52bc65a8a6b6_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EBP, Investment, Fair Value and NAV [Line Items]</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Investment, Fair Value and NAV [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTextBlock_019d726d-e0a2-719c-bb71-3177348d6a93_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Plan Description</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTextBlock_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Description of Plan [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTextBlock" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_spsc_EBPMinimumAgeToParticipate_019d726d-e0a2-7036-b432-a561ec51acf3_terseLabel_en-US" xlink:label="lab_spsc_EBPMinimumAgeToParticipate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Minimum age to participate</link:label>
    <link:label id="lab_spsc_EBPMinimumAgeToParticipate_label_en-US" xlink:label="lab_spsc_EBPMinimumAgeToParticipate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Minimum Age To Participate</link:label>
    <link:label id="lab_spsc_EBPMinimumAgeToParticipate_documentation_en-US" xlink:label="lab_spsc_EBPMinimumAgeToParticipate" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">EBP, Minimum Age To Participate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPMinimumAgeToParticipate" xlink:href="spsc-20260629.xsd#spsc_EBPMinimumAgeToParticipate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_spsc_EBPMinimumAgeToParticipate" xlink:to="lab_spsc_EBPMinimumAgeToParticipate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems_019d726d-e0a2-7c74-af7f-bc12e2edd107_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EBP, Statement of Change in Net Asset Available for Benefit [Line Items]</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Statement of Change in Net Asset Available for Benefit [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable_019d726d-e0a2-7574-873f-9be664f871a8_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EBP, Statement of Net Asset Available for Benefit [Table]</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Statement of Net Asset Available for Benefit [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-723f-b57b-c7471d410c60_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EBP, Schedule of Asset Held for Investment [Line Items]</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Schedule of Asset Held for Investment [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember_019d726d-e0a3-7909-b572-38bb2ec23727_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">SPS Commerce, Inc. common stock</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Employer, Common Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit_019d726d-e0a2-7572-abe8-268ee49592a9_terseLabel_en-US" xlink:label="lab_spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Involuntary transfer to a qualified plan limit</link:label>
    <link:label id="lab_spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit_label_en-US" xlink:label="lab_spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Involuntary Transfer To A Qualified Plan, Limit</link:label>
    <link:label id="lab_spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit_documentation_en-US" xlink:label="lab_spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">EBP, Involuntary Transfer To A Qualified Plan, Limit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit" xlink:href="spsc-20260629.xsd#spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit" xlink:to="lab_spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentAbstract_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Schedule of Asset Held for Investment [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentAbstract" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-7644-962a-4f7d2f73715a_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EBP, Accounting Policy [Table]</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Accounting Policy [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease_019d726d-e0a2-7146-9b80-06d100396b05_totalLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total investment activity and additions</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Change in Net Asset Available for Benefit, Increase</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract_019d726d-e0a2-7f9f-8c61-8f584c69ebe9_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investment income</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Change in Net Asset Available for Benefit, Increase (Decrease) from Income (Loss) on Investment [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InvestmentIdentifierAxis_019d726d-e0a2-7c2d-baa4-93138988bca6_terseLabel_en-US" xlink:label="lab_us-gaap_InvestmentIdentifierAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investment, Identifier [Axis]</link:label>
    <link:label id="lab_us-gaap_InvestmentIdentifierAxis_label_en-US" xlink:label="lab_us-gaap_InvestmentIdentifierAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Investment, Identifier [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentIdentifierAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentIdentifierAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InvestmentIdentifierAxis" xlink:to="lab_us-gaap_InvestmentIdentifierAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense_019d726d-e0a2-736c-abdd-3a70ede9bc70_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Administrative expenses</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Change in Net Asset Available for Benefit, Decrease from Administrative Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment_019d726d-e0a2-7490-87c4-0a2c978dc34d_totalLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Asset held for investment</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Asset Held for Investment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment" xlink:type="arc" order="1"/>
    <link:label id="lab_spsc_EBPInvoluntaryCashOutLimit_019d726d-e0a2-7b19-b090-d3921812cee7_terseLabel_en-US" xlink:label="lab_spsc_EBPInvoluntaryCashOutLimit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Involuntary cash-out limit</link:label>
    <link:label id="lab_spsc_EBPInvoluntaryCashOutLimit_label_en-US" xlink:label="lab_spsc_EBPInvoluntaryCashOutLimit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Involuntary Cash-out Limit</link:label>
    <link:label id="lab_spsc_EBPInvoluntaryCashOutLimit_documentation_en-US" xlink:label="lab_spsc_EBPInvoluntaryCashOutLimit" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">EBP, Involuntary Cash-out Limit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPInvoluntaryCashOutLimit" xlink:href="spsc-20260629.xsd#spsc_EBPInvoluntaryCashOutLimit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_spsc_EBPInvoluntaryCashOutLimit" xlink:to="lab_spsc_EBPInvoluntaryCashOutLimit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EbpRiskAndUncertaintyPolicyTextBlock_019d726d-e0a2-7c0a-8a2a-0ddab477e698_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EbpRiskAndUncertaintyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Risk and Uncertainties and Concentration of Market Risk</link:label>
    <link:label id="lab_us-gaap-ebp_EbpRiskAndUncertaintyPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap-ebp_EbpRiskAndUncertaintyPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Risk and Uncertainty [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EbpRiskAndUncertaintyPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EbpRiskAndUncertaintyPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EbpRiskAndUncertaintyPolicyTextBlock" xlink:to="lab_us-gaap-ebp_EbpRiskAndUncertaintyPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentInformationLineItems_019d726d-e0a3-71eb-930e-ef11716c9f5e_terseLabel_en-US" xlink:label="lab_dei_DocumentInformationLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Information [Line Items]</link:label>
    <link:label id="lab_dei_DocumentInformationLineItems_label_en-US" xlink:label="lab_dei_DocumentInformationLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Information [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentInformationLineItems" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentInformationLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentInformationLineItems" xlink:to="lab_dei_DocumentInformationLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage_019d726d-e0a2-74dc-95ab-9437d276b054_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Compensation matched percentage</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Employer Contribution, Participant Compensation Matched, Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitAbstract_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Statement of Change in Net Asset Available for Benefit [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitAbstract" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueInputsLevel2Member_019d726d-e0a2-718e-84b6-2a269355e135_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel2Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Level 2</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel2Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel2Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Inputs, Level 2 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel2Member" xlink:to="lab_us-gaap_FairValueInputsLevel2Member" xlink:type="arc" order="1"/>
    <link:label id="lab_spsc_EBPEmployerContributionVestingPercentage_019d726d-e0a2-7926-8d2c-23cf54557dd4_terseLabel_en-US" xlink:label="lab_spsc_EBPEmployerContributionVestingPercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Vesting Percentage</link:label>
    <link:label id="lab_spsc_EBPEmployerContributionVestingPercentage_label_en-US" xlink:label="lab_spsc_EBPEmployerContributionVestingPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Employer Contribution, Vesting Percentage</link:label>
    <link:label id="lab_spsc_EBPEmployerContributionVestingPercentage_documentation_en-US" xlink:label="lab_spsc_EBPEmployerContributionVestingPercentage" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">EBP, Employer Contribution, Vesting Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPEmployerContributionVestingPercentage" xlink:href="spsc-20260629.xsd#spsc_EBPEmployerContributionVestingPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_spsc_EBPEmployerContributionVestingPercentage" xlink:to="lab_spsc_EBPEmployerContributionVestingPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed_019d726d-e0a2-7420-aae3-9d9be843958e_terseLabel_en-US" xlink:label="lab_spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Number of borrowing</link:label>
    <link:label id="lab_spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed_label_en-US" xlink:label="lab_spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Note Receivable From Participant, Number Of Loans Allowed</link:label>
    <link:label id="lab_spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed_documentation_en-US" xlink:label="lab_spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">EBP, Note Receivable From Participant, Number Of Loans Allowed</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed" xlink:href="spsc-20260629.xsd#spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed" xlink:to="lab_spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTable_019d726d-e0a2-70ca-9b51-22a5d0194dcc_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EBP, Tax Status [Table]</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTable_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Tax Status [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTable" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanTaxStatusTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTable" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease_019d726d-e0a3-7ac1-a082-460552cc9405_totalLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net increase in net assets available for benefits</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Change in Net Asset Available for Benefit, Increase (Decrease)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock_019d726d-e0a2-770c-9f22-f9b415ee2001_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Party-in-Interest Transactions</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Related Party and Party-in-Interest Transactions [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsAbstract_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Related Party and Party-in-Interest Transactions [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsAbstract" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyAbstract_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Accounting Policy, Accounting Standard Update, and Change in Accounting Principle [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyAbstract" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanReceivable_019f03fe-2e2e-7063-9d09-d6c464fa36e9_totalLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanReceivable" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total receivables</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanReceivable_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanReceivable" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_spsc_EBPVestingScheduleTrancheThreeMember_019d726d-e0a2-794e-8dcd-6eaa0a4a485e_terseLabel_en-US" xlink:label="lab_spsc_EBPVestingScheduleTrancheThreeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Hire date January 1, 2018 or after, two years or more of service</link:label>
    <link:label id="lab_spsc_EBPVestingScheduleTrancheThreeMember_label_en-US" xlink:label="lab_spsc_EBPVestingScheduleTrancheThreeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Vesting Schedule, Tranche Three [Member]</link:label>
    <link:label id="lab_spsc_EBPVestingScheduleTrancheThreeMember_documentation_en-US" xlink:label="lab_spsc_EBPVestingScheduleTrancheThreeMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">EBP, Vesting Schedule, Tranche Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPVestingScheduleTrancheThreeMember" xlink:href="spsc-20260629.xsd#spsc_EBPVestingScheduleTrancheThreeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_spsc_EBPVestingScheduleTrancheThreeMember" xlink:to="lab_spsc_EBPVestingScheduleTrancheThreeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate_019d726d-e0a2-7881-ae5e-0f3dded754d7_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Automatic deferral rate</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Participant Contribution, Automatic, Deferral Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract_019d726d-e0a3-7463-a442-19eabdfcc15c_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investments, at fair value</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Investment, Fair Value [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant_019d726d-e0a2-7d15-ad03-1416bd32ae15_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Benefits paid to participants</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Change in Net Asset Available for Benefit, Decrease from Payment to Participant</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue_019d726d-e0a2-770f-8de3-6675a2e8e549_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Asset held for investment, current value</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Asset Held for Investment, Investment, Excluding Plan Interest in Master Trust, Current Value</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_019d726d-e0a2-7935-ba5a-3574a562be5a_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy and NAV [Domain]</link:label>
    <link:label id="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_label_en-US" xlink:label="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy and NAV [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:to="lab_us-gaap_FairValueMeasurementsFairValueHierarchyDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitAbstract_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Statement of Net Asset Available for Benefit [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitAbstract" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-70fc-bc40-f16e8dd30680_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EBP, Accounting Policy [Line Items]</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Accounting Policy [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanTaxStatusAbstract_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanTaxStatusAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Tax Status [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanTaxStatusAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusAbstract" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanTaxStatusAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanCash_019d726d-e0a2-7c63-bae2-101df14e6a17_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanCash" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Non-interest bearing cash</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanCash_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanCash" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Noninterest-Bearing Cash</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanCash" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanCash"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanCash" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanCash" xlink:type="arc" order="1"/>
    <link:label id="lab_spsc_EBPNoteReceivableFromParticipantBorrowingTerm_019d726d-e0a2-759d-83e6-5c1d2cec6518_terseLabel_en-US" xlink:label="lab_spsc_EBPNoteReceivableFromParticipantBorrowingTerm" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Borrowing term</link:label>
    <link:label id="lab_spsc_EBPNoteReceivableFromParticipantBorrowingTerm_label_en-US" xlink:label="lab_spsc_EBPNoteReceivableFromParticipantBorrowingTerm" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Note Receivable From Participant, Borrowing Term</link:label>
    <link:label id="lab_spsc_EBPNoteReceivableFromParticipantBorrowingTerm_documentation_en-US" xlink:label="lab_spsc_EBPNoteReceivableFromParticipantBorrowingTerm" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">EBP, Note Receivable From Participant, Borrowing Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPNoteReceivableFromParticipantBorrowingTerm" xlink:href="spsc-20260629.xsd#spsc_EBPNoteReceivableFromParticipantBorrowingTerm"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_spsc_EBPNoteReceivableFromParticipantBorrowingTerm" xlink:to="lab_spsc_EBPNoteReceivableFromParticipantBorrowingTerm" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanExpensePolicyTextBlock_019d726d-e0a2-7241-a3df-120ac990e18f_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanExpensePolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Administrative Expenses</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanExpensePolicyTextBlock_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanExpensePolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Expense [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanExpensePolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanExpensePolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanExpensePolicyTextBlock" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanExpensePolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution_019d726d-e0a2-74c5-b833-f50aedb35fd7_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Participant loans, current value</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Asset Held for Investment, Participant Loan, after Deemed Distribution</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentPolicyTextBlock_019d726d-e0a2-7efd-b1ad-46274ff7a999_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Investment Valuation and Income (Loss) Recognition</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Investment [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentPolicyTextBlock" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_spsc_EBP001Member_019d726d-e0a2-708a-a808-e83dd66f5b7a_terseLabel_en-US" xlink:label="lab_spsc_EBP001Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EBP 001</link:label>
    <link:label id="lab_spsc_EBP001Member_label_en-US" xlink:label="lab_spsc_EBP001Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP 001 [Member]</link:label>
    <link:label id="lab_spsc_EBP001Member_documentation_en-US" xlink:label="lab_spsc_EBP001Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">EBP 001</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_spsc_EBP001Member" xlink:to="lab_spsc_EBP001Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueInputsLevel12And3Member_019d726d-e0a2-751e-b089-51aca79f3219_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel12And3Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value, Inputs, Level 1, Level 2, and Level 3</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel12And3Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel12And3Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Inputs, Level 1, Level 2, and Level 3 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel12And3Member" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueInputsLevel12And3Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel12And3Member" xlink:to="lab_us-gaap_FairValueInputsLevel12And3Member" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentType_019d726d-e0a2-7e08-8720-441afebc75f8_terseLabel_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Type</link:label>
    <link:label id="lab_dei_DocumentType_label_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Type</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentType"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentType" xlink:to="lab_dei_DocumentType" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCentralIndexKey_019d726d-e0a2-749d-af1a-ae703e0034b1_terseLabel_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:label id="lab_dei_EntityCentralIndexKey_label_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityCentralIndexKey"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCentralIndexKey" xlink:to="lab_dei_EntityCentralIndexKey" xlink:type="arc" order="1"/>
    <link:label id="lab_spsc_EBPRequisiteServicePeriod_019d726d-e0a2-7663-aa38-45c834ce98d9_terseLabel_en-US" xlink:label="lab_spsc_EBPRequisiteServicePeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Requisite service period</link:label>
    <link:label id="lab_spsc_EBPRequisiteServicePeriod_label_en-US" xlink:label="lab_spsc_EBPRequisiteServicePeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Requisite Service Period</link:label>
    <link:label id="lab_spsc_EBPRequisiteServicePeriod_documentation_en-US" xlink:label="lab_spsc_EBPRequisiteServicePeriod" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">EBP, Requisite Service Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPRequisiteServicePeriod" xlink:href="spsc-20260629.xsd#spsc_EBPRequisiteServicePeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_spsc_EBPRequisiteServicePeriod" xlink:to="lab_spsc_EBPRequisiteServicePeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate_019d726d-e0a2-74e0-b5bf-a0d8011e0bf6_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Interest rate</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Asset Held for Investment, Participant Loan, Interest Rate</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember_019d726d-e0a3-7251-b18f-97ecba6fe4e2_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common collective trust funds</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Collective Trust [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember" xlink:to="lab_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract_019d726d-e0a2-789a-a375-ff26d83b829a_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net assets available for benefits</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Net Asset Available for Benefit [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems_019d726d-e0a2-75cd-b86d-48ed578a3db8_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EBP, Tax Status [Line Items]</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Tax Status [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract_019d726d-e0a2-7680-8d80-e279e56f92cd_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Deductions</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Change in Net Asset Available for Benefit, Decrease [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant_019ef07f-b289-78af-8db8-7458c82965f8_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Notes receivable from participants</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Note Receivable from Participant</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_019d726d-e0a2-72c1-825d-61eaeff4e5a9_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</link:label>
    <link:label id="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis_label_en-US" xlink:label="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Hierarchy and NAV [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:to="lab_us-gaap_FairValueByFairValueHierarchyLevelAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock_019d726d-e0a2-7314-963a-27b8379c15ef_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Summary of Significant Accounting Policies</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Summary of Accounting Policy [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityRegistrantName_019d726d-e0a2-7a18-ab32-65064d88de5b_terseLabel_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:label id="lab_dei_EntityRegistrantName_label_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityRegistrantName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityRegistrantName" xlink:to="lab_dei_EntityRegistrantName" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage_019d726d-e0a3-737b-b4e5-8c365e5894f3_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Concentration of employer's common stock to net assets, percentage</link:label>
    <link:label id="lab_us-gaap-ebp_EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage_label_en-US" xlink:label="lab_us-gaap-ebp_EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Risk and Uncertainty, Concentration of Investment at Fair Value to Net Assets, Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage" xlink:to="lab_us-gaap-ebp_EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTextBlock_019d726d-e0a2-7d85-9285-e47366b672b7_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income Tax Status</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTextBlock_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Tax Status [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanTaxStatusTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTextBlock" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage_019d726d-e0a2-7a95-bc06-bdb757761a29_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Maximum borrowing to total account, percentage</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Note Receivable from Participant, Account, Maximum Borrowing, to Total Account, Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentInformationTable_019d726d-e0a2-7ad3-93e1-be039ca40a80_terseLabel_en-US" xlink:label="lab_dei_DocumentInformationTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Information [Table]</link:label>
    <link:label id="lab_dei_DocumentInformationTable_label_en-US" xlink:label="lab_dei_DocumentInformationTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Information [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentInformationTable" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentInformationTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentInformationTable" xlink:to="lab_dei_DocumentInformationTable" xlink:type="arc" order="1"/>
    <link:label id="lab_spsc_EBPAssetHeldForInvestmentParticipantLoanCost_019d726d-e0a2-73cc-848e-4076eaedd9e9_terseLabel_en-US" xlink:label="lab_spsc_EBPAssetHeldForInvestmentParticipantLoanCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Participant loans, cost</link:label>
    <link:label id="lab_spsc_EBPAssetHeldForInvestmentParticipantLoanCost_label_en-US" xlink:label="lab_spsc_EBPAssetHeldForInvestmentParticipantLoanCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Asset Held for Investment, Participant Loan, Cost</link:label>
    <link:label id="lab_spsc_EBPAssetHeldForInvestmentParticipantLoanCost_documentation_en-US" xlink:label="lab_spsc_EBPAssetHeldForInvestmentParticipantLoanCost" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">EBP, Asset Held for Investment, Participant Loan, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPAssetHeldForInvestmentParticipantLoanCost" xlink:href="spsc-20260629.xsd#spsc_EBPAssetHeldForInvestmentParticipantLoanCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_spsc_EBPAssetHeldForInvestmentParticipantLoanCost" xlink:to="lab_spsc_EBPAssetHeldForInvestmentParticipantLoanCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock_019d726d-e0a2-71de-a2cf-466750822620_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Notes Receivable from Participants</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Note Receivable from Participant [Policy Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment_019d726d-e0a2-78cc-9b8d-e3515b5f7361_totalLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net investment income</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Change in Net Asset Available for Benefit, Increase (Decrease) from Income (Loss) on Investment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems_019d726d-e0a3-70a7-824f-6572c0298a95_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EBP, Related Party and Party-in-Interest Transactions [Line Items]</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Related Party and Party-in-Interest Transactions [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueInputsLevel3Member_019d726d-e0a2-7fc2-b058-e236130eeff8_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel3Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Level 3</link:label>
    <link:label id="lab_us-gaap_FairValueInputsLevel3Member_label_en-US" xlink:label="lab_us-gaap_FairValueInputsLevel3Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value, Inputs, Level 3 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueInputsLevel3Member" xlink:to="lab_us-gaap_FairValueInputsLevel3Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanOtherReceivable_019ef07f-e1c8-7089-9aeb-c63b265e677e_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanOtherReceivable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other receivables</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanOtherReceivable_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanOtherReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Other Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanOtherReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanOtherReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanOtherReceivable" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanOtherReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit_019d726d-e0a2-7f45-987a-55d85831e633_totalLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net assets available for benefits</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit_019d726d-e0a2-7881-aef6-ce25390ebf57_periodStartLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Beginning of year</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit_019d726d-e0a2-7734-8934-f13292865dac_periodEndLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">End of year</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Net Asset Available for Benefit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityDomain_019d726d-e0a2-742f-b523-69ec96055361_terseLabel_en-US" xlink:label="lab_dei_EntityDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity [Domain]</link:label>
    <link:label id="lab_dei_EntityDomain_label_en-US" xlink:label="lab_dei_EntityDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityDomain" xlink:to="lab_dei_EntityDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract_019d726d-e0a2-77b0-b922-389417051d7e_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contributions</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Change in Net Asset Available for Benefit, Increase from Contribution [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionMatchingPercentage_019d726d-e0a2-7169-9354-1c67b580e3aa_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionMatchingPercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Employer contribution, matching percentage</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionMatchingPercentage_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionMatchingPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Employer Contribution, Matching Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionMatchingPercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanEmployerContributionMatchingPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionMatchingPercentage" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionMatchingPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_FairValueMeasuredAtNetAssetValuePerShareMember_019d726d-e0a2-75ff-9a64-ea5f11cc8ef3_terseLabel_en-US" xlink:label="lab_us-gaap_FairValueMeasuredAtNetAssetValuePerShareMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">NAV</link:label>
    <link:label id="lab_us-gaap_FairValueMeasuredAtNetAssetValuePerShareMember_label_en-US" xlink:label="lab_us-gaap_FairValueMeasuredAtNetAssetValuePerShareMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Measured at Net Asset Value Per Share [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasuredAtNetAssetValuePerShareMember" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueMeasuredAtNetAssetValuePerShareMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_FairValueMeasuredAtNetAssetValuePerShareMember" xlink:to="lab_us-gaap_FairValueMeasuredAtNetAssetValuePerShareMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-7576-ba63-14d8295156f7_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EBP, Investment, Fair Value and NAV [Table]</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Investment, Fair Value and NAV [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems_019d726d-e0a2-7376-9289-0a54d4ff3936_terseLabel_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">EBP, Statement of Net Asset Available for Benefit [Line Items]</link:label>
    <link:label id="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems_label_en-US" xlink:label="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">EBP, Statement of Net Asset Available for Benefit [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems" xlink:to="lab_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems" xlink:type="arc" order="1"/>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>7
<FILENAME>spsc-20260629_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2026 Workiva-->
<!--r:019d726d-e0a2-7f08-9c37-20a11dea5949,g:aa020773-9240-4449-869e-daa4f8245da4-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.spscommerce.com/role/Cover" xlink:type="simple" xlink:href="spsc-20260629.xsd#Cover"/>
  <link:presentationLink xlink:role="http://www.spscommerce.com/role/Cover" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract_019d726d-e0a2-7d66-bc90-87aa7776e9ba" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_CoverAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentInformationTable_019d726d-e0a2-78f1-8c4b-cb7d0886a954" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentInformationTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_019d726d-e0a2-7d66-bc90-87aa7776e9ba" xlink:to="loc_dei_DocumentInformationTable_019d726d-e0a2-78f1-8c4b-cb7d0886a954" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7490-ae66-a08c4b9fd45f" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationTable_019d726d-e0a2-78f1-8c4b-cb7d0886a954" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7490-ae66-a08c4b9fd45f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7f12-a1b2-8aacdd6a3be4" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7490-ae66-a08c4b9fd45f" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7f12-a1b2-8aacdd6a3be4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-7ccc-b2e6-c02b57d403de" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7f12-a1b2-8aacdd6a3be4" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-7ccc-b2e6-c02b57d403de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentInformationLineItems_019d726d-e0a2-758e-906f-5260bf26d775" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentInformationLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationTable_019d726d-e0a2-78f1-8c4b-cb7d0886a954" xlink:to="loc_dei_DocumentInformationLineItems_019d726d-e0a2-758e-906f-5260bf26d775" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType_019d726d-e0a2-7907-aed2-33a603cb168e" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_DocumentType"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_019d726d-e0a2-758e-906f-5260bf26d775" xlink:to="loc_dei_DocumentType_019d726d-e0a2-7907-aed2-33a603cb168e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName_019d726d-e0a2-74bc-8033-7519ef6c7bc7" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityRegistrantName"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_019d726d-e0a2-758e-906f-5260bf26d775" xlink:to="loc_dei_EntityRegistrantName_019d726d-e0a2-74bc-8033-7519ef6c7bc7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey_019d726d-e0a2-7f4e-b8c5-31975f88d0db" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityCentralIndexKey"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_019d726d-e0a2-758e-906f-5260bf26d775" xlink:to="loc_dei_EntityCentralIndexKey_019d726d-e0a2-7f4e-b8c5-31975f88d0db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag_019d726d-e0a2-7f88-8e27-708625a36e5d" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_AmendmentFlag"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_DocumentInformationLineItems_019d726d-e0a2-758e-906f-5260bf26d775" xlink:to="loc_dei_AmendmentFlag_019d726d-e0a2-7f88-8e27-708625a36e5d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement" xlink:type="simple" xlink:href="spsc-20260629.xsd#STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement"/>
  <link:presentationLink xlink:role="http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitAbstract_019d726d-e0a2-7685-855b-048afba31382" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable_019d726d-e0a2-758d-b059-892233e215e6" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitAbstract_019d726d-e0a2-7685-855b-048afba31382" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable_019d726d-e0a2-758d-b059-892233e215e6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7cc4-aef3-1e76b8b25235" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable_019d726d-e0a2-758d-b059-892233e215e6" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7cc4-aef3-1e76b8b25235" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7834-a6ce-1ef14feecb39" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7cc4-aef3-1e76b8b25235" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7834-a6ce-1ef14feecb39" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-70a4-b2ae-1ba9f98298c5" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7834-a6ce-1ef14feecb39" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-70a4-b2ae-1ba9f98298c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7866-b984-82abc180c32c" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable_019d726d-e0a2-758d-b059-892233e215e6" xlink:to="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7866-b984-82abc180c32c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7492-829d-8c765c58a31b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7866-b984-82abc180c32c" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7492-829d-8c765c58a31b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MutualFundMember_019d726d-e0a2-7c20-9e4c-0c2db998a04c" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_MutualFundMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7492-829d-8c765c58a31b" xlink:to="loc_us-gaap_MutualFundMember_019d726d-e0a2-7c20-9e4c-0c2db998a04c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember_019d726d-e0a2-75ec-a51f-14eebbd8bd16" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7492-829d-8c765c58a31b" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember_019d726d-e0a2-75ec-a51f-14eebbd8bd16" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember_019d726d-e0a2-7fb6-8b45-775a0702f2da" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7492-829d-8c765c58a31b" xlink:to="loc_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember_019d726d-e0a2-7fb6-8b45-775a0702f2da" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems_019d726d-e0a2-78f6-8fbb-34fd990b1149" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable_019d726d-e0a2-758d-b059-892233e215e6" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems_019d726d-e0a2-78f6-8fbb-34fd990b1149" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract_019d726d-e0a2-73ff-b263-6386e676a9bf" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAssetAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems_019d726d-e0a2-78f6-8fbb-34fd990b1149" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract_019d726d-e0a2-73ff-b263-6386e676a9bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanCash_019d726d-e0a2-73a8-b138-6d2d03c949de" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanCash"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract_019d726d-e0a2-73ff-b263-6386e676a9bf" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanCash_019d726d-e0a2-73a8-b138-6d2d03c949de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract_019d726d-e0a2-75a5-a661-fcbc5609c0cd" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract_019d726d-e0a2-73ff-b263-6386e676a9bf" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract_019d726d-e0a2-75a5-a661-fcbc5609c0cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue_019d726d-e0a2-786b-b605-a7d486f5345a" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract_019d726d-e0a2-75a5-a661-fcbc5609c0cd" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue_019d726d-e0a2-786b-b605-a7d486f5345a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanOtherReceivable_019ef07f-e1c8-762c-a26b-cd2b280dd77e" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanOtherReceivable"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract_019d726d-e0a2-73ff-b263-6386e676a9bf" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanOtherReceivable_019ef07f-e1c8-762c-a26b-cd2b280dd77e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant_019d726d-e0a2-7322-9424-a133aa9e5d50" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract_019d726d-e0a2-73ff-b263-6386e676a9bf" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant_019d726d-e0a2-7322-9424-a133aa9e5d50" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanReceivable_019f03fd-ce00-752c-bc19-c3ed21d4a62f" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanReceivable"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract_019d726d-e0a2-73ff-b263-6386e676a9bf" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanReceivable_019f03fd-ce00-752c-bc19-c3ed21d4a62f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit_019d726d-e0a2-7f29-8133-53c950a3030c" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems_019d726d-e0a2-78f6-8fbb-34fd990b1149" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit_019d726d-e0a2-7f29-8133-53c950a3030c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement" xlink:type="simple" xlink:href="spsc-20260629.xsd#STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"/>
  <link:presentationLink xlink:role="http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitAbstract_019d726d-e0a2-77e0-a1b7-d2f11625ba51" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitTable_019d726d-e0a2-71a0-927b-90e0a6ef60fb" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitAbstract_019d726d-e0a2-77e0-a1b7-d2f11625ba51" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitTable_019d726d-e0a2-71a0-927b-90e0a6ef60fb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-79aa-a8f8-204165a40c6e" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitTable_019d726d-e0a2-71a0-927b-90e0a6ef60fb" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-79aa-a8f8-204165a40c6e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-76aa-ab4e-6a2addb2294f" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-79aa-a8f8-204165a40c6e" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-76aa-ab4e-6a2addb2294f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-71e3-acb1-88648388aeb0" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-76aa-ab4e-6a2addb2294f" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-71e3-acb1-88648388aeb0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems_019d726d-e0a2-7e38-8227-30cb7e093e78" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitTable_019d726d-e0a2-71a0-927b-90e0a6ef60fb" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems_019d726d-e0a2-7e38-8227-30cb7e093e78" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract_019d726d-e0a2-7cf3-8b48-7e615fa918f2" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems_019d726d-e0a2-7e38-8227-30cb7e093e78" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract_019d726d-e0a2-7cf3-8b48-7e615fa918f2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract_019d726d-e0a2-7133-8c62-8ede5e7683be" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract_019d726d-e0a2-7cf3-8b48-7e615fa918f2" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract_019d726d-e0a2-7133-8c62-8ede5e7683be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment_019d726d-e0a2-7f6a-a8cf-eed038d5e617" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract_019d726d-e0a2-7133-8c62-8ede5e7683be" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment_019d726d-e0a2-7f6a-a8cf-eed038d5e617" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment_019d726d-e0a2-7097-ba49-0b03e1e87cfe" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract_019d726d-e0a2-7133-8c62-8ede5e7683be" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment_019d726d-e0a2-7097-ba49-0b03e1e87cfe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment_019d726d-e0a2-73fb-8844-b25016dc3a0a" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract_019d726d-e0a2-7133-8c62-8ede5e7683be" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment_019d726d-e0a2-73fb-8844-b25016dc3a0a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant_019d726d-e0a2-7169-9a6e-58aec44907bb" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract_019d726d-e0a2-7cf3-8b48-7e615fa918f2" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant_019d726d-e0a2-7169-9a6e-58aec44907bb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract_019d726d-e0a2-74b4-a2c1-517f1d38ecc9" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract_019d726d-e0a2-7cf3-8b48-7e615fa918f2" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract_019d726d-e0a2-74b4-a2c1-517f1d38ecc9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover_019d726d-e0a2-7889-8e54-5e1844a2fb26" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract_019d726d-e0a2-74b4-a2c1-517f1d38ecc9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover_019d726d-e0a2-7889-8e54-5e1844a2fb26" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash_019d726d-e0a2-7ac7-a1b2-822c2d3ea3d6" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract_019d726d-e0a2-74b4-a2c1-517f1d38ecc9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash_019d726d-e0a2-7ac7-a1b2-822c2d3ea3d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover_019d726d-e0a2-74af-a64f-ae594935bfbb" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract_019d726d-e0a2-74b4-a2c1-517f1d38ecc9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover_019d726d-e0a2-74af-a64f-ae594935bfbb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution_019d726d-e0a2-7b78-ab63-cc4429ef81de" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract_019d726d-e0a2-74b4-a2c1-517f1d38ecc9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution_019d726d-e0a2-7b78-ab63-cc4429ef81de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease_019d726d-e0a2-75c8-96f5-fd2a517433c7" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract_019d726d-e0a2-7cf3-8b48-7e615fa918f2" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease_019d726d-e0a2-75c8-96f5-fd2a517433c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract_019d726d-e0a2-7ac0-be91-20eb36c90339" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems_019d726d-e0a2-7e38-8227-30cb7e093e78" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract_019d726d-e0a2-7ac0-be91-20eb36c90339" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant_019d726d-e0a2-754c-ac7c-cdf9ccf10721" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract_019d726d-e0a2-7ac0-be91-20eb36c90339" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant_019d726d-e0a2-754c-ac7c-cdf9ccf10721" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense_019d726d-e0a2-70c7-af0c-ac33d8a6323c" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract_019d726d-e0a2-7ac0-be91-20eb36c90339" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense_019d726d-e0a2-70c7-af0c-ac33d8a6323c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease_019d726d-e0a2-734e-9f4f-5a058563c75b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract_019d726d-e0a2-7ac0-be91-20eb36c90339" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease_019d726d-e0a2-734e-9f4f-5a058563c75b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease_019d726d-e0a2-749e-b440-d76612ba2473" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems_019d726d-e0a2-7e38-8227-30cb7e093e78" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease_019d726d-e0a2-749e-b440-d76612ba2473" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan_019d726d-e0a2-71a6-b8ff-f5020572d5ee" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems_019d726d-e0a2-7e38-8227-30cb7e093e78" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan_019d726d-e0a2-71a6-b8ff-f5020572d5ee" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract_019d726d-e0a2-780e-be54-44c1c76dc688" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems_019d726d-e0a2-7e38-8227-30cb7e093e78" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract_019d726d-e0a2-780e-be54-44c1c76dc688" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit_019d726d-e0a2-762f-8a05-16b5cba23922" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract_019d726d-e0a2-780e-be54-44c1c76dc688" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit_019d726d-e0a2-762f-8a05-16b5cba23922" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit_019d726d-e0a2-7c83-b910-77f5dc956a15" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract_019d726d-e0a2-780e-be54-44c1c76dc688" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit_019d726d-e0a2-7c83-b910-77f5dc956a15" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/PlanDescription" xlink:type="simple" xlink:href="spsc-20260629.xsd#PlanDescription"/>
  <link:presentationLink xlink:role="http://www.spscommerce.com/role/PlanDescription" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanAbstract_019d726d-e0a2-7147-a818-a110b955f9ac" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-78f4-b272-af080249f585" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanAbstract_019d726d-e0a2-7147-a818-a110b955f9ac" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-78f4-b272-af080249f585" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-725b-a878-977fe98f3b84" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-78f4-b272-af080249f585" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-725b-a878-977fe98f3b84" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-72d7-9b07-9ae5bf58d4b2" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-725b-a878-977fe98f3b84" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-72d7-9b07-9ae5bf58d4b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-7f56-a85a-383d90652920" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-72d7-9b07-9ae5bf58d4b2" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-7f56-a85a-383d90652920" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-737a-b866-8d2b286cab67" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-78f4-b272-af080249f585" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-737a-b866-8d2b286cab67" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTextBlock_019d726d-e0a2-7827-bb12-0b70399236d6" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-737a-b866-8d2b286cab67" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTextBlock_019d726d-e0a2-7827-bb12-0b70399236d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/SummaryofSignificantAccountingPolicies" xlink:type="simple" xlink:href="spsc-20260629.xsd#SummaryofSignificantAccountingPolicies"/>
  <link:presentationLink xlink:role="http://www.spscommerce.com/role/SummaryofSignificantAccountingPolicies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyAbstract_019d726d-e0a2-74aa-9122-ead0de2c96a3" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-7eb1-841f-b0fd7e3626e9" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyAbstract_019d726d-e0a2-74aa-9122-ead0de2c96a3" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-7eb1-841f-b0fd7e3626e9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7a94-bc9f-aacaa84c1fe9" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-7eb1-841f-b0fd7e3626e9" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7a94-bc9f-aacaa84c1fe9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-73ac-b920-807e703352b7" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7a94-bc9f-aacaa84c1fe9" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-73ac-b920-807e703352b7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-74d8-a1c8-f193a8a2f0eb" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-73ac-b920-807e703352b7" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-74d8-a1c8-f193a8a2f0eb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-759c-b55a-60b5e59ecbf3" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-7eb1-841f-b0fd7e3626e9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-759c-b55a-60b5e59ecbf3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock_019d726d-e0a2-72d9-abcb-357554ad356e" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-759c-b55a-60b5e59ecbf3" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock_019d726d-e0a2-72d9-abcb-357554ad356e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/FairValueMeasurements" xlink:type="simple" xlink:href="spsc-20260629.xsd#FairValueMeasurements"/>
  <link:presentationLink xlink:role="http://www.spscommerce.com/role/FairValueMeasurements" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavAbstract_019d726d-e0a2-7b30-9bd9-60d25954be78" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-7d2e-88bd-f7459a73b409" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavAbstract_019d726d-e0a2-7b30-9bd9-60d25954be78" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-7d2e-88bd-f7459a73b409" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7506-a664-ec7d53318070" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-7d2e-88bd-f7459a73b409" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7506-a664-ec7d53318070" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7939-8d05-f5c068740583" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7506-a664-ec7d53318070" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7939-8d05-f5c068740583" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-7ea4-92dc-eabea8d109e8" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7939-8d05-f5c068740583" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-7ea4-92dc-eabea8d109e8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_019d726d-e0a2-742a-a630-b4fea906f668" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-7d2e-88bd-f7459a73b409" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_019d726d-e0a2-742a-a630-b4fea906f668" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock_019d726d-e0a2-795d-8c28-a5913ba78c3e" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_019d726d-e0a2-742a-a630-b4fea906f668" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock_019d726d-e0a2-795d-8c28-a5913ba78c3e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/IncomeTaxStatus" xlink:type="simple" xlink:href="spsc-20260629.xsd#IncomeTaxStatus"/>
  <link:presentationLink xlink:role="http://www.spscommerce.com/role/IncomeTaxStatus" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusAbstract_019d726d-e0a2-73e4-99f4-052692b14f20" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanTaxStatusAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTable_019d726d-e0a2-7c35-ab64-3ba299239d8b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanTaxStatusTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusAbstract_019d726d-e0a2-73e4-99f4-052692b14f20" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTable_019d726d-e0a2-7c35-ab64-3ba299239d8b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7f92-a1ea-a679a9840d44" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTable_019d726d-e0a2-7c35-ab64-3ba299239d8b" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7f92-a1ea-a679a9840d44" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7a23-b026-40ee8c8dcf65" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7f92-a1ea-a679a9840d44" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7a23-b026-40ee8c8dcf65" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-7733-b1b3-70a4e6299506" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7a23-b026-40ee8c8dcf65" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-7733-b1b3-70a4e6299506" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems_019d726d-e0a2-7ac6-b840-17b862037838" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTable_019d726d-e0a2-7c35-ab64-3ba299239d8b" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems_019d726d-e0a2-7ac6-b840-17b862037838" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTextBlock_019d726d-e0a2-7613-9c3a-7987499c749e" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanTaxStatusTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems_019d726d-e0a2-7ac6-b840-17b862037838" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTextBlock_019d726d-e0a2-7613-9c3a-7987499c749e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/PartyinInterestTransactions" xlink:type="simple" xlink:href="spsc-20260629.xsd#PartyinInterestTransactions"/>
  <link:presentationLink xlink:role="http://www.spscommerce.com/role/PartyinInterestTransactions" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsAbstract_019d726d-e0a2-724a-ac61-ad584ccf8875" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable_019d726d-e0a2-7946-b35f-a8196dc96d70" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsAbstract_019d726d-e0a2-724a-ac61-ad584ccf8875" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable_019d726d-e0a2-7946-b35f-a8196dc96d70" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7287-8a74-f373ecd45d5f" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable_019d726d-e0a2-7946-b35f-a8196dc96d70" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7287-8a74-f373ecd45d5f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7f69-a904-4a0c3e3eda5e" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7287-8a74-f373ecd45d5f" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7f69-a904-4a0c3e3eda5e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-7c73-92eb-e184a6bb163a" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7f69-a904-4a0c3e3eda5e" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-7c73-92eb-e184a6bb163a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems_019d726d-e0a2-7d1f-b67f-450b445742a6" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable_019d726d-e0a2-7946-b35f-a8196dc96d70" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems_019d726d-e0a2-7d1f-b67f-450b445742a6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock_019d726d-e0a2-7c1e-a056-a3c100ebdb3d" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems_019d726d-e0a2-7d1f-b67f-450b445742a6" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock_019d726d-e0a2-7c1e-a056-a3c100ebdb3d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYear" xlink:type="simple" xlink:href="spsc-20260629.xsd#Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYear"/>
  <link:presentationLink xlink:role="http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYear" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentAbstract_019d726d-e0a2-75e4-8a19-fddabdf5e69b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-7efe-bb91-844c235adf49" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentAbstract_019d726d-e0a2-75e4-8a19-fddabdf5e69b" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-7efe-bb91-844c235adf49" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7b82-97cf-a020362b50d5" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-7efe-bb91-844c235adf49" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7b82-97cf-a020362b50d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7816-afe9-176c583eb2d1" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7b82-97cf-a020362b50d5" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7816-afe9-176c583eb2d1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-7587-9ee5-2dc428986e0c" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7816-afe9-176c583eb2d1" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-7587-9ee5-2dc428986e0c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-7864-b041-c79990290237" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-7efe-bb91-844c235adf49" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-7864-b041-c79990290237" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock_019d726d-e0a2-7f57-99a7-7da236ef2f10" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-7864-b041-c79990290237" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock_019d726d-e0a2-7f57-99a7-7da236ef2f10" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies" xlink:type="simple" xlink:href="spsc-20260629.xsd#SummaryofSignificantAccountingPoliciesPolicies"/>
  <link:presentationLink xlink:role="http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyAbstract_019d726d-e0a2-74fd-94f1-020caf597230" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-7c32-b4cb-c6b391b0f080" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyAbstract_019d726d-e0a2-74fd-94f1-020caf597230" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-7c32-b4cb-c6b391b0f080" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-70e0-9f2b-cd12cc4258fe" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-7c32-b4cb-c6b391b0f080" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-70e0-9f2b-cd12cc4258fe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-79c5-842c-c5e6b8365784" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-70e0-9f2b-cd12cc4258fe" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-79c5-842c-c5e6b8365784" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-71cf-aab6-cddb002c726b" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-79c5-842c-c5e6b8365784" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-71cf-aab6-cddb002c726b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-77dc-a958-2de592353ba9" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-7c32-b4cb-c6b391b0f080" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-77dc-a958-2de592353ba9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock_019d726d-e0a2-72c2-8284-c3836012402c" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-77dc-a958-2de592353ba9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock_019d726d-e0a2-72c2-8284-c3836012402c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentPolicyTextBlock_019d726d-e0a2-78d1-b99f-ec2b87c2365d" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentPolicyTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-77dc-a958-2de592353ba9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentPolicyTextBlock_019d726d-e0a2-78d1-b99f-ec2b87c2365d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanExpensePolicyTextBlock_019d726d-e0a2-70c3-87cc-675a3c6b66f9" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanExpensePolicyTextBlock"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-77dc-a958-2de592353ba9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanExpensePolicyTextBlock_019d726d-e0a2-70c3-87cc-675a3c6b66f9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock_019d726d-e0a2-715a-bdf3-cfa0a7ce2534" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-77dc-a958-2de592353ba9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock_019d726d-e0a2-715a-bdf3-cfa0a7ce2534" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EbpRiskAndUncertaintyPolicyTextBlock_019d726d-e0a2-70db-ac5e-36f3203a7255" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EbpRiskAndUncertaintyPolicyTextBlock"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-77dc-a958-2de592353ba9" xlink:to="loc_us-gaap-ebp_EbpRiskAndUncertaintyPolicyTextBlock_019d726d-e0a2-70db-ac5e-36f3203a7255" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanUseOfEstimatePolicyTextBlock_019d726d-e0a2-78f9-8172-19fc4ae39698" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanUseOfEstimatePolicyTextBlock"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-77dc-a958-2de592353ba9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanUseOfEstimatePolicyTextBlock_019d726d-e0a2-78f9-8172-19fc4ae39698" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock_019d726d-e0a2-7651-9142-e285cb56c2c9" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-77dc-a958-2de592353ba9" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock_019d726d-e0a2-7651-9142-e285cb56c2c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/PlanDescriptionTables" xlink:type="simple" xlink:href="spsc-20260629.xsd#PlanDescriptionTables"/>
  <link:presentationLink xlink:role="http://www.spscommerce.com/role/PlanDescriptionTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanAbstract_019d726d-e0a2-77c7-8ba5-03cf48504658" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-7bad-839b-2d43552ea099" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanAbstract_019d726d-e0a2-77c7-8ba5-03cf48504658" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-7bad-839b-2d43552ea099" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7ccb-9188-fb9828521bab" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-7bad-839b-2d43552ea099" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7ccb-9188-fb9828521bab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-773d-aa4a-899c05ce8e93" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7ccb-9188-fb9828521bab" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-773d-aa4a-899c05ce8e93" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-7131-856a-91aa6f87ba8c" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-773d-aa4a-899c05ce8e93" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-7131-856a-91aa6f87ba8c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-7967-9f58-3eefa98ee9aa" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-7bad-839b-2d43552ea099" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-7967-9f58-3eefa98ee9aa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPEmployerContributionVestingScheduleTableTextBlock_019d726d-e0a2-7286-9de9-0a258ae57c56" xlink:href="spsc-20260629.xsd#spsc_EBPEmployerContributionVestingScheduleTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-7967-9f58-3eefa98ee9aa" xlink:to="loc_spsc_EBPEmployerContributionVestingScheduleTableTextBlock_019d726d-e0a2-7286-9de9-0a258ae57c56" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/FairValueMeasurementsTables" xlink:type="simple" xlink:href="spsc-20260629.xsd#FairValueMeasurementsTables"/>
  <link:presentationLink xlink:role="http://www.spscommerce.com/role/FairValueMeasurementsTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavAbstract_019d726d-e0a2-7ebe-ab3c-0127fee1a692" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-79d7-baba-6763624fadd5" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavAbstract_019d726d-e0a2-7ebe-ab3c-0127fee1a692" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-79d7-baba-6763624fadd5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-74e6-b6f7-6890c33b053c" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-79d7-baba-6763624fadd5" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-74e6-b6f7-6890c33b053c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7b26-b95f-90f997684742" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-74e6-b6f7-6890c33b053c" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7b26-b95f-90f997684742" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-7218-849c-29e77374f353" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7b26-b95f-90f997684742" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-7218-849c-29e77374f353" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_019d726d-e0a2-7434-98b0-3737fe0f8a51" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-79d7-baba-6763624fadd5" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_019d726d-e0a2-7434-98b0-3737fe0f8a51" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock_019d726d-e0a2-76df-973b-8a902819297c" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_019d726d-e0a2-7434-98b0-3737fe0f8a51" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock_019d726d-e0a2-76df-973b-8a902819297c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails" xlink:type="simple" xlink:href="spsc-20260629.xsd#PlanDescriptionNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanAbstract_019d726d-e0a2-76c2-9c15-2146b14fe72b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-78a6-87f0-c92b1a337680" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanAbstract_019d726d-e0a2-76c2-9c15-2146b14fe72b" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-78a6-87f0-c92b1a337680" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-73ac-9567-0b96fd000810" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-78a6-87f0-c92b1a337680" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-73ac-9567-0b96fd000810" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7e57-92ab-2b7970b289f0" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-73ac-9567-0b96fd000810" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7e57-92ab-2b7970b289f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-73a2-8803-6bc42dfef35e" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7e57-92ab-2b7970b289f0" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-73a2-8803-6bc42dfef35e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_019d726d-e0a2-7141-95b5-8b9d4b8aaf31" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-78a6-87f0-c92b1a337680" xlink:to="loc_srt_RangeAxis_019d726d-e0a2-7141-95b5-8b9d4b8aaf31" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_019d726d-e0a2-7766-88b0-93adb07d4558" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_019d726d-e0a2-7141-95b5-8b9d4b8aaf31" xlink:to="loc_srt_RangeMember_019d726d-e0a2-7766-88b0-93adb07d4558" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_019d726d-e0a2-77db-84bd-13937b635552" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_019d726d-e0a2-7766-88b0-93adb07d4558" xlink:to="loc_srt_MinimumMember_019d726d-e0a2-77db-84bd-13937b635552" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_019d726d-e0a2-77a4-9d2a-01defe237ecf" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_019d726d-e0a2-7766-88b0-93adb07d4558" xlink:to="loc_srt_MaximumMember_019d726d-e0a2-77a4-9d2a-01defe237ecf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-78a6-87f0-c92b1a337680" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan_019d726d-e0a2-71bc-8c69-50a3d66bf596" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan_019d726d-e0a2-71bc-8c69-50a3d66bf596" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPMinimumAgeToParticipate_019d726d-e0a2-7a5a-8fef-e3a7469b4227" xlink:href="spsc-20260629.xsd#spsc_EBPMinimumAgeToParticipate"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_spsc_EBPMinimumAgeToParticipate_019d726d-e0a2-7a5a-8fef-e3a7469b4227" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPRequisiteServicePeriod_019d726d-e0a2-7655-87e9-a2661e8bdeab" xlink:href="spsc-20260629.xsd#spsc_EBPRequisiteServicePeriod"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_spsc_EBPRequisiteServicePeriod_019d726d-e0a2-7655-87e9-a2661e8bdeab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate_019d726d-e0a2-7d62-8f0a-fb324b7272c6" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate_019d726d-e0a2-7d62-8f0a-fb324b7272c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage_019d726d-e0a2-7809-9f03-bb3ddd644690" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage_019d726d-e0a2-7809-9f03-bb3ddd644690" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionMatchingPercentage_019d726d-e0a2-7796-8572-6ab6c85a2aac" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanEmployerContributionMatchingPercentage"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionMatchingPercentage_019d726d-e0a2-7796-8572-6ab6c85a2aac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage_019d726d-e0a2-7f12-b201-43c4682bb118" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage_019d726d-e0a2-7f12-b201-43c4682bb118" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount_019d726d-e0a2-7840-806c-12a5238a26db" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount_019d726d-e0a2-7840-806c-12a5238a26db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount_019d726d-e0a2-714c-857d-dffe91dfcd25" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount_019d726d-e0a2-714c-857d-dffe91dfcd25" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage_019d726d-e0a2-719d-a048-8d78473c9fc5" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage_019d726d-e0a2-719d-a048-8d78473c9fc5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPNoteReceivableFromParticipantBorrowingTerm_019d726d-e0a2-7f4d-893f-bc31a2027e9e" xlink:href="spsc-20260629.xsd#spsc_EBPNoteReceivableFromParticipantBorrowingTerm"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_spsc_EBPNoteReceivableFromParticipantBorrowingTerm_019d726d-e0a2-7f4d-893f-bc31a2027e9e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed_019d726d-e0a2-7d8e-8523-a7cd48315853" xlink:href="spsc-20260629.xsd#spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed_019d726d-e0a2-7d8e-8523-a7cd48315853" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPInvoluntaryCashOutLimit_019d726d-e0a2-79c7-9112-43358c59db05" xlink:href="spsc-20260629.xsd#spsc_EBPInvoluntaryCashOutLimit"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_spsc_EBPInvoluntaryCashOutLimit_019d726d-e0a2-79c7-9112-43358c59db05" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit_019d726d-e0a2-74d6-bde4-d9e9ef9ef697" xlink:href="spsc-20260629.xsd#spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-72d6-bea7-e3aeeebb341d" xlink:to="loc_spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit_019d726d-e0a2-74d6-bde4-d9e9ef9ef697" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/PlanDescriptionVestingScheduleofEmployerContributionDetails" xlink:type="simple" xlink:href="spsc-20260629.xsd#PlanDescriptionVestingScheduleofEmployerContributionDetails"/>
  <link:presentationLink xlink:role="http://www.spscommerce.com/role/PlanDescriptionVestingScheduleofEmployerContributionDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanAbstract_019d726d-e0a2-7cff-8cfa-97d2b9b87a18" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-73d1-a5b2-29a1b09b0681" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanAbstract_019d726d-e0a2-7cff-8cfa-97d2b9b87a18" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-73d1-a5b2-29a1b09b0681" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPEmployerContributionVestingAxis_019d726d-e0a2-7193-b946-b12a987da0a4" xlink:href="spsc-20260629.xsd#spsc_EBPEmployerContributionVestingAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-73d1-a5b2-29a1b09b0681" xlink:to="loc_spsc_EBPEmployerContributionVestingAxis_019d726d-e0a2-7193-b946-b12a987da0a4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPEmployerContributionVestingDomain_019d726d-e0a2-72a1-9b07-15cc05d0ca7b" xlink:href="spsc-20260629.xsd#spsc_EBPEmployerContributionVestingDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_spsc_EBPEmployerContributionVestingAxis_019d726d-e0a2-7193-b946-b12a987da0a4" xlink:to="loc_spsc_EBPEmployerContributionVestingDomain_019d726d-e0a2-72a1-9b07-15cc05d0ca7b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPVestingScheduleTrancheOneMember_019d726d-e0a2-7df1-b4e4-3ab1cd7bb116" xlink:href="spsc-20260629.xsd#spsc_EBPVestingScheduleTrancheOneMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_spsc_EBPEmployerContributionVestingDomain_019d726d-e0a2-72a1-9b07-15cc05d0ca7b" xlink:to="loc_spsc_EBPVestingScheduleTrancheOneMember_019d726d-e0a2-7df1-b4e4-3ab1cd7bb116" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPVestingScheduleTrancheTwoMember_019d726d-e0a2-7490-9fdf-4dd51b7a5dd2" xlink:href="spsc-20260629.xsd#spsc_EBPVestingScheduleTrancheTwoMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_spsc_EBPEmployerContributionVestingDomain_019d726d-e0a2-72a1-9b07-15cc05d0ca7b" xlink:to="loc_spsc_EBPVestingScheduleTrancheTwoMember_019d726d-e0a2-7490-9fdf-4dd51b7a5dd2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPVestingScheduleTrancheThreeMember_019d726d-e0a2-7b35-8904-2a4f9c1a5f5f" xlink:href="spsc-20260629.xsd#spsc_EBPVestingScheduleTrancheThreeMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_spsc_EBPEmployerContributionVestingDomain_019d726d-e0a2-72a1-9b07-15cc05d0ca7b" xlink:to="loc_spsc_EBPVestingScheduleTrancheThreeMember_019d726d-e0a2-7b35-8904-2a4f9c1a5f5f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7b1b-8f06-a8cfd983e63c" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-73d1-a5b2-29a1b09b0681" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7b1b-8f06-a8cfd983e63c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-71be-b345-39e7971265de" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7b1b-8f06-a8cfd983e63c" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-71be-b345-39e7971265de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-77cb-8a47-2c4037dadad8" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-71be-b345-39e7971265de" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-77cb-8a47-2c4037dadad8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-7b0b-a9a3-ed5639604c99" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable_019d726d-e0a2-73d1-a5b2-29a1b09b0681" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-7b0b-a9a3-ed5639604c99" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPEmployerContributionVestingPercentage_019d726d-e0a2-7b7f-a84f-6d4c834fb061" xlink:href="spsc-20260629.xsd#spsc_EBPEmployerContributionVestingPercentage"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-7b0b-a9a3-ed5639604c99" xlink:to="loc_spsc_EBPEmployerContributionVestingPercentage_019d726d-e0a2-7b7f-a84f-6d4c834fb061" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPEmployerContributionVestingRequisiteServicePeriod_019d726d-e0a2-71e7-b75c-af671342b392" xlink:href="spsc-20260629.xsd#spsc_EBPEmployerContributionVestingRequisiteServicePeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems_019d726d-e0a2-7b0b-a9a3-ed5639604c99" xlink:to="loc_spsc_EBPEmployerContributionVestingRequisiteServicePeriod_019d726d-e0a2-71e7-b75c-af671342b392" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesDetails" xlink:type="simple" xlink:href="spsc-20260629.xsd#SummaryofSignificantAccountingPoliciesDetails"/>
  <link:presentationLink xlink:role="http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyAbstract_019d726d-e0a2-77e1-9055-45080eac63b8" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-70c9-be51-c9de37aac8f8" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyAbstract_019d726d-e0a2-77e1-9055-45080eac63b8" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-70c9-be51-c9de37aac8f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-758d-ab20-d1cb83647f51" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-70c9-be51-c9de37aac8f8" xlink:to="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-758d-ab20-d1cb83647f51" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-752b-8641-7c174342a806" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-758d-ab20-d1cb83647f51" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-752b-8641-7c174342a806" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember_019d726d-e0a2-7b06-a760-2a793897cc8c" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-752b-8641-7c174342a806" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember_019d726d-e0a2-7b06-a760-2a793897cc8c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7685-8b67-3323506d26a3" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-70c9-be51-c9de37aac8f8" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7685-8b67-3323506d26a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7c42-88e4-493b3f6ce847" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7685-8b67-3323506d26a3" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7c42-88e4-493b3f6ce847" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-73d1-82b6-011e4075ed8f" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7c42-88e4-493b3f6ce847" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-73d1-82b6-011e4075ed8f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-76da-af07-976fc2df37c8" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable_019d726d-e0a2-70c9-be51-c9de37aac8f8" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-76da-af07-976fc2df37c8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage_019d726d-e0a2-7b3a-85a4-f096b813b5e5" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-76da-af07-976fc2df37c8" xlink:to="loc_us-gaap-ebp_EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage_019d726d-e0a2-7b3a-85a4-f096b813b5e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan_019d726d-e0a2-7419-afba-ae2127c5d554" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems_019d726d-e0a2-76da-af07-976fc2df37c8" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan_019d726d-e0a2-7419-afba-ae2127c5d554" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/netLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails" xlink:type="simple" xlink:href="spsc-20260629.xsd#FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails"/>
  <link:presentationLink xlink:role="http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavAbstract_019d726d-e0a2-77bc-b395-4c679cfa28c8" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-7ec5-b184-5d2d5384e533" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavAbstract_019d726d-e0a2-77bc-b395-4c679cfa28c8" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-7ec5-b184-5d2d5384e533" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_019d726d-e0a2-706e-a87e-b575a2ae4358" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueByFairValueHierarchyLevelAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-7ec5-b184-5d2d5384e533" xlink:to="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_019d726d-e0a2-706e-a87e-b575a2ae4358" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_019d726d-e0a2-71f4-a461-4810765ffbca" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueMeasurementsFairValueHierarchyDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueByFairValueHierarchyLevelAxis_019d726d-e0a2-706e-a87e-b575a2ae4358" xlink:to="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_019d726d-e0a2-71f4-a461-4810765ffbca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel12And3Member_019d726d-e0a2-7f34-98a5-200bb8f16fca" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueInputsLevel12And3Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_019d726d-e0a2-71f4-a461-4810765ffbca" xlink:to="loc_us-gaap_FairValueInputsLevel12And3Member_019d726d-e0a2-7f34-98a5-200bb8f16fca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel1Member_019d726d-e0a2-71d0-b71b-c0c2b158bdd5" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueInputsLevel1Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueInputsLevel12And3Member_019d726d-e0a2-7f34-98a5-200bb8f16fca" xlink:to="loc_us-gaap_FairValueInputsLevel1Member_019d726d-e0a2-71d0-b71b-c0c2b158bdd5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel2Member_019d726d-e0a2-724f-a2a7-b90235e0d1d1" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueInputsLevel2Member"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueInputsLevel12And3Member_019d726d-e0a2-7f34-98a5-200bb8f16fca" xlink:to="loc_us-gaap_FairValueInputsLevel2Member_019d726d-e0a2-724f-a2a7-b90235e0d1d1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueInputsLevel3Member_019d726d-e0a2-71b9-ab61-a5595ecf663b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueInputsLevel3Member"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueInputsLevel12And3Member_019d726d-e0a2-7f34-98a5-200bb8f16fca" xlink:to="loc_us-gaap_FairValueInputsLevel3Member_019d726d-e0a2-71b9-ab61-a5595ecf663b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_FairValueMeasuredAtNetAssetValuePerShareMember_019d726d-e0a2-7530-9903-f5fd523434dc" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_FairValueMeasuredAtNetAssetValuePerShareMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_FairValueMeasurementsFairValueHierarchyDomain_019d726d-e0a2-71f4-a461-4810765ffbca" xlink:to="loc_us-gaap_FairValueMeasuredAtNetAssetValuePerShareMember_019d726d-e0a2-7530-9903-f5fd523434dc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7ff9-9421-400be807b4cf" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-7ec5-b184-5d2d5384e533" xlink:to="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7ff9-9421-400be807b4cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7850-a38f-db8658e5b56b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7ff9-9421-400be807b4cf" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7850-a38f-db8658e5b56b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember_019d726d-e0a2-7357-9f94-f91863c029e2" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7850-a38f-db8658e5b56b" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember_019d726d-e0a2-7357-9f94-f91863c029e2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MutualFundMember_019d726d-e0a2-745c-8763-6171d3042fbf" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_MutualFundMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7850-a38f-db8658e5b56b" xlink:to="loc_us-gaap_MutualFundMember_019d726d-e0a2-745c-8763-6171d3042fbf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember_019d726d-e0a2-74c3-afc9-0a89d67a8546" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7850-a38f-db8658e5b56b" xlink:to="loc_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember_019d726d-e0a2-74c3-afc9-0a89d67a8546" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7ae1-bedb-d879f028122a" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-7ec5-b184-5d2d5384e533" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7ae1-bedb-d879f028122a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7943-b8c9-ea470cd6f48c" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7ae1-bedb-d879f028122a" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7943-b8c9-ea470cd6f48c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-78c1-802d-c01d2f6e7769" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7943-b8c9-ea470cd6f48c" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-78c1-802d-c01d2f6e7769" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_019d726d-e0a2-76db-b542-41edb96246b1" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable_019d726d-e0a2-7ec5-b184-5d2d5384e533" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_019d726d-e0a2-76db-b542-41edb96246b1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue_019d726d-e0a2-7541-89ca-30a221886a9c" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems_019d726d-e0a2-76db-b542-41edb96246b1" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue_019d726d-e0a2-7541-89ca-30a221886a9c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/PartyinInterestTransactionsDetails" xlink:type="simple" xlink:href="spsc-20260629.xsd#PartyinInterestTransactionsDetails"/>
  <link:presentationLink xlink:role="http://www.spscommerce.com/role/PartyinInterestTransactionsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsAbstract_019d726d-e0a2-730f-a59a-01c8da5729a3" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable_019d726d-e0a2-7a12-b585-60be15e0e2e5" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsAbstract_019d726d-e0a2-730f-a59a-01c8da5729a3" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable_019d726d-e0a2-7a12-b585-60be15e0e2e5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7c94-8169-1225429e39d6" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable_019d726d-e0a2-7a12-b585-60be15e0e2e5" xlink:to="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7c94-8169-1225429e39d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7949-ba25-84a4865de217" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7c94-8169-1225429e39d6" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7949-ba25-84a4865de217" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember_019d726d-e0a2-770b-9cc3-c9fcce3f261e" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7949-ba25-84a4865de217" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember_019d726d-e0a2-770b-9cc3-c9fcce3f261e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7a39-af94-d7cb1a803a5d" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable_019d726d-e0a2-7a12-b585-60be15e0e2e5" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7a39-af94-d7cb1a803a5d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-7153-91f4-a8f6fdd93522" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7a39-af94-d7cb1a803a5d" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-7153-91f4-a8f6fdd93522" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-74ab-8c1f-ad725f874ee7" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-7153-91f4-a8f6fdd93522" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-74ab-8c1f-ad725f874ee7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems_019d726d-e0a2-7c70-9b53-2e7c7ab7fb2e" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable_019d726d-e0a2-7a12-b585-60be15e0e2e5" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems_019d726d-e0a2-7c70-9b53-2e7c7ab7fb2e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentNumberOfShares_019d726d-e0a2-7469-968c-2475accef424" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentNumberOfShares"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems_019d726d-e0a2-7c70-9b53-2e7c7ab7fb2e" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentNumberOfShares_019d726d-e0a2-7469-968c-2475accef424" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue_019d726d-e0a2-7d94-b85a-fc9795181d7b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems_019d726d-e0a2-7c70-9b53-2e7c7ab7fb2e" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue_019d726d-e0a2-7d94-b85a-fc9795181d7b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails" xlink:type="simple" xlink:href="spsc-20260629.xsd#Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails"/>
  <link:presentationLink xlink:role="http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentAbstract_019d726d-e0a2-7c97-8f8b-2aff51042d71" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-797a-992e-d511619ea42f" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentAbstract_019d726d-e0a2-7c97-8f8b-2aff51042d71" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-797a-992e-d511619ea42f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LegalEntityAxis_019d726d-e0a2-7fe7-b5a3-d3b5ffb6c153" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_LegalEntityAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-797a-992e-d511619ea42f" xlink:to="loc_dei_LegalEntityAxis_019d726d-e0a2-7fe7-b5a3-d3b5ffb6c153" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityDomain_019d726d-e0a2-73bf-b8e5-c50230a27854" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_LegalEntityAxis_019d726d-e0a2-7fe7-b5a3-d3b5ffb6c153" xlink:to="loc_dei_EntityDomain_019d726d-e0a2-73bf-b8e5-c50230a27854" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBP001Member_019d726d-e0a2-7b53-b0da-c59760be5292" xlink:href="spsc-20260629.xsd#spsc_EBP001Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_EntityDomain_019d726d-e0a2-73bf-b8e5-c50230a27854" xlink:to="loc_spsc_EBP001Member_019d726d-e0a2-7b53-b0da-c59760be5292" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_019d726d-e0a2-70cd-ac6f-26344655d436" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-797a-992e-d511619ea42f" xlink:to="loc_srt_RangeAxis_019d726d-e0a2-70cd-ac6f-26344655d436" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_019d726d-e0a2-7979-80f4-a0155634f758" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_019d726d-e0a2-70cd-ac6f-26344655d436" xlink:to="loc_srt_RangeMember_019d726d-e0a2-7979-80f4-a0155634f758" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_019d726d-e0a2-73af-ab3e-4a781940ed97" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MinimumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_019d726d-e0a2-7979-80f4-a0155634f758" xlink:to="loc_srt_MinimumMember_019d726d-e0a2-73af-ab3e-4a781940ed97" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_019d726d-e0a2-744b-bcc9-1f6c4475f783" xlink:href="https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd#srt_MaximumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_019d726d-e0a2-7979-80f4-a0155634f758" xlink:to="loc_srt_MaximumMember_019d726d-e0a2-744b-bcc9-1f6c4475f783" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7908-b415-acb2b977b778" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-797a-992e-d511619ea42f" xlink:to="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7908-b415-acb2b977b778" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7941-8ec0-ea496f5f3281" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentTypeCategorizationMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeAxis_019d726d-e0a2-7908-b415-acb2b977b778" xlink:to="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7941-8ec0-ea496f5f3281" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember_019d726d-e0a2-7e0e-b060-2eafdc1bd4f0" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7941-8ec0-ea496f5f3281" xlink:to="loc_us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember_019d726d-e0a2-7e0e-b060-2eafdc1bd4f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MutualFundMember_019d726d-e0a2-7660-ae8a-d05930236719" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_MutualFundMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InvestmentTypeCategorizationMember_019d726d-e0a2-7941-8ec0-ea496f5f3281" xlink:to="loc_us-gaap_MutualFundMember_019d726d-e0a2-7660-ae8a-d05930236719" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InvestmentIdentifierAxis_019d726d-e0a2-7109-810d-66a631697e77" xlink:href="https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd#us-gaap_InvestmentIdentifierAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-797a-992e-d511619ea42f" xlink:to="loc_us-gaap_InvestmentIdentifierAxis_019d726d-e0a2-7109-810d-66a631697e77" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable_019d726d-e0a2-797a-992e-d511619ea42f" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber_019d726d-e0a2-730d-b7f5-cca54f5ac4cf" xlink:href="https://xbrl.sec.gov/dei/2026/dei-2026.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_dei_EntityTaxIdentificationNumber_019d726d-e0a2-730d-b7f5-cca54f5ac4cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanPlanNumber_019d726d-e0a2-7f06-a91a-3a53ad8cfb3b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanPlanNumber"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanPlanNumber_019d726d-e0a2-7f06-a91a-3a53ad8cfb3b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue_019d726d-e0a2-7707-bf94-8829b34f4c61" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue_019d726d-e0a2-7707-bf94-8829b34f4c61" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate_019d726d-e0a2-7e80-b555-586ba3fae2ae" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate_019d726d-e0a2-7e80-b555-586ba3fae2ae" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution_019d726d-e0a2-7b0a-9c73-b94dec9b3d9b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution_019d726d-e0a2-7b0a-9c73-b94dec9b3d9b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_spsc_EBPAssetHeldForInvestmentParticipantLoanCost_019d726d-e0a2-7b18-84f6-579b2c48ecc1" xlink:href="spsc-20260629.xsd#spsc_EBPAssetHeldForInvestmentParticipantLoanCost"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_spsc_EBPAssetHeldForInvestmentParticipantLoanCost_019d726d-e0a2-7b18-84f6-579b2c48ecc1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment_019d726d-e0a2-7fc5-bb6c-9f36937d5d2b" xlink:href="https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd#us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems_019d726d-e0a2-703d-a1d8-dd1ac20d3e03" xlink:to="loc_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment_019d726d-e0a2-7fc5-bb6c-9f36937d5d2b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>GRAPHIC
<SEQUENCE>8
<FILENAME>spsc-20260629_g1.jpg
<TEXT>
begin 644 spsc-20260629_g1.jpg
M_]C_X  02D9)1@ ! 0$ 2 !(  #_X0+F17AI9@  34T *@    @ ! $.  (
M   )   !2H=I  0    !   !5)R;  $    2   "S.H<  <   $,    /@
M   <Z@    $
M
M
M
M
M
M;6%R:RUB;'4    %D ,  @   !0   *BD 0  @   !0   *VDI$  @    ,P
M,   DI(  @    ,P,   ZAP !P   0P   &6     !SJ     0
M
M
M
M
M
M                                       R,#(S.C$R.C(W(#$P.C$Q
M.C0Q #(P,C,Z,3(Z,C<@,3 Z,3$Z-#$   !M &$ <@!K "T 8@!L '4   #_
MX03':'1T<#HO+VYS+F%D;V)E+F-O;2]X87 O,2XP+P \/WAP86-K970@8F5G
M:6X])^^[OR<@:60])U<U33!-<$-E:&E(>G)E4WI.5&-Z:V,Y9"<_/@T*/'@Z
M>&UP;65T82!X;6QN<SIX/2)A9&]B93IN<SIM971A+R(^/')D9CI21$8@>&UL
M;G,Z<F1F/2)H='1P.B\O=W=W+G<S+F]R9R\Q.3DY+S R+S(R+7)D9BUS>6YT
M87@M;G,C(CX\<F1F.D1E<V-R:7!T:6]N(')D9CIA8F]U=#TB=75I9#IF868U
M8F1D-2UB83-D+3$Q9&$M860S,2UD,S-D-S4Q.#)F,6(B('AM;&YS.GAM<#TB
M:'1T<#HO+VYS+F%D;V)E+F-O;2]X87 O,2XP+R(^/'AM<#I#<F5A=&5$871E
M/C(P,C,M,3(M,C=4,3 Z,3$Z-#$\+WAM<#I#<F5A=&5$871E/CPO<F1F.D1E
M<V-R:7!T:6]N/CQR9&8Z1&5S8W)I<'1I;VX@<F1F.F%B;W5T/2)U=6ED.F9A
M9C5B9&0U+6)A,V0M,3%D82UA9#,Q+60S,V0W-3$X,F8Q8B(@>&UL;G,Z9&,]
M(FAT=' Z+R]P=7)L+F]R9R]D8R]E;&5M96YT<R\Q+C$O(B\^/')D9CI$97-C
M<FEP=&EO;B!R9&8Z86)O=70](G5U:60Z9F%F-6)D9#4M8F$S9"TQ,61A+6%D
M,S$M9#,S9#<U,3@R9C%B(B!X;6QN<SID8STB:'1T<#HO+W!U<FPN;W)G+V1C
M+V5L96UE;G1S+S$N,2\B/CQD8SIT:71L93X\<F1F.D%L="!X;6QN<SIR9&8]
M(FAT=' Z+R]W=W<N=S,N;W)G+S$Y.3DO,#(O,C(M<F1F+7-Y;G1A>"UN<R,B
M/CQR9&8Z;&D@>&UL.FQA;F<](G@M9&5F875L="(^;6%R:RUB;'4\+W)D9CIL
M:3X\+W)D9CI!;'0^#0H)"0D\+V1C.G1I=&QE/CQD8SID97-C<FEP=&EO;CX\
M<F1F.D%L="!X;6QN<SIR9&8](FAT=' Z+R]W=W<N=S,N;W)G+S$Y.3DO,#(O
M,C(M<F1F+7-Y;G1A>"UN<R,B/CQR9&8Z;&D@>&UL.FQA;F<](G@M9&5F875L
M="(^;6%R:RUB;'4\+W)D9CIL:3X\+W)D9CI!;'0^#0H)"0D\+V1C.F1E<V-R
M:7!T:6]N/CPO<F1F.D1E<V-R:7!T:6]N/CPO<F1F.E)$1CX\+W@Z>&UP;65T
M83X-"B @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @
M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @
M(" @(" @(" @(" @(" *(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @
M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @
M(" @(" @(" @(" @(" @(" @(" @(" @( H@(" @(" @(" @(" @(" @(" @
M(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" @(" \/WAP86-K970@
M96YD/2=W)S\^_]L 0P # @(# @(# P,#! ,#! 4(!04$! 4*!P<&" P*# P+
M"@L+#0X2$ T.$0X+"Q 6$!$3%!45%0P/%Q@6%!@2%!44_]L 0P$#! 0%! 4)
M!04)% T+#104%!04%!04%!04%!04%!04%!04%!04%!04%!04%!04%!04%!04
M%!04%!04%!04%!04_\  $0@"T +N P$B  (1 0,1 ?_$ !\   $% 0$! 0$!
M           ! @,$!08'" D*"__$ +40  (! P,"! ,%!00$   !?0$" P $
M$042(3%!!A-180<B<10R@9&A""-"L<$54M'P)#-B<H()"A87&!D:)28G*"DJ
M-#4V-S@Y.D-$149'2$E*4U155E=865IC9&5F9VAI:G-T=79W>'EZ@X2%AH>(
MB8J2DY25EI>8F9JBHZ2EIJ>HJ:JRL[2UMK>XN;K"P\3%QL?(R<K2T]35UM?8
MV=KAXN/DY>;GZ.GJ\?+S]/7V]_CY^O_$ !\!  ,! 0$! 0$! 0$        !
M @,$!08'" D*"__$ +41  (! @0$ P0'!00$  $"=P ! @,1! 4A,08205$'
M87$3(C*!"!1"D:&QP0DC,U+P%6)RT0H6)#3A)?$7&!D:)B<H*2HU-C<X.3I#
M1$5&1TA)2E-455976%E:8V1E9F=H:6IS='5V=WAY>H*#A(6&AXB)BI*3E)66
MEYB9FJ*CI*6FIZBIJK*SM+6VM[BYNL+#Q,7&Q\C)RM+3U-76U]C9VN+CY.7F
MY^CIZO+S]/7V]_CY^O_:  P# 0 "$0,1 #\ _5.BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "B
MBB@ HHHH **** "BBB@ HHHH **2C- "T4E+0 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%)2%@JDDX Y)- #J*\\\6?'[P'X-\Q+WQ#;3W*G!MK'-Q)GT
M.S(4_P"\17COBC]N"VC+Q^'?#<DW]VXU*8(!_P!LTSG_ +Z%>UA<ES#&:TJ3
MMW>B_&Q\OC^)\GRVZQ&(C==%[S^Z-[?,^I*CN+J*SA::>5((E&6DD8*H^I-?
M OB/]J7XB>(MZKK":5 W_++38%CQ]'.7'_?5>:ZOX@U3Q!-YVJ:E>:E+U\R\
MG>5OS8FOJ,/P;B):UZJCZ:_Y'P.,\3,%3TPE"4_5J*_]N?Y'Z&:Y\=O 'AXD
M7GBO3BRG!6UD-PP/H1&&-<#K'[9O@;3]RV5MJNJ/V:*!8T/U+L"/RKXBHKZ"
MCPA@8:U)2E\TE^"O^)\=B?$C-JNE&$(+T;?XNWX'U1JO[<DA9ETWPDJKGB2Z
MO2<\_P!U4&/S[UR.I?MG>.KO(MK71[%>WEV[LWYLY'Z5X+17L4^'\LI;44_6
M[_-GS-?C+/L1\6):]$H_DD>IWW[4'Q+OL@^)&@7^[!:0)^H3/ZU@WGQL\?7W
M^L\8:PO_ %QO'B_]!(KBJ2O1AE^#I_!1BO\ MU?Y'BU,XS.M_$Q,WZSE_F=
M_P 0/%$A4OXDU=BK;@3?RG!]?O=:^KOV3_C1JWCE=0\-Z_<M?7UC +FWO)#F
M22+<%97/\1!9,'J=QSTKXXM;*XOI!';02W$A( 2)"QYX' KZ_P#V2/@]JW@X
MZCXFURTDT^YO(!:VMK,NV41%@S,Z]5R53 //!]J^=XDIX.&7S]HDI?9VO>_3
M]?(^UX'JYG4SBFZ,I.&O/NXVL]^F^WF?25+117XL?U$%%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M44 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!145Q<16<$DT\J0PQJ6>21@JJ!U))Z"O$OB!^UOX0\)&2VTC?XFOUXQ:,%MP
M?>4@Y_X"&'N*[<+@L1C9\F'@Y/\ K=[(\O,,TP65T_:XVJH+SW?HMW\D>XUP
M_CCXU>#OA[OCU?6H%O%_Y<K?]]/GT*KG;_P+ KXR\>_M)^./'GF0OJ1T?3VR
M/LFEYB!'^T^=S<=><>U>6LQ9B2<D\FOO<%P?)VEC:EO*/^;_ ,OF?D&:^)<(
MWIY91O\ WI[?**U^]KT/J#QI^VS>3^9#X6T..U3H+O4VWO\ 41J< _5F^E>$
M^+OBIXL\=,W]MZ]>7L3'/V??LA'TC7"_I7*T5]UA,IP6!_@4TGWW?WL_)LRX
MBS3-;K%5VX]EI'[E9?>%%%.CB>:18XT:21CA549)/H!7K'SFK&T5ZAX._9K\
M?>,O+DCT9M*M&Q_I.J'R%P>^T@N1]%->V>$_V)-+M]DOB/7KB^?J;?3T$*#V
M+-N)'T"UX6*SW+\'I4JIOLM7^'ZGUV7\)9SF5I4J#47UE[J_'5_),^0ZZ#P[
M\/O$WB[:=&T'4-10G'FP6[&,?5\;1^)K[_\ "WP1\#>#PATWPW9"9>EQ<IY\
MN?4,^2/PQ7<*H50 , < "ODL1QE%:8:C?SD_T7^9^BX+PQF[/&XA+RBK_B[?
M^DGPMX?_ &/_ !_K 5KR*PT5#R1>7(=L>PC#?J17HVA_L.V<>UM9\43S9'S1
M6-LL>/H[%L_]\BOJ2DKYROQ1F=;X9J*\E_G=GV^%X!R+#6YZ;J/^])_DK+\#
MQO1OV2OAUI>TSZ==ZHR_Q7EX_P"HCVC]*[;2?A#X)T/!LO"FDQ.O21K1'<<Y
M^\P)_6NOHKPJN8XRO_$K2?S9]9A\ERS"?P,-"/I%7^^UR*WMH;2(101)#&O1
M(U"@?@*DI:*\_?5GL))*R"BBB@84444 %%%% !1110 4444 %%%% !1110 4
M444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M !1110 4444 %%%% !1110 4444 %%%% !125X]\5/VG/#'PZ\VRLW&OZVOR
M_9;5QY<3?]-).0#_ +(R?4#K77A<)7QE3V6'@Y/^M^QYV.S'"991=?&5%"/G
M^BW;\D>NW%S%9PR33RI##&I9Y)&"JH'4DGH*\#^)7[7WA[PPTUEX:B_X2+4%
MROVC.VT0^N[J_P#P'@_WJ^8?B/\ &CQ5\4;AO[8U I8[MT>G6N8[=/3Y<_,?
M=B3S7#5^EY;PC3IVJ8Z7,_Y5M\WN_P /F?A>=^(U:M>CE4>2/\TM9?);+YW?
MH=CX^^+WBOXE7#-K>JRRVV[<MC"?+MT],(."1ZG)]ZXZBBOOZ5&G0@J=**BE
MT6A^.XC$UL74=;$3<I/JW=A117>_#KX(>+?B=(CZ3IS1:>3AM1N\QVX]<-C+
M?1032K5Z6'@ZE:2C%=65A<)B,;55'#0<Y/HE<X*NG\%_#/Q/\0KCRM T>XOU
M!VM.!LA0_P"U(V%'TSFOKGX=_LB^%/"IBNM<9O$NH*0VV==ELI]HP?F_X$2#
MZ"O<K2S@L;6.WMH([:WC7:D4*A44#H !P!7P6/XOI4[PP4.9]WHONW?X'Z]E
M'AMB*UJF9U.1?RQUE\WLOES'RWX%_8G11%<>+=9+'AC8Z6,#Z&5A^>%^AKZ!
M\&_"_P *^ 8E70M$M;&0#!N F^9OK(V6/TSBNHI:_/\ &9MC<?\ QZCMV6B^
MY?J?L>6<.97E"3PM%*7\SUE][V^5D)1BEHKR#Z0**** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHI* "N;\=?$30?AOI#:CKU^EK&<^5"/FEF8?PHG5CT]AGD@5Y+\9OVJM+
M\$M/I/AD0ZUK:Y22XW;K:V;N"1]]AZ X'<\8KX[\3^*]7\9ZO+JFM7\VHWTG
M668YP/[JCHJCL  !7VV4\,UL;:MB?<I_B_\ +U?W'Y7Q'QWA<KYL-@;5*O?[
M,?5]7Y+YOH>K?%K]J3Q%\0#-8:09/#^AME3'"_[^=?\ IHXZ C^%>.<$M7BE
M%%?K.%P=#!4_98>/*OZW[G\[9AF6+S2LZ^,J.<O/IY);)>@445=T;1;_ ,1:
ME#I^F6<U_>S';'!;H7=OP';W[5U2DHIRD[)'G1C*I)1BKME*NP^'OPF\3_$Z
M\\G0].:6!6VRWLWR6\7^\_K[#)]J^A/A-^QW!:^3J7CB07$OWETBV?Y%_P"N
MKC[W^ZO'N>E?36FZ;::/8PV=A:PV5I"NV."W0(B#T ' KX'-.*Z-"]+!+GEW
M^S\N_P"7J?L.0^'F(Q=J^:-TX?RKXGZ](_B_)'BGPQ_9-\,>#?*O-=V^)=4&
M#B=,6T9_V8_XOJ^?H*]RCC2&-8T5410%55&  .@ IU+7YCBL;B,=/VF(FY/^
MMELC]YR_*\'E5+V.#IJ"\MWZO=_,2EHHKB/4"BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BDKC_B9\5-"^%>AF_UBX_>OD6]E%@S7#>BCT]6/ _$ ZTJ52O-4J4;R
M>R1SXC$4<)2E7KR481U;>QO^(/$6F^%=)N-4U:\BL+"W7=)/,< >WJ2>P')[
M5\9_&S]J34_'7VC1_#9FT?03E'F!VW%TO^T1]Q#_ '1R1U/.*\_^*WQBUWXM
M:Q]IU*7R+")B;73H6/E0CU_VFQU8_H.*X2OUW)N&J6#M7Q:YJG;HO\W_ $NY
M_.'$_'-?,G+"Y>W"CLWM*7^2\MWU["T445]R?DP44^WMY;J>.&"-YII&")'&
MI9F8\  #J:^JO@?^R8%$&N>.8<GAX=%)X]C,?_9!^/=:\O,,RP^6TO:5Y>BZ
MOT/?R?(\;GE?V.$CZM[1]7^F[/)/A#^S[XA^*TT=TJ'2] #8DU*=>'QU$2_Q
MGWZ#N<\5]K?#GX4>'/A=IOV71+)4F=<37LV&GG_WF]/]D8 ]*ZRWMXK6".&&
M-(88U"I'&H554<  #H*DK\;S7/,3FCY6^6G_ "K]>_Y>1_3?#_">!R&*G%<]
M7K-_^VKHOQ[L2EHHKYP^V"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHI* %HJ"[O;?3[=Y[J>.V@7EI)G"
M*/J37G7B3]H[X>^&-RS>(H+Z9?\ EEIP-P3[;E!4?B1731PM?$NU&#EZ)LX<
M5C\)@8\V*JQ@O[S2_,],I*^8?$G[;^G0[TT#PY<71Z";4)EB ]]B;L_F*\J\
M1_M9_$+7BRV]_;:+"W!33[=<X_WGW,#[@BOI,/POF5?645!>;_179\/C./LD
MPEU";J/^ZOU=E]S9]X331V\;22R+%&HRSN0 /J37&ZU\:O OAYF6]\5:8KJ<
M-'#.)G'U5,G]*_/'7/%6M>)YO-U?5KW5),Y#7=P\N/IN)Q677TE#@R"UKUF_
M16_%W_(^'Q7B?5;:PF&2\Y._X*WYGW9JG[7WP[T_=Y%UJ&I8Z?9;-ESUZ>85
M_P FN:O/VWO#<;?Z)X>U69>?]<T49]NC-7QQ17LT^%,MA\2E+U?^5CYJMXAY
MY4?NRC'TC_FV?64_[<]NJCR?!LLC9Y#ZB%'Z1&H/^&ZO^I)_\JW_ -HKY4HK
MJ7#.5?\ /G_R:7^9Y[XZXA?_ #$?^20_^1/KJ']N33&;$OA2[1<=4O%8Y^A4
M5M6'[:W@V?:+K2M:M2?XEBB=1Q_UT!_2OBNBL9<+97+:#7S?ZW.FGX@9]!^]
M54O6,?T2/O\ TG]J3X;ZH0IUYK.0_P -U:RI_P"/;2OZUWFA^.O#GB; TG7M
M-U)S_!:W22-^*@Y%?F)1DCFO+K<&X67\&K*/K9_Y'O8;Q-Q\/]YH0DO*\?\
MY+\C]5Z*_-CPW\8?&OA%D_LOQ+J$,:]())3-$/\ @#Y7]*]>\)_MK>(=/*1^
M(-'L]7B'!FMF-O+]3]Y3] !]:^=Q/"..I:T6IK[G^.GXGVV!\1LJQ#4<3&5)
M^G,OO6O_ )*?95%>2>"_VH? 7C I$^IG0[MA_J=541#\),E/S8'VKU>&>.XA
M26)UEC<95T.01Z@BOD<1A:^$ERUX.+\T?HV#S#"9A#VF$JQFO)W^_M\R2BBB
MN4] **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BB
MB@ HHHH **** "BBB@ HHHH **** "DHKQ+X^?M&6?PSAET?1S'?>)W7E?O1
MV8(X9_5NA"?B>, ]F$P=;'551H1O)_AYOR/,S',L+E6'EBL7/EBOO;[)=6S;
M^-GQXTKX2::84\N_\13IFVL W">CRX.57VZMT'<CX2\6^+]7\<:Y/JVM7DE[
M>S'EF/RHO95'15'H*I:MJU[KVI7&H:C=27E[<.9)9YFW,['N352OVW*,EHY5
M3TUJ/>7Z+LOSZG\K<2<48KB"MK[M)?#']7W?Y=/,HHHKZ(^+"M;PKX3U;QMK
M<&DZ+927U],?ECC'"CNS'HJC/)/%;'PS^%^M_%3Q FF:1 1&N&N;R0'RK=/[
MS'U.#A>I_/'WK\+OA/H?PHT,6.E1>9<R &ZOY0/-N&'<GLHR<*.![G)/RV<Y
M[2RN/)'WJCV7;S?^77\3[_ACA+$9_/VM3W*"WEU?E'_/9>;T.6^"?[/.D?"J
MUCOKL1ZIXD9?GO&7*09ZK$#T_P![J?8<5Z[12U^+XK%5L95=:O*\G_6GD?U#
M@,OPV64(X;"048+^KON_-A1117*>@%%%% !1110 4444 %%%% !1110 4444
M %%%% !1110 4444 %%%% !1124 +15+5-:T_0[8W&I7UMI]N.LMU,L:?FQ
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
M)/Q!US8US9VFBQ-SNOKD;L?[L>XY]CBN'$8["X7^/44?5Z_=N>M@\IS#,/\
M=:$I^:3M]^QXQ17UWX;_ &(=+@VOKWB.ZO#U,.GPK"![;FW$C\!7JGAO]G;X
M>>&=KV_ANVNY5_Y:Z@6N23ZX<E0?H!7S.(XLR^CI3O-^2LOQM^1]U@_#O.<1
M9U^6DO-W?W1O^:/@'1?#>K^))O)TG2[S4Y<X*V=N\I'_ 'R#7I_AO]E'XA^(
M-C3:=!HT+=)-1G"G_OA=S#\0*^\K6T@L;=(+>&.WA086.)0JCZ 5+7S.(XQQ
M,]*%-1]=7^A]W@_#/ T[/%UY3?9)17ZO\4?+GAS]A^TCV/KWB::?^]#I\ CQ
M]'<MG_OD5ZIX;_9L^'GAG:T?AZ'4)EZRZDQN,_56^3\EKU"DKYG$9UF.*_B5
MG;RT_*Q]W@^%LEP%G1PT;]W[S_\ )K_@5]/TVTTNU6WLK6&TMU^[%!&$0?0
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
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** $KR/X]_
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
ME7W1LATTSW$C22NTDC'+.YR2?4FFT45[!\S=O5A1113$%%%% !1110 4444
M%%%% &[X+\<:S\/]=AU;1+QK2ZCX8#E)5[HZ_P 2GT_$8.#7WW\'?C%I7Q=\
M/BZM2MKJ=N M[8,V6B8]QZH><'\#R*_.>ND^'?CS4OAMXKL]<TQ\20MB6$G"
M3QG[T;>Q'Y$ ]17S&=Y+3S2ES15JJV??R?E^1][PKQ16R'$*%1MT)/WEV_O+
MS[]U\FOTSI:Q_"7BFP\:^&]/UO3)?-LKV(2H3U7L5/N""#[@UKU^&RC*G)PD
MK-']7TZD*T(U*;O%JZ?=,6BBBI- HHHH **** "BBB@ HHHH **** "BBB@
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
M!NAW&[5+I-FH3QG_ (]XB.8\_P!]AU]%/OQ3^-O[6EM9PSZ-X'F%S=M\DNL
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
M7QW%:OEK?:2/TSP\ERYY%=XR_1GT-1117XJ?U(%%%% !1110 4444 %%%(:
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
M+OMB!]1&N%!^@KF:**^DITX48\E.*2[+0^'K5ZN(FZE:;E)]6VW]["BBBM3
M**** "BBB@ HHHH ***Z7X<>![OXC>,],T"T.QKJ3][-C(BB'+O^"@X]3@=Z
MSJ5(T8.I-V25V;T*-3$U8T:2O*322[MZ(]"_9X^ <OQ4U)M3U820>&;1]KLI
MVM=2#!\M3V XW,/7 Y.1]S:5I-GH>G6]AI]K%9V5NFR*"%0J(OH *K^&_#MA
MX3T*QTC3(!;V-G$(HHQZ#N?4DY)/<DFM.OP;-\VJYI7<F[07PK]?5G]=<-\.
MX?A_"J$5>K+XI=WV7DNGW[A1117@GUX4444 %%%% !1110 4444 %%%% !11
M10 4444 %%%% !1110 4444 %)2TAH _,[XGS_:OB5XMF VB35[M\>F9G-<S
M5S6KP:AK%_=#&)[B248Z?,Q/]:IU_2M&/)3C'LD?PQB:GM:\ZG=M_>PHHHK8
MY@KZ+_8DT_SO'^NWN,B#3/*^A>5#_P"R&OG2OK/]AO3?+T_Q;J)7_62V]NK?
M[HD8C_Q]:^;XBJ>SRNL^]E][1]QP31]MG^&79M_=%O\ ,^I*6DI:_"#^N KE
M_BCI_P#:GPU\56@7<TNEW*J.?O>4VW]<5U%0W5NEY;2V\HS'*A1A[$8-:TI^
MSJ1GV:?W'/B*7MZ,Z3^TFOO5C\K:*FO+5[&\GMI!B2&1HV^H.#_*H:_I5.ZN
MC^&&G%V84444Q!5C3;Z72]0M;R$[9K>59D/HRD$?J*KT4FDU9E1DXM26Z/U0
MT^^BU+3[:\@.Z&XB65#ZJP!'Z&K%><?L\>(/^$D^#?ABX+;I(+;[&_J#$QC&
M?P4'\:]'K^;L31>'KSHO[+:^YG]PX'$K&86EB8[3BI?>KA1117,=H4444 9'
MBW74\+^%]7UB3!6PM);G![[$+8_'&*_,*XN)+NXEGF=I9I6+N[<EF)R2?QK[
M^_:AU0Z7\$O$)0XDN/)MU_X%*F[_ ,=W5^?M?K/!M%1PU6MU<K?<O^"?SKXF
MXISQU#"](Q<OG)V_]M"BBDK]"/QD6BI;6UGOITAMX9)YG.%CB4LQ/L!UKT;P
MS^SC\0O%.QH?#TUA W_+;4F%N /7:WS'\ :YJV)H89<U::BO-I'=A<!B\=+D
MPM*4W_=3?Y'FE%?4WAC]B"9MDGB+Q(D?]ZWTR$M_Y$?'_H%>M^%_V8?AYX9V
M-_8O]K3K_P M=4D,V?JG"?\ CM?,8GBK+J&D&YOR7ZNWZGWF!\/\ZQ5G5BJ2
M_O/7[E?\;'P9I&A:EX@NA;:7I]UJ5Q_SQM(6E;\E!->I>&?V4_B%XBV/-IT.
MBP-_RTU*<*<?[B[F'X@5]W:=IEGI-JMM8VD%E;K]V&WC6-!] !BK-?+8GC'$
M3TP]-1]=7^GZGZ!@?#/!4[/&5Y3?:*45^K_(^8O#'[$6F6^R3Q!XBN;QNIAT
M^)85^FYMQ(_ 5ZYX7^ /@'PGL:S\-VDTR\^?? W+Y]1O) /T KT&EKY;$YQC
M\5_%K.W9:+[E8^_P/#.3Y?9X?#1NNK7,_OE=_<,CB2&-4C5411A548 'IBG4
MM%>,?3B4M%% !1110 4444 %>+?M=:I_9_P7O;?./MUW;VX]\/YO_M.O::^9
MOVXM5\GPSX8TW=Q<7DMQM_ZYH%S_ .1?UKW<CI>VS*A'SO\ =K^A\EQ97^KY
M'BI]XV_\"]W]3Y HHHK]^/X\"BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@ HHHH **** "BBB@ KZP_8C\(H+7Q!XGE3,K.NGP,1]T !Y/SS'^5?)]?<'
M[&UY#<?".6&/:)8-2F64#J251@3^! _"ODN**LZ>6R4?M-)^G](_1N *%.MG
ML'4^S&37K:WZW^1[Q124M?B)_504444 %%)10 M%<]JGQ"\+Z&Q74/$FDV3
M9*7%[&C?D6R>E84WQY^'MN^UO%VF$XS^[EWC\P#75#"8BHKPIR?HF>?4S'!4
M7:I6C%^<DOU.^HKDK'XM>"M2D$=MXLT660G 3[=$&/T!;)KJ+>XBNH5EAD2:
M)AE9(V#*?H1652C4I?Q(M>JL=%'$T<1K1FI>C3_(EHI*6LCH"BBB@ HHHH *
M*** "BBB@ HHHH **** "LKQ5J TGPQK%\3M%K9S3[O3:A;/Z5JUY_\ '[5/
M['^#?BV?=MWV+6^3_P!-2(\?^/UTX6G[:O3I_P S2^]G#CZWU;"5J_\ +&3^
MY-GYST445_21_#H4444 %?<G['.D?V?\(3<E<&_U":<-ZA0L?Y9C/YFOANOT
M>^!NB?\ "/\ PB\*6938WV%)V7'1I,R'\<N:^%XPK<F!A3_FE^2?_ /UKPVP
M_M,UJ5GM"#^]M+\KG<TM%%?CQ_2P4E+24 ?FS\8])_L3XJ^++3&U5U*9T7'1
M7<NH_)A7'5[1^UUHO]E?&:\G"[5U"T@NACOA?*/ZQ&O%Z_HK+:OM\%1J=XK\
MM3^*L\P_U3,\30_EG*WI=V_ ****]$\0**** /L/]B/Q)]J\)Z_H;M\]E=K=
M(#UVRK@@>P,9_P"^J^E*^%?V0?$G]B?%R*Q=\1:K:RVV">-Z@2*?K\A'_ J^
MZJ_#^)\/]7S*;6TTI?H_Q3/ZNX#QOUS(Z<6]:;<7\M5^#0M%%%?*'Z$%%%%
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
MKO\  ^%K>WENIDA@B>:5SA8XU+,Q] !7HWA3]G/X@>+MC0Z!-I]NW_+QJ?\
MHZ@>NUOF(^BFOOC0/">B>%83%HVDV6EQD8(M+=8]WUP.?QK5KY?$\959:8:D
MEYMW_!6_-GWV!\,J$+2QV(<O**M^+O\ DCYB\%_L3Z?:M'/XIUN2^?J;33E\
MN//H9&^9A] IKZ \)>!/#_@6R^RZ#I%MID1&&,*?._\ O.<LWXDUNTM?&XS-
M,9C_ />*C:[;+[EH?IV6Y!EF4+_8Z*B^^\OO=W^@E+117E'T!\,_MC6K6_Q@
M\PYQ/IT$@R,<9=>/7E:\-KZB_;B\/LFJ>&=<5,I)#+92/Z%6#H#]=[_D:^7:
M_?,AJJKEE%KHK?=H?R!Q?0EA\]Q47UE?_P "2?ZA1117OGQP4444 %%%% !1
M110 4444 %%%% !1110 4444 %%%% &YX)\8ZCX!\36.N:7+Y=W:ONVG[LBG
MAD;U!&0?\:_2'P7XLLO''A;3==TYB;2]A$BJ>J'HR'W5@0?<5^85?57[%/CQ
M_,UCPA<RDIM^WV@8].0LJCZY0X]F/K7PO%>7+$8;ZW!>]#?SC_P-_O/UOP]S
MJ6#QW]G5'^[J[>4EM]ZT];'U;2TE+7X\?TJ%%%% !1110 4444 %%%% "5\&
M?M9^(/[<^,M_"K;X]-MX;-3VSM\QOR:1A^%?>$TR6\3RR,$C12S,W0 <DU^8
M7C#7F\4>+-9UA\YO[R6YP>P9RP'X X_"OT#@[#\^*J5WM%6^;?\ DF?CGB9C
M/98"CA4]9RO\HK_-HR****_6S^<@HHHH ^H_V'_#?F:AXEU]TXCBCL8F_P!X
M[W'_ (['^=?6M>1_LM>%O^$9^#NE.Z;+C4G?4)!_OG"'\8U0_C7K=?@>>XCZ
MUF-6:V3LOEH?V#PE@OJ&28>DUJUS/_M[7\$TA:***\ ^O"BBB@"EK&EPZWI-
M]IUR-UM>0/;RKZJZE2/R)K\P=;TF?0=9O],NEVW-G/);RCT9&*G]17ZE5\(?
MM:>$?^$;^+5S>QH5MM7A2\4XXW_<D'URNX_[]?H/!V*Y,14PS^TKKU7_  '^
M!^->)>7^UP5'&Q6L'9^DO\FOQ/%Z***_6C^= HHHH *^E_V)_&0L?$6L^&9I
M,1WT0N[<'_GI'PP'N58'_@%?-%=#\/?%LO@7QMHVO0Y)L;E9'5>K1GAU_%"P
M_&O*S3!_7L'4P_5K3U6J_$^AX?S+^R<SH8OI%Z_X7H_P9^F]%0V=U#?VD%S;
MR++!,BR1R+T96&01]0:FK^>M5HS^SDTU=!1112&%%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% '$_&O5?[&^$OBVYSM/\ 9TT2GT:1
M=@/YL*_-VOO']KC5?[.^"^H09P;ZZM[<?@XD_E'7P=7Z_P 'TN7!3J=Y?DE_
MP3^;/$O$>TS2E17V8+[VW^B04445]X?D04444 %?0W[*_P %_#_Q'M=:U3Q'
M9R7UO:31PV\(E:-"VUF?=M()ZIQG\\U\\5]X_LCZ)_9/P9LK@C:VHW4]V<_[
MWEC](A7RO$N+GA,O;I2<92:5UH^_Y(_0N!<NI9CG$8UX*4(1E)IJZ[*Z?FT>
MD^&_ /AOPBH_L70[#36 QYEO;JLA^KXW'\36]2T5^(SJ3J2YIN[\S^J:5&G0
MCR4HJ*[)67X!1114&H4444 %%%% !1110!YM^T)X";XA?"[5+*WC,NH6N+VT
M4#):2,'Y1[LI=1[L*_/"OU7KX9_:B^#LG@/Q5)KVG0'^P-5E+_*/EMYSDM'[
M \LOXCM7Z3PCF48.6!J/?6/KU7ZKYGX=XCY'.K&&;4%?E7+/TZ/Y;/Y'AU%%
M%?J1^ !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %>A?L_:^?#O
MQC\+W ?:DUV+1_0B4&/G\6!_"O/:U_!LC0^+M#D0[76^@93Z$2+BN7%4U6P]
M2G+9IK[T>AEU:6&QE&M'>,HO[FC]0*6BBOYN/[@"BBB@ HHHH **** "BBB@
M#SO]H+Q1_P (G\(O$=VLFR>:W^QP^I:4[./<!F/X5^==?6/[;WBP):^'O#,3
M_-(S:A.N>P!2/\R9/^^17R=7[1PIA?89?[5[S;?R6B_7[S^7O$/'?6LX]A%Z
M4HI?-ZO\TOD%%%%?9GY@%:/AS1)_$OB#3=)MAFXOKF.VC]B[!<_3FLZO=/V/
M_!__  D'Q/;594W6VC6[39[>:^40'\"[?5*X,?B5@\+4Q#^ROQZ?B>QD^!>9
MYA1P:^W))^G5_)79]M:7IT&CZ;:6%JNRVM84@B7T15"J/R JU24M?SHVY.[/
M[6C%12C%:(****104444 %?/_P"V5X-_MOX=VNN11[KC1K@%V'7R9,*W_CPC
M/TS7T!67XFT&W\4^'M2T>['^C7UO);R>H#*1D>XSG\*]#+\4\%BZ>(7V7^'7
M\#QLYR]9IE];!O[<7;UW7W.Q^7=%7=<T>Y\/ZS?:7>)Y=W9SO;RKZ,K%3^HJ
ME7]$QDI)26S/XKE&4).,E9H****H@**** /NS]DWQ[_PEWPQBTV>3??:&XM&
M!ZF$C,1^F,J/^N=>UU^?_P"S/\0AX!^)UD+B7R],U0?8;G)^5=Q'EN?H^.>P
M9J_0"OPWB3 _4L?)Q7NS]Y?JOO\ PL?UCP3FW]J91",W[]+W7\OA?S7XIBT4
M45\L??A1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110!
M\S_MPZKY/A?PSIN?^/B\DN,>OEH%_P#:M?']?1_[;NJ^?XWT#3@V1;:>9\>A
MDD8?^TQ7SA7[KPW2]EE=+SN_O;_0_DKCBO[?/L1;:-E]T5?\;A1117TQ\(%%
M%% #HXVFD5$&YV(50.Y-?IOX!\-CP?X)T/1!@M8VD<#LO1G"C>?Q;)_&OST^
M$?A\^*/B=X9TT+O26_B:1?\ IFC;W_\ '5:OTIK\OXSKZT<.O-O\E^I^]^&.
M#7+B<8UVBOS?Z"T445^:'[J%%%% !1110 4444 %%%% "5F^(O#NG^+-%O-(
MU6V6[L+I/+EA?N.N0>Q!P01R" :TZ2JC*4)*479HB<(U(N$U=/1I]4? OQJ_
M9WUGX6W4M]9K)JOAICE+Q1EX,_PR@=/][H>.A.*\BK]5I(UE1D=0Z,,%6&01
MZ&O#?B+^R1X4\822W>CLWAK4'.3]F0/;L?>+(Q_P$@>QK].ROBR/*J6/6O\
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
MA/=U'7U'/8FOH>OP+'8*KE]>6'K+5?BNZ/["RG-,/G&$AC,,]'TZI]4_-?\
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
M_%>B/CNBBBOUP_G$**** "BBB@"YH^L7OA_5+74=.N9+.^MG$D4\1PR,._\
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
M[Z%W]FKXY7/Q4TN[TW60O]O:>BN\T:A5N8B<;]HX# X!QQR"/0>$_M1> /\
MA6OQ(L]=T;-C:ZH3>0&'Y?(N48%]OIR48>['TKJ_V)?!][_;6M^*)(VCL1:_
MV?$S# E=G1VQZ[=BY_WJ[#]MJTC?X<:+=$?OH]66)3_LM#*3^J+7E494LOXA
M=##?!/1KIJK_ (/[M4?08F.(SC@Q8O':U:?O1D]VE*U_FOOLF>Q_#7Q<OCSP
M'HFO *K7MLKRJO19!\L@'L'##\*Z:O$?V/[Y[KX-P1,21:WT\2Y]"0_\W->V
MU\+F-!8;&5:,=HR:7I?0_6<EQ<L=EN'Q,_BE"+?K;7\1:***\\]D**** "BB
MB@ HHHH **** "BBB@ HHHH **** "DI:* $KR_XH?L[^$_B=YMU-;_V5K+<
M_P!HV2@,Q_Z:+T?ZGYO<5ZC25TX?$UL)456A)QEY'#C,#ALPI.ABZ:G%]'_6
MC\UJ?G]\2/V:_&/P]:2X%I_;>E+R+W3U+[1_MQ_>7Z\CWKRFOU7KS?X@?L^^
M"OB&99[W2Q8ZB_)OM/(AE)]6XVL?=@37Z'@.,&K0QT+_ -Z/ZK_+[C\8SCPU
M4FZN55+?W9?I+_-?,_/"BOH7QM^QGXFT8R3>';VWU^V'(ADQ;W'TP3M/_?0^
ME>'^(/"FL^$[K[-K.EWFES]ENH6CW>X)'(]Q7WN$S'"8Y7P]12\NOW;GX_F&
M29CE4K8RBXKO:Z^]:?B95%%%>D>(%%%% !1110 4444 %%%% !1110 445U?
MAOX4^,/%^PZ3X<U"[B;I-Y)2+_OXV%_6LJE6G1CS5))+S=CHHX>MB9^SH0<G
MV2;?X'*45[]X;_8R\9:IM?5;S3]$B/56D,\H_!/E/_?5>I^&_P!BSPIII5]7
MU34-9D'5$*V\1^H&6_)J^>Q'$>6X?3VG,_[NOX[?B?9X/@C/,99^PY%WDTOP
M^+\#XNKH?#OP[\4>+=IT?0-0U!&Z2PV[&/\ %\;1^)K]!/#?P;\$>$]C:9X9
MT^&1/NS21>=*/H[Y;]:[( #@# KYG$<9K;#T?G)_HO\ ,^[P?AC+1XW$_**_
M5V_])/ASP[^QWXZU?8^H-I^B1G[PN)_-D ]EC##\V%>J>'/V)?#MGL?6M<U#
M4Y!R4M46WC/L<[F/X$5]'T5\UB.)LRQ&BGRK^ZK?CJ_Q/NL'P)D>#LW2=1]Y
M._X*R_ X3PW\"_ 7A4*;#PQ8M*O2:[0W#Y]0TA8@_3%=S'&D,:I&BHBC"JHP
M /04^BOG*M>KB'S5IN3\W<^UP^$P^#CR8>FH+M%)?D)12T5@=84444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !11368(I9B%4
M<DGH* %KS3XQ_';1/A+I[)*RW^NR+FWTV-OFYZ-(?X5_4]NY'G/QM_:PM/#_
M )^C>"Y([_4QE)=4P'@@/3]WVD;W^Z./O=!\@ZEJ5WK%]/>WUS+>7D[%Y9YG
M+N['N2>M??9+PS/$VKXU<L.BZOU[+\?0_'N)^/*6!4L)E;4ZFSEO&/IW?X+S
MV-KQWX^UKXC:]+JVMW;7$[<1QKQ'"O9$7L!^9ZDD\USM%%?K-.G"E!0IJR6R
M1_.U:M4Q%256M)RE+5MZMA1171>!?A_K?Q&UV+2=#LVN;AN9)&XBA3N[M_"/
MU/0 G HJ5(4H.I4=DMVPHT:F(J1I48N4I:)+5LRM&T6^\0ZI;:=IMK+>WURX
M2*"%<LQ_SWZ"OM[X"?LZ67PQMX]7UA8K_P 3R+D-C*68(P43U;DY;\!QDGHO
M@W\#=&^$>F9A"W^MS)BYU*1 &/\ L(/X4]NIQD]L>E5^19YQ'+&WP^%=J?5]
M9?Y+\^O8_I'A/@FGE?+C<P2E6Z+=0_SEY[+IW"EHHKX4_60HHHH *SO$6F_V
MUH&IZ<3C[7:RV_\ WTA7^M:-)51DXM26Z(G%5(N$MF?"G[)>M+X;^-$5G=#R
M7O[6:P(?C:^5D /OF+'U-?8'Q9_Y)7XS_P"P+>_^B'KY'_:4\!:A\+_BBOBC
M2M]O9:A<B_MKF,<070;<Z_7<-X[8;'8U]'^!?B%I?[0/PQU*QBNH['5+NPEL
MM0MEY>V:1"A=5)Y0YR#GV)R#7Z!G<%B98?-Z6M-\O-Y-/K^7JO,_'.%:LL#3
MQG#>(TJQ<N2^G,FNGY^C\F?-7[,/PF\/_%2^\01:]'<2)91PM%Y$QCY8N#GU
M^Z*SOC%\)I?@?XZL[M;)=7\,S3"6U6[!9' .6@E(QR!W[CD="!]2?!3X"P?!
MFZU::'6)-5-^D:%9+<1;-A8]F.<[OTKM_'7@G3/B%X8O-#U6+?:W"_*Z_?B<
M?==3V8'_  /!-.KQ)R9G*I";E0E96U717:[._P!Y.'X']KD4*56FJ>+BVT]'
M=W=E)JZ::MZ?@9_PK\7:!XT\$Z??>&XH;33E7ROL,2JGV5QUC*KP",_B"#WK
MQ3]M[Q#%%X;\.Z&&!GGNVO67NJQH4!/U,I_[Y-=%X'^$^G_LU_VEXEOO&<SZ
M,8"ES:2VP1)6_@Q\QR^<@ #)R17SMJU[K'[37QF06T;PQW3B*)2-PL[1#RS?
M0$L?5FP.HJ<IP-#^T98VC.]"G>7,[K6VVN[6]_\ ,TXAS;%K):>5XBDHXNM:
M/)%IZ77O*S:2ELEWOT1]1_LJ:*^D?!72'D38][+-=$8P<%RJG\553]"*]?JG
MH^DVV@Z39:;91^5:6<*00I_=15"@?D*N5\5C,1]:Q-2O_,V_O9^I99@_[/P5
M'";\D4ON6H4445QGI!1110 4444 %%%% !1110 4444 %%%% !1110 4444
M%%%% !1110 E07VGVNJ6KVU[;0W=NXPT,\8=&'N#P:L44TVG=":4E9K0\E\4
M_LN_#SQ,7<:0VCSMUETN4PX^B'*#_OFO*M?_ &'FW,^B>* 5_AAU"VQ^;H?_
M &6OJ^DKW,/GF8X72%9M>>OYW/DL;PGDF.;E5PT4^\?=_P#2;7^9\&ZU^R1\
M1=))\BPL]549^:SNT'Z2;"?RKC-2^#7CK2"?M/A+5P!U:*T>51_P)017Z2T5
M[]+C#&QTJ0C+[U^OZ'R&(\-,LJ:T:LX_<U^2?XGY;7F@ZGIN?M>G7=KMR3YT
M#)C'7J*H5^K%1SVL%U@30QS!>GF*&Q^=>A'C1_:P_P#Y-_\ :GC3\+U]C&??
M#_[8_*RI+>UGNF*P0R3,.T:EC^E?J4NEV<;!EM(%93D,L:@@^O2K55+C3MA_
M_)O_ +4F/A=_-C/_ "3_ .W/S)T_X<^*]48+9^&=8N23_P LK"5AZ<D+Q76Z
M/^S1\1]9VE/#<MK&>KWDT<./P9MWZ5^A%%<53C+%2_ATHKUN_P#(]2AX98"+
M_?UYR]++])'QKH'[$OB6\V-J^N:=IJ'JMNKW#CZ@A!^IKT[PU^QIX+TK:^JW
M.H:Y*/O))+Y$1_X"F&'_ 'U7OM)7AXCB+,\1HZO*O+3\=_Q/J\'P5D6#LU0Y
MWWDW+\'I^!R_AKX7>$?"&PZ1X=T^RE7I,L :7_OXV6_6NHI:*^>J5:E:7-4D
MV_-W/LJ-"EAX<E&"BNR22_ 2BEHK,W"BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *2F33QVT3RRR+%$
M@W.[D!5 ZDD]!7SM\6OVO-*\/B;3O""QZSJ(RK7[9^RQ'U7_ )Z'Z?+[GI7H
M8+ 8G,*GL\/"_P"2]6>-FF<8+)Z/ML;445T75^BW?]7/:O''Q T+X=:0VHZ]
M?QV</2./[TLK?W44<L?Y=\"OB_XR?M+ZY\3/.T[3O,T7PZ>#;(W[VX'K*P[?
M[ X]=W!KS#Q/XLU?QGJTNIZW?S:C>R=9)FZ#^ZHZ*/8  5DU^M93PWA\OM5K
M>_4_!>B_5_@?SIQ%QQC,XYL/AKTJ/;[4O5]O)?-L****^Q/S,**FL[*XU*ZB
MM;2"2YN9F"1PPH7=V/0 #DFOJ?X,_LBA?L^L>.5#'AXM%1OR\YA_Z /Q/5:\
MO,,RPV6T_:8B7HNK]%_2/H,GR/'9Y6]EA(7763^%>K_3?R/)?@W^S_KOQ8ND
MNBK:9X>1L2ZC(OW\'E8@?O'WZ#OSP?N/P+X!T/X<Z''I6AV:VMNO,DAYDF;'
M+NW\1_ET&!Q6[:VL-E;Q06T,<$$2A(XHE"JBC@  < 5+7XUFV=XC-)6E[L%M
M'_/NS^G.'>%L'P_3YH>_5>\W^2[+\7U8E+117SI]H%%%% !1110 4444 8GC
M'P?I7CSP_=:-K-JMU93CIT9&[.A[,.Q_I7QMXS_9[\>?!_7/[8\+27FI6<)+
M0WVEY%Q&OI)&O/3KC*D#G'2ON2DKW<MSC$9;>,+2@]XO;^OZ9\GGG#6#SSEJ
M5;PJQ^&<=&O\U^71H^)]%_;'\;Z*HM=6L-/U1X_E=YH6AF)]]I"_^.BK>I?M
MM>*;B I9:)I5G(1_K)/,E(]P-P'YYK[ U'0M-U@8O]/M;T8Q_I$"R<>G(JO8
M^$="TN0/9:+I]HX.0T%K&ASZ\"O6_M;*I/GE@5S?XM/R_0^<_P!7.(8KV4,U
M?+W<=?OO?\3X?@\*_%3]HK5(+F^6ZN+0'Y+N^7[/9PJ>I08 /;[H)/&:^LO@
M[\%](^$.BO#:-]MU2X ^UZA(H#28Z*H_A0>GYDUZ)25Y^89Y6QU-8>$53I+[
M,?U_I(]G)N%<+E59XRK-UJ[^W+?Y+6WJVWYV"EHHKYP^V"BBB@ HHHH ****
M "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M**** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ H
MHHH **** "BBB@ HHHH **** "BBB@ HHHH **0G'M7DGQ$_:<\&> O,MXKO
M^WM37(^RZ<P=5/H\GW5YXP,D>E=6'PM?%S]G0@Y/R_K0\_&YAA,MI>VQ=10C
MYO\ +J_D>MUY)\4/VEO"?PY\VTBG_MW65X^Q63@JA])).0OT&6]J^6/B5^TE
MXP^(OFVWVK^Q=)?C[#8,5W+Z._WF]QP/:O*J_1,NX1VJ8^7_ &ZOU?\ E]Y^
M+YUXD;T<IA_V_+](_P"?W'H7Q.^.GBGXI2O'J-W]DTO=E--M,I",'@MW<^[?
M@!7GM%%?HM##TL-35*C%1BNB/Q/%XS$8ZJZ^)FYS?5N_]+R"BBMSPCX'UWQY
MJ:V&@Z9/J-S_ !>6,(@]7<_*H]R16LYQIQ<YNR75F%*C4KS5.E%RD]DE=OY&
M'7HGPL^!/B;XJW"R6-O]BTD-B34[H%8AZA.[M[#\2*^AOA7^Q_I.@>3J'B^5
M-;OU^86$61:QG_:)P9/QP.V#7T5;V\5K!'##$D,,:A$CC4*JJ.  !T%?GN:<
M64Z=Z6 7,_YGM\EU_+U/V;(?#NM6M7S9\D?Y%\3]7T]%KZ'G_P +/@?X:^$]
MJK:?;_;-59<2ZG<@&5O4+V1?8?B3UKT.BEK\PKXBKB:CJUI.4GU9^\X3!X?
MT50PT%""V2_K\0HHHK [ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **
M** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHH
MH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
M HHHH **** "BBB@ HHHH **** "BBB@ HHHH **2J6K:UI^@VK76I7UMI]L
MO6:ZE6-!^+$"G%.3LEJ3*48)RD[)%ZDKQ7QA^UMX%\-AX["XN/$%T.B6,>(P
M?>1L#'NNZO#/&?[8OC#7Q)#HT%KX=MVZ-$//GQZ;V&W\E!KZ3"<.YCB[-4^5
M=Y:?AO\ @?$9CQIDN773K>TDND/>_'X?Q/LS7?$FE^%[%KS5]1MM-M5_Y:W4
MJQJ3Z#)Y/L.:\(\>?MF>'=%$EOX:LIM>NAP+B4&"W!]>1N;\A]:^/]:U_4_$
MEZUYJNH7.I73=9KJ5I&^F2>GM5"ON,%PCAJ-I8J3F^VR_P W]Z/RC-/$C'8B
M\,!35)=W[TO\E]S]3O\ X@?';QE\1O-BU/57@L'X_L^RS#!CT(!R_P#P(FN
MHHK[>C0I8>"IT8J*[+0_*\5C,1C:CK8FHYR?5NX445U/@KX7^*/B%.(]!T>X
MO(\[6N=NR%/K(V%'TSGVJJE6G1BYU)))=7H9T,/6Q-14J$'*3Z)7?W(Y:M7P
MWX5UCQAJ26&BZ=<:E=M_RSMT+;1ZL>BCW.!7U+\/?V+;&S\NZ\8:D;^7J=/L
M&*1#V:3[S?\  0OUKZ*\.^%])\)Z<EAHVG6^FVB=([>,*#[GU/N>:^(Q_%F&
MH7AA%SR[[1_S?]:GZKD_AUCL7:IF$O90[;R_R7SN_(^9OAK^QA_JKWQK??[7
M]EV#_H\O]%_[ZKZ9\.^&=)\)Z:EAHVGV^FV:=(K>,*"?4^I]SR:U**_-<=FF
M+S&5\1.Z[;)?+^F?N64Y!EV2PY<'3L^LGK)^K_167D)2T45Y1]"%%%% !111
M0 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%%
M!1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %
M%%% !1110 4444 %%%% !1110 4444 %%%% !1110 4444 %%%% !1110 44
M5YS\6/CIX=^$:01:CYU[J5PN^*PM<&3;TWL20%7/&>IP< X-=%##U<545*C'
MFD^B./%XS#X"B\1BIJ$%NV>C45\I:I^W(?F73?"0'I)=7V?_ !U4^G\5<;JW
M[9GCJ^#+:6^DZ:O9H;=G?\W<C]*^EI<+YG4^*"CZM?I<^&Q''V0T?AJ.?I%_
MK8^WJJZCJUEI$/G7UY;V4/\ STN)5C7\R:_/'6OCY\0M?#"Z\5Z@BMP5M&%L
M,>G[L+7#WM_<ZE<&>[N);J9NLDSEV/XFO9H\&57_ !ZR7HF_SL?+XKQ/P\=,
M+AI2_P 32_!<WYGZ">(/VD/AWX=W"7Q);WLJ](]/5KC=]&0%?S->7^)/VW]+
MAW)H/ARZNVZ"74)EA ]]J[\C\17R)17T.'X3R^EK4O-^;LOPL?&8SQ$SG$75
M'EIKR5W]\K_DCV'Q1^U=\0?$>Y(-0M]%@;CR]-@"G'^^^Y@?<$5Y7JVMZCKU
MT;K4[^YU&Y;K-=3-*Y_%B35*BOI\/@\-A5:A34?1'P>,S3'9@[XNM*?JVU]V
MR$I:*V_#G@?Q#XOD":+HM]J?."]M;LR+_O-C _$UU3G&FN:;LO,X*=*I6DH4
MHN3?1*[,2DKWGPI^QSXUUHI)JTMEH$!^\)I/.F_!4ROYL*]G\(_L=>#-#V2Z
MO+>>(;@<D3/Y,/\ WPAS^;&OF\5Q)EN%T]ISOM'7\=OQ/M\OX(SO'V?L?9Q[
MS]W\/B_ ^*M,TF]UJ\2TT^SGOKI_NPVT;2.?H ,U[-X+_9%\:^)?+FU18/#=
MFW5KMO,F(]1&I_1BM?:F@^%](\+68M='TRTTRW_YYVL*Q@^YP.3[FM.OC<9Q
MAB*EXX6"BN[U?^7YGZ?EOAK@Z-IYA5=1]E[J^_=_@>,^!OV4O _A'RY[VVD\
M17J\^9J)!B!]HA\N/][=7L5O;Q6EO'!!$D,,:A4CC4*J@=  .@J6BOB<3C,1
MC)<^(FY/S_3L?J>!RW!Y;#V>#I*"\EOZO=_,2EHHKC/2"BBB@ HHHH ****
M"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
MHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB
M@!*_/O\ :<6^7XV>(OMV[+-$8<YQY7E+MQ[>OOFOT%KS[XJ?!'PY\6X83JJ3
M6U_ NV&_M&"RJN<[3D$,N>Q'<X(KZ7(,RI99BW5K+W6K>FJ?Z'P_&&1U\^RY
M4,-*TXR4DGL]&K?CH?G117V?;_L2^$5_X^-;UJ7C_EF\*<^O,9K;L_V/_AY:
MMF6'4KL>DUX0.G^R%K]$EQ9EL=G)_+_.Q^*4_#O/)_$H1]9?Y)GPK17Z&:=^
MS;\-M,P8O"UO(1S_ *1-+-Z=G<CM75:7\.?"FB$'3_#6DV;CH\-E&K?F%S7!
M4XRPJ_ATI/ULO\SV*/ACCY?QL1"/HF_S43\V=+\.ZKKC;=.TR\U!O[MK;O*?
M_'0:[;1?V=OB+KN#!X6O(%."6O2EMC\)"I_3-?H@JJBA5 50,  <"G5Y-7C*
MO+^%12]6W_D?18?PQP<?]XQ,I?X4H_GS'Q;H?[%/BR](;5-6TS3(_P"[&7GD
M'X !?_'J]%T']B?PS8[6U;6M1U1QU6!4MXS]1\Q_)J^C**\*OQ)F=;3VG*O)
M)?CO^)]9A>!\BPMG[#G?>3;_  V_ X/PW\"/ /A78UCX8L6E7I+=J;A\^H,A
M;!^F*[J.)(8U2-51%&%51@ >@%/HKY^K7JXA\U:;D_-M_F?98?"8?!QY,-3C
M!=HI+\A**6BL#K"BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH ***
M* "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH
M **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@
MHHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ I*6B@ HHHH *
M*** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HH
IHH **** "BBB@ HHHH **** "BBB@ HHHH **** "BBB@ HHHH __]D!

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<FILENAME>R1.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cover<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentInformationLineItems', window );"><strong>Document Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">11-K<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">SPS COMMERCE, INC.<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0001092699<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">EBP 001</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentInformationLineItems', window );"><strong>Document Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">11-K<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityRegistrantName', window );">Entity Registrant Name</a></td>
<td class="text">SPS COMMERCE, INC.<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0001092699<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentInformationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=spsc_EBP001Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=spsc_EBP001Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>11
<FILENAME>R2.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>STATEMENTS OF NET ASSETS AVAILABLE FOR BENEFITS (Statement) - EBP 001 - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract', window );"><strong>Assets</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanCash', window );">Non-interest bearing cash</a></td>
<td class="nump">$ 1,920<span></span>
</td>
<td class="nump">$ 2,142<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract', window );"><strong>Investments, at fair value</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">255,912,288<span></span>
</td>
<td class="nump">211,089,047<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanOtherReceivable', window );">Other receivables</a></td>
<td class="nump">4,721<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant', window );">Notes receivable from participants</a></td>
<td class="nump">1,611,115<span></span>
</td>
<td class="nump">1,261,443<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanReceivable', window );">Total receivables</a></td>
<td class="nump">1,615,836<span></span>
</td>
<td class="nump">1,261,443<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit', window );">Net assets available for benefits</a></td>
<td class="nump">257,530,044<span></span>
</td>
<td class="nump">212,352,632<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Mutual funds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract', window );"><strong>Investments, at fair value</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">74,651,689<span></span>
</td>
<td class="nump">62,109,137<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">SPS Commerce, Inc. common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract', window );"><strong>Investments, at fair value</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">10,714,050<span></span>
</td>
<td class="nump">19,378,857<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Common collective trust funds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract', window );"><strong>Investments, at fair value</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">$ 170,546,549<span></span>
</td>
<td class="nump">$ 129,601,053<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanAssetAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanAssetAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of noninterest-bearing cash held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-03(5))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value of investment, excluding plan interest in master trust, held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)). Includes, but is not limited to, derivative, investment measured at net asset value per share as practical expedient, and insurance contract not meeting fully-benefit responsive investment criteria.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4B<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4B<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4B<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4K<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4K<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 12: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (j)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-7A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 16: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (k)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 18: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 19: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 20: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 21: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 22: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset less liability available to pay benefit of participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)), including, but not limited to, aggregation of participants' individual account balances.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-18<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule II))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479750/962-40-25-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-04(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-04(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-03(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477063/962-205-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of unpaid principal plus accrued but unpaid interest for loan from participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule II))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 310<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478642/962-310-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanOtherReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of receivable for employee stock purchase, saving, or similar plan (employee benefit plan (EBP)), classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-03(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanOtherReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of receivable of employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule II))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=spsc_EBP001Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=spsc_EBP001Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentTypeAxis=us-gaap_MutualFundMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentTypeAxis=us-gaap_MutualFundMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentTypeAxis=us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentTypeAxis=us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentTypeAxis=us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentTypeAxis=us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<FILENAME>R3.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>STATEMENT OF CHANGES IN NET ASSETS AVAILABLE FOR BENEFITS (Statement) - EBP 001<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2025 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract', window );"><strong>Investment income</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment', window );">Net appreciation in fair value of investments</a></td>
<td class="nump">$ 23,867,828<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment', window );">Interest and dividend income</a></td>
<td class="nump">2,656,724<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment', window );">Net investment income</a></td>
<td class="nump">26,524,552<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant', window );">Interest income on notes receivable from participants</a></td>
<td class="nump">118,377<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract', window );"><strong>Contributions</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover', window );">Participant elective deferral</a></td>
<td class="nump">21,422,325<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash', window );">Employer matching</a></td>
<td class="nump">6,099,464<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover', window );">Participant rollovers</a></td>
<td class="nump">3,694,989<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution', window );">Total contributions</a></td>
<td class="nump">31,216,778<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease', window );">Total investment activity and additions</a></td>
<td class="nump">57,859,707<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract', window );"><strong>Deductions</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant', window );">Benefits paid to participants</a></td>
<td class="nump">18,327,587<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense', window );">Administrative expenses</a></td>
<td class="nump">249,299<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease', window );">Total deductions</a></td>
<td class="nump">18,576,886<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease', window );">Net increase in net assets available for benefits</a></td>
<td class="nump">39,282,821<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan', window );">Transfer in</a></td>
<td class="nump">5,894,591<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract', window );"><strong>Net assets available for benefits</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit', window );">Beginning of year</a></td>
<td class="nump">212,352,632<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit', window );">End of year</a></td>
<td class="nump">$ 257,530,044<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in net asset available for benefit to participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule III))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in net asset available for benefit from administrative expense incurred by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule III))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477063/962-205-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in net asset available for benefit from payment of benefit to participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)), including, but not limited to, withdrawal.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule III))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-04(5)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477783/962-325-50-2B<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477063/962-205-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in net asset available for benefit to participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule III))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in net asset available for benefit to participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule III))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in net asset available for benefit from realized and unrealized gain (loss) on investment held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477783/962-325-50-7<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477063/962-205-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in net asset available for benefit from income (loss) on investment held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)). Includes, but is not limited to, realized and unrealized gain (loss) on investment.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in net asset available for benefit from contribution to employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule III))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in net asset available for benefit from cash contribution from employer of participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477063/962-205-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in net asset available for benefit from interest and dividend income on investment held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477783/962-325-50-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in net asset available for benefit from interest income on note receivable from participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule III))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, excluding rollover, of increase in net asset available for benefit from contribution by participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-04(4)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-04(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/recommendedDisclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule III))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/recommendedDisclosureRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477783/962-325-50-2B<br><br>Reference 6: http://www.xbrl.org/2003/role/recommendedDisclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477063/962-205-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in net asset available for benefit from contribution transferred from another qualified plan or from individual retirement account of participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)). Excludes contribution for participant transmitted by employer of participant in EBP.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-04(4)(a)(1))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-04(4)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 4: http://www.xbrl.org/2003/role/recommendedDisclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule III))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 5: http://www.xbrl.org/2003/role/recommendedDisclosureRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477783/962-325-50-2B<br><br>Reference 6: http://www.xbrl.org/2003/role/recommendedDisclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 7<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477063/962-205-45-7<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of net asset available for benefit transferred to (from) employee stock purchase, saving, or similar plan (employee benefit plan (EBP)) from (to) external plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule III))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478416/962-205-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477063/962-205-45-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset less liability available to pay benefit of participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)), including, but not limited to, aggregation of participants' individual account balances.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-8<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(3)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483443/250-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-18<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule II))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 40<br> -Name Accounting Standards Codification<br> -Section 25<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479750/962-40-25-1<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-04(7))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-04(6))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-03(9))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477063/962-205-45-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=spsc_EBP001Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=spsc_EBP001Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<FILENAME>R4.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Plan Description<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2025</div></th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">EBP 001</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems', window );"><strong>EBP, Description of Plan [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTextBlock', window );">Plan Description</a></td>
<td class="text">Plan Description <div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The following description of the SPS Commerce, Inc. 401(k) Retirement Savings Plan (the &#8220;Plan&#8221;) is provided for general informational purposes only. Participants should refer to the Plan document for a more complete description of the Plan&#8217;s provisions.</span></div><div><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">General </span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The Plan, established on December 20, 1995, is a defined contribution plan subject to the provisions of ERISA and was most recently restated on May 1, 2024 when the Plan adopted the Fidelity Pre-Approved Defined Contribution Plan document. SPS Commerce, Inc. is the Plan administrator and sponsor (further referred to herein as the &#8220;Company,&#8221; &#8220;Plan Administrator,&#8221; or &#8220;Plan Sponsor&#8221;).</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">In May 2025, and in connection with the Company&#8217;s prior acquisition of all of the outstanding equity ownership interests of SupplyPike, Inc. (&#8220;SupplyPike&#8221;), the Company transferred the net assets from the defined contribution retirement plan that SupplyPike's eligible employees were participating in (the &#8220;SupplyPike Plan&#8221;) into the Plan. Total net assets transferred into the Plan were $5.9 million. Participants in the SupplyPike Plan became eligible in the Plan in January 2025. </span></div><div><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Eligibility</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"> </span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">All regular employees, upon attaining age 21, may become participants in the Plan on the first day of each Plan month for both participant deferrals and Company matching contributions. Additionally, participants are eligible to receive Company discretionary nonelective contributions on the first day of the month following one year of eligible service if they are employed as of the last day of the plan year.</span></div><div><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Funding Policy </span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Pretax and Roth contributions made pursuant to participant election deferrals are permitted in whole percentages from 1% to 80% of the participant&#8217;s compensation, subject to limits established by law. Participants who will be age 50 or older by the end of the Plan year are permitted to make catch-up contributions. Participants may also make rollover contributions to the Plan from other qualified plans.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The Company matches half of the participant&#8217;s elective deferrals, up to the first 6% of the participant&#8217;s pre-tax compensation for each pay period. Half of the match is in Company stock, which is purchased in the open market by Fidelity Management Trust Company (&#8220;Fidelity&#8221;) and immediately deposited into the participant&#8217;s 401(k) account. The other half of the match is allocated in the same manner as the participant investment election(s).</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The Company may make discretionary nonelective contributions at the discretion of the Company&#8217;s Board of Directors. No discretionary employer contributions were made during the year ended December&#160;31, 2025.</span></div><div><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Participants&#8217; 401(k) Accounts </span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Participants&#8217; accounts are credited with their contributions, employer matching contributions, discretionary employer contributions, earnings or losses thereon, and charged with an allocation of administrative expenses. Expense allocations are either pro-rata to each participant or based on each participant&#8217;s account balance, as defined by the Plan. The benefit to which a participant is entitled is the benefit which can be provided from the participant&#8217;s vested account.</span></div><div style="text-indent:36pt"><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Vesting </span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Each participant is fully vested in the portion of the participant&#8217;s account that relates to participant contributions and earnings thereon. Vesting in the employer matching and discretionary nonelective contribution portions of participant accounts, plus actual earnings thereon, is based on hire date and years of vesting service, as defined in the Plan document as follows: </span></div><div><span><br/></span></div><div style="padding-left:0.07pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.951%"><tr><td style="width:1.0%"></td><td style="width:77.267%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.296%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.015%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.015%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.707%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Hire Date and Years of Service</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Vesting Percentage</span></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Hire date prior to January 1, 2018</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">immediately</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">100&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">%</span></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Hire date January 1, 2018 or after</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-left:6.85pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">less than two years of service</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">0</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">%</span></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-left:6.85pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">two years or more of service</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">100&#160;</span></div></td><td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">%</span></div></td></tr></table></div><div><span><br/></span></div><div style="text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Plan participants from defined contribution retirement plans merged into the Plan are generally fully vested in all balances transferred into the Plan. All contributions made after entering the Plan follow normal Plan vesting terms, as noted above. </span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Forfeitures</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Upon a participant&#8217;s termination, the unvested portion of the participant&#8217;s employer account is forfeited. Forfeitures remain in the Plan and are used to pay administrative expenses. Any remaining amounts are used to reduce future employer contributions payable under the Plan.</span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Notes Receivable from Participants </span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Participants may borrow from their accounts a minimum of $1,000 and a maximum equal to the lesser of $50,000 or 50% of their vested account balance. Note terms range from <span style="-sec-ix-hidden:f-58">one</span> to five years and are secured by the balance in the participant&#8217;s account. A participant may have longer payment terms as determined by the Plan Administrator if the note is for the purchase of a principal residence. Participant notes receivable bear fixed interest based on the prevailing interest rates charged by other lending institutions for loans which would be made under similar circumstances. Principal and interest are paid ratably through payroll deductions for active participants. A participant may only have one outstanding loan at one time.</span></div><div><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Plan Termination </span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Although it has not expressed any intent to do so, the Company has the right under the Plan to discontinue its contributions at any time and terminate the Plan subject to the provisions of ERISA. In the event of Plan termination, participants shall be 100% vested in their accounts.</span></div><div><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Benefits Paid to Participants</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Upon termination of service due to death, disability, retirement, termination of employment, or other reasons as defined in the Plan, the participant may elect to receive an amount equal to the value of the participant&#8217;s vested interest in his or her account in the form of a lump-sum amount, in approximately equal installment payments, or rollover the entire vested portion to a qualified plan, depending on the participant&#8217;s account balance.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">If the vested account balance does not exceed $1,000, a lump-sum distribution will be made. If the value of a separated participant&#8217;s vested balance is between $1,000 and $5,000, the Plan requires the vested balance to be transferred to an individual qualified retirement account. If the vested balance exceeds $5,000, a participant may elect to keep the vested account balance in the Plan, receive a lump-sum distribution, or rollover the entire vested portion to a qualified plan. </span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Participants are permitted withdrawals from their Plan accounts for financial hardships or upon attainment of age 59 1/2. Hardship withdrawals must be approved by the Plan Administrator.</span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Investment Options</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Except for the Company stock portion of the Company matching contribution, all Plan investments are participant directed. Participants may direct the investment of their account balance into various funds and may transfer assets in their accounts between funds on a daily basis, including the Company stock portion of the Company matching contribution.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478416/962-205-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for description of employee stock purchase, saving, or similar plan (employee benefit plan (EBP)). Includes, but is not limited to, vesting and allocation provisions and disposition of forfeiture.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SAB Topic 11.M.Q2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480530/250-10-S99-5<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SAB Topic 11.M)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480530/250-10-S99-6<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478416/962-205-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 275<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=spsc_EBP001Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=spsc_EBP001Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>14
<FILENAME>R5.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2025</div></th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">EBP 001</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems', window );"><strong>EBP, Accounting Policy [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock', window );">Summary of Significant Accounting Policies</a></td>
<td class="text">Summary of Significant Accounting Policies<div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Basis of Accounting</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The accompanying financial statements have been prepared using the accrual method of accounting in accordance with accounting principles generally accepted in the United States of America (&#8220;GAAP&#8221;).</span></div><div style="text-indent:36pt"><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Investment Valuation and Income (Loss) Recognition</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The Plan&#8217;s investments are reported at fair value. Fair value is the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. See Note C for discussion of fair value measurements.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Purchases and sales of securities are recorded on a trade-date basis. Interest income is recorded on the accrual basis of accounting. Dividends are recorded on the ex-dividend date.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Net appreciation (depreciation) includes the Plan&#8217;s gains and losses on investments bought and sold, as well as held during the year.</span></div><div style="text-indent:36pt"><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Administrative Expenses</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Plan administrative expenses, including investment fees, transaction fees, and investment management services, are charged to participant accounts as a percentage of assets invested. Plan administration fees, including audit and legal fees, are paid by the Plan Sponsor.</span></div><div style="text-indent:36pt"><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Benefits Paid to Participants &amp; Contributions</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Benefits paid to participants are recorded by the Plan when paid. Contributions are recorded by the Plan when paid. </span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Risks and Uncertainties</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The Plan invests in various investment securities that are exposed to various risks, such as interest rate, market, and credit risks. Due to the level of risk associated with certain investment securities, it is reasonably possible that changes in the values of investment securities will occur in the near term and that such changes could materially affect participants&#8217; balances and the amounts reported in the Statements of Net Assets Available for Benefits.</span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Concentration of Market Risk</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">At December&#160;31, 2025 and 2024, 4% and 9% of the Plan&#8217;s net assets, respectively, were invested in the common stock of the Company. The underlying value of the Company&#8217;s common stock is entirely dependent upon the performance of the Company and the market&#8217;s evaluation of such performance. It is possible that changes in the fair value of the Company&#8217;s common stock in the near term could materially affect participants&#8217; account balances and the amounts reported in the Statements of Net Assets Available for Benefits and the Statement of Changes in Net Assets Available for Benefits. </span></div><div><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Use of Estimates</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The preparation of financial statements in conformity with GAAP requires Plan management to make estimates and assumptions that affect the reported amounts of assets and liabilities, and changes therein, and disclosure of contingent assets and liabilities. Actual results may differ from those estimates.</span></div><div><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Notes Receivable from Participants</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"> </span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Notes receivable from participants are measured at their unpaid balance plus any accrued but unpaid interest. Delinquent notes are reclassified as distributions in the quarter subsequent to when a participant misses a scheduled repayment. No allowance for credit losses has been recorded as of December&#160;31, 2025 and 2024.</span></div><div><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Accounting Pronouncements Recently Adopted</span></div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">&#160;&#160;&#160;&#160;</span><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">For the year ended December 31,</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"> 2025</span> there were no new accounting pronouncements that were adopted.<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479143/962-235-S50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for summary of accounting policy used to prepare financial statement of employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SAB Topic 11.M.Q2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480530/250-10-S99-5<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 250<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 6<br> -Subparagraph (SAB Topic 11.M)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480530/250-10-S99-6<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=spsc_EBP001Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=spsc_EBP001Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<FILENAME>R6.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2025</div></th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">EBP 001</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems', window );"><strong>EBP, Investment, Fair Value and NAV [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock', window );">Fair Value Measurements</a></td>
<td class="text">Fair Value Measurements<div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Fair Value Measurements</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The Plan measures certain financial assets at fair value on a recurring basis based on a fair value hierarchy that requires the Plan to maximize the use of observable inputs and minimize the use of unobservable inputs when measuring fair value. A financial instrument&#8217;s categorization within the fair value hierarchy is based upon the lowest level of input that is significant to the fair value measurement. The three levels of inputs that may be used to measure fair value are:</span></div><div style="margin-top:6pt;padding-left:96.5pt;text-indent:-42.5pt"><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:100%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;padding-left:37.03pt">Level 1 &#8211; quoted prices in active markets for identical assets or liabilities.</span></div><div style="margin-top:6pt;padding-left:96.5pt;text-indent:-42.5pt"><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:100%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;padding-left:37.03pt">Level 2 &#8211; observable inputs other than Level 1 prices, such as: (a) quoted prices for similar assets or liabilities, (b) quoted prices in markets with insufficient volume or infrequent transactions (less active markets), or (c) model-derived valuations in which all significant inputs are observable or can be derived principally from or corroborated by observable market data for substantially the full term of the assets or liabilities.</span></div><div style="margin-top:6pt;padding-left:96.5pt;text-indent:-42.5pt"><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:100%">&#8226;</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;padding-left:37.03pt">Level 3 &#8211; unobservable inputs to the valuation methodology that are significant to the measurement of fair value of assets or liabilities.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Following is a description of the valuation methodologies used for assets measured at fair value. There have been no changes in the methodologies used at December&#160;31, 2025 and 2024.</span></div><div style="margin-top:6pt;padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Common Stock:</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"> Valued at quoted market prices, as they are actively traded.</span></div><div style="margin-top:6pt;padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Mutual funds</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">: Valued at the daily closing price as reported by the fund. Mutual funds held by the Plan are open-end mutual funds that are registered with the Securities and Exchange Commission. These funds are required to publish their daily net asset value (&#8220;NAV&#8221;) and to transact at that price. The mutual funds held by the Plan are deemed to be actively traded.</span></div><div style="margin-top:6pt;padding-left:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Common collective trust funds</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">: Valued at the NAV of shares held by the Plan based on the fair value of its underlying assets reported in the fund&#8217;s audited financial statements. The NAV is used as a practical expedient to estimate fair value. This practical expedient would not be used if it was determined to be probable that the funds will sell the underlying investments for an amount different from the reported NAV. Participant transactions (purchases and sales) may occur daily. If the Plan initiates a full redemption of the collective trust, the issuer reserves the right to require 12 months&#8217; notification in order to ensure that securities liquidations will be carried out in an orderly business manner.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The preceding methods described above may produce a fair value calculation that may not be indicative of net realizable value or reflective of future fair values. Furthermore, while the Plan believes its valuation methods are appropriate and consistent with other market participants, the use of different methodologies or assumptions to determine the fair value of certain financial instruments could result in a different fair value measurement at the reporting date.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The following table sets forth by level, within the fair value hierarchy, the Plan&#8217;s investments at fair value:</span></div><div style="text-align:justify"><span><br/></span></div><div style="padding-left:0.15pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.863%"><tr><td style="width:1.0%"></td><td style="width:41.953%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.037%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.967%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.900%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.967%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.900%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.967%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.900%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.109%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">December 31, 2025</span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Level 1</span></div></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Level 2</span></div></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Level 3</span></div></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Total</span></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Common stock</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">10,714,050&#160;</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">10,714,050&#160;</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Mutual funds</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">74,651,689&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">74,651,689&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Total assets in the fair value hierarchy</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">85,365,739&#160;</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">85,365,739&#160;</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Common collective trust funds, measured at NAV</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">170,546,549&#160;</span></div></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 14.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Investments at fair value</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">255,912,288&#160;</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%">Level 1</span></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%">Level 2</span></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%">Level 3</span></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Common stock</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">19,378,857&#160;</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">19,378,857&#160;</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Mutual funds</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">62,109,137&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">62,109,137&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Total assets in the fair value hierarchy</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">81,487,994&#160;</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">81,487,994&#160;</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Common collective trust funds, measured at NAV</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">129,601,053&#160;</span></div></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 14.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Investments at fair value</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">211,089,047&#160;</span></div></td><td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (j)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 14: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-04(2)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (k)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 18: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 19: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 20: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 21: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-02(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for fair value of investment held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)), including, but not limited to, fair value measured at net asset value per share as practical expedient (NAV).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-04(2)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-04(3)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-02(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 16: http://www.xbrl.org/2003/role/recommendedDisclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 23<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-23<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-6<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=spsc_EBP001Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=spsc_EBP001Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<FILENAME>R7.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Tax Status<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2025</div></th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">EBP 001</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems', window );"><strong>EBP, Tax Status [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTextBlock', window );">Income Tax Status</a></td>
<td class="text">Income Tax Status<div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The Plan uses a volume submitter plan document created by Fidelity Management &amp; Research Co. (&#8220;FMR&#8221;), an affiliate of the Plan&#8217;s recordkeeper, Fidelity. The Internal Revenue Service (&#8220;IRS&#8221;) has determined and informed FMR by a letter dated June 30, 2020, that the volume submitter plan is designed in accordance with applicable sections of the Internal Revenue Code (&#8220;IRC&#8221;). Although the Plan has been restated since receiving the FMR opinion letter, the Plan&#8217;s management believes that the Plan is designed and is currently being operated in compliance with the applicable requirements of the IRC.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">GAAP requires plan management to evaluate tax positions taken by the Plan and recognize a tax liability (or asset) if the organization has taken an uncertain position that more likely than not would not be sustained upon examination by the IRS. The Plan Administrator has analyzed the tax positions taken by the Plan, and has concluded that as of December&#160;31, 2025 and 2024, there are no uncertain positions taken or expected to be taken that would require recognition of a liability (or asset) or disclosure in the financial statements. The Plan is subject to routine audits by taxing jurisdictions; however, there are currently no audits for any tax periods in progress.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478416/962-205-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanTaxStatusTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for tax status of employee stock purchase, saving, or similar plan (employee benefit plan (EBP)). Includes, but is not limited to, information concerning whether tax ruling or determination letter was obtained and principal assumption on which plan relied in not making provision for federal income tax.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478416/962-205-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-02(c))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanTaxStatusTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=spsc_EBP001Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=spsc_EBP001Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<FILENAME>R8.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Party-in-Interest Transactions<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2025</div></th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">EBP 001</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems', window );"><strong>EBP, Related Party and Party-in-Interest Transactions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock', window );">Party-in-Interest Transactions</a></td>
<td class="text">Party-in-Interest Transactions<div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The Plan held 120,207 shares and 105,326 shares of common stock of the Company, the sponsoring employer, valued at $10.7 million and $19.4 million at December&#160;31, 2025 and 2024, respectively. The investment and transactions in this investment qualify as party-in-interest transactions which are exempt from the prohibited transaction rules of ERISA.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Plan investments include shares of mutual funds managed by Fidelity, the custodian as defined by the Plan; therefore, transactions in these investments qualify as exempt party-in-interest transactions.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Certain employees of the Plan Sponsor provide administrative services to the Plan. These services are provided at no cost to the Plan.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Party-in-interest transactions also include loans made to participants.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479143/962-235-S50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for related party and party-in-interest transactions with employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=spsc_EBP001Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=spsc_EBP001Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>18
<FILENAME>R9.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Form 5500, Schedule H, Part IV, Line 4(i) Schedule of Assets (Held at End of Year)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2025</div></th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">EBP 001</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock', window );">Form 5500, Schedule H, Part IV, Line 4(i) Schedule of Assets (Held at End of Year)</a></td>
<td class="text"><div style="text-align:center"><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">SPS COMMERCE, INC.</span></div><div style="text-align:center"><span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%">401(K) RETIREMENT SAVINGS PLAN</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">EIN: 41-2015217, Plan: 001</span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Form 5500, Schedule H, Part IV, Line 4(i)</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Schedule of Assets (Held at End of Year) </span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">As of December&#160;31, 2025</span></div><div><span><br/></span></div><div style="padding-left:0.12pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.951%"><tr><td style="width:1.0%"></td><td style="width:3.389%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.521%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:23.661%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.296%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:39.716%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.296%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.648%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.888%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.285%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Identity of issuer, borrower, lessor, or similar party</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Description of investment including maturity date, rate of interest, collateral, par, or maturity value</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Cost</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Current value</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%;text-decoration:underline">Collective trust funds</span></div></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"><div style="margin-bottom:0.1pt;text-align:center"></div></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard </span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2055 Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">37,114,282&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard </span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2050 Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">33,428,634&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard </span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2045 Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">30,463,895&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard </span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2060 Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">18,064,883&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard </span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2040 Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">13,314,586&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard </span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2035 Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">12,269,543&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2030 Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">10,395,498&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard </span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2065 Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">6,469,746&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard </span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2025 Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">2,953,520&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Prudential</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Total Return Bond Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">2,059,033&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Union Bank and Trust Company</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Morley Stable Value Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">1,978,692&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement Income Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">1,275,476&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2020 Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">568,917&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Vanguard</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Target Retirement 2070 Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">189,844&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">170,546,549&#160;</span></div></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%;text-decoration:underline">Mutual funds</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><div style="margin-bottom:0.1pt;text-align:center"></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Fidelity</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Institutional 500 Index Fund </span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">31,661,967&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;J.P. Morgan</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Large Cap Growth Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">12,657,101&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Fidelity</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Mid-Cap Index Fund </span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">7,262,551&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="background-color:#cceeff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Fidelity </span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;MFS Research International Fund </span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">6,054,830&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Fidelity </span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;MFS Value Fund </span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">4,633,621&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="background-color:#cceeff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Fidelity</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Small Cap Growth Index Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">3,534,899&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Fidelity</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Small Cap Value Index Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">3,140,478&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="background-color:#cceeff;color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Fidelity</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="background-color:#cceeff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">US Bond Index Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">2,444,609&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Fidelity</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Total International Index Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">2,289,161&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="background-color:#cceeff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Fidelity</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Small Cap Index Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">405,166&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">PIMCO</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Income Institutional Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">359,156&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Principal</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Mid-Cap Fund</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">154,919&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">John Hancock</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Disciplined Value Mid-Cap Fund</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">53,231&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">74,651,689&#160;</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%;text-decoration:underline">SPS Commerce Stock</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt;text-align:center"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="background-color:#cceeff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;SPS Commerce, Inc.</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Common Stock</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">**</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">10,714,050&#160;</span></div></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%;text-decoration:underline">Participant loans</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">*</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Participant loans</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#160;Interest from 4.25% to 9.50% maturing through 2031</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$0</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">1,611,115&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">257,523,403&#160;</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr></table></div><div style="padding-left:18pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">*&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Represents a party-in-interest</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">**&#160;&#160;&#160;&#160;Historical cost information not required for participant-directed investments</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (1)(i)(D)<br> -Publisher DOL-EBSA<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule I))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (1)(i)(A)<br> -Publisher DOL-EBSA<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (1)(i)(C)<br> -Publisher DOL-EBSA<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (1)(i)(B)<br> -Publisher DOL-EBSA<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for schedule of asset held for investment for employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule I))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (1)(i)<br> -Publisher DOL-EBSA<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=spsc_EBP001Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=spsc_EBP001Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>19
<FILENAME>R10.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies (Policies) - EBP 001<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2025</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems', window );"><strong>EBP, Accounting Policy [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock', window );">Basis of Accounting</a></td>
<td class="text"><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Basis of Accounting</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The accompanying financial statements have been prepared using the accrual method of accounting in accordance with accounting principles generally accepted in the United States of America (&#8220;GAAP&#8221;).</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentPolicyTextBlock', window );">Investment Valuation and Income (Loss) Recognition</a></td>
<td class="text"><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Investment Valuation and Income (Loss) Recognition</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The Plan&#8217;s investments are reported at fair value. Fair value is the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. See Note C for discussion of fair value measurements.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Purchases and sales of securities are recorded on a trade-date basis. Interest income is recorded on the accrual basis of accounting. Dividends are recorded on the ex-dividend date.</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Net appreciation (depreciation) includes the Plan&#8217;s gains and losses on investments bought and sold, as well as held during the year.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanExpensePolicyTextBlock', window );">Administrative Expenses</a></td>
<td class="text"><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Administrative Expenses</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Plan administrative expenses, including investment fees, transaction fees, and investment management services, are charged to participant accounts as a percentage of assets invested. Plan administration fees, including audit and legal fees, are paid by the Plan Sponsor.</span></div><span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock', window );">Benefits Paid to Participants &amp; Contributions</a></td>
<td class="text"><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Benefits Paid to Participants &amp; Contributions</span></div>Benefits paid to participants are recorded by the Plan when paid. Contributions are recorded by the Plan when paid.<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EbpRiskAndUncertaintyPolicyTextBlock', window );">Risk and Uncertainties and Concentration of Market Risk</a></td>
<td class="text"><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Risks and Uncertainties</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The Plan invests in various investment securities that are exposed to various risks, such as interest rate, market, and credit risks. Due to the level of risk associated with certain investment securities, it is reasonably possible that changes in the values of investment securities will occur in the near term and that such changes could materially affect participants&#8217; balances and the amounts reported in the Statements of Net Assets Available for Benefits.</span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Concentration of Market Risk</span></div>At December&#160;31, 2025 and 2024, 4% and 9% of the Plan&#8217;s net assets, respectively, were invested in the common stock of the Company. The underlying value of the Company&#8217;s common stock is entirely dependent upon the performance of the Company and the market&#8217;s evaluation of such performance. It is possible that changes in the fair value of the Company&#8217;s common stock in the near term could materially affect participants&#8217; account balances and the amounts reported in the Statements of Net Assets Available for Benefits and the Statement of Changes in Net Assets Available for Benefits.<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanUseOfEstimatePolicyTextBlock', window );">Use of Estimates</a></td>
<td class="text"><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Use of Estimates</span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The preparation of financial statements in conformity with GAAP requires Plan management to make estimates and assumptions that affect the reported amounts of assets and liabilities, and changes therein, and disclosure of contingent assets and liabilities. Actual results may differ from those estimates.</span></div><span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock', window );">Notes Receivable from Participants</a></td>
<td class="text"><div><span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%">Notes Receivable from Participants</span><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"> </span></div><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">Notes receivable from participants are measured at their unpaid balance plus any accrued but unpaid interest. Delinquent notes are reclassified as distributions in the quarter subsequent to when a participant misses a scheduled repayment. No allowance for credit losses has been recorded as of December&#160;31, 2025 and 2024.</span></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EbpRiskAndUncertaintyPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for risk and uncertainty of employee stock purchase, saving, or similar plan (employee benefit plan (EBP)). Includes, but is not limited to, concentration risk.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (c)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-21<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 825<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (d)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482907/825-10-50-21<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EbpRiskAndUncertaintyPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479143/962-235-S50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for basis of accounting used to prepare financial statements of employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479143/962-235-S50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanExpensePolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for expense incurred by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanExpensePolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for investment held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477783/962-325-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477783/962-325-50-2A<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 35<br> -Paragraph 1B<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478844/962-325-35-1B<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanInvestmentPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for note receivable from participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for payment of benefit to participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanUseOfEstimatePolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Disclosure of accounting policy for use of estimate in preparation of financial statement of employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 275<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 275<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 275<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-4<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 275<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-11<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 275<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-11<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 275<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 12<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-12<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanUseOfEstimatePolicyTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=spsc_EBP001Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=spsc_EBP001Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<FILENAME>R11.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Plan Description (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2025</div></th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">EBP 001</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems', window );"><strong>EBP, Description of Plan [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_spsc_EBPEmployerContributionVestingScheduleTableTextBlock', window );">Vesting Schedule of Employer Contribution</a></td>
<td class="text">Vesting in the employer matching and discretionary nonelective contribution portions of participant accounts, plus actual earnings thereon, is based on hire date and years of vesting service, as defined in the Plan document as follows: <div style="padding-left:0.07pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.951%"><tr><td style="width:1.0%"></td><td style="width:77.267%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.296%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.015%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.015%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.707%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Hire Date and Years of Service</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Vesting Percentage</span></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Hire date prior to January 1, 2018</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">immediately</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">100&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">%</span></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Hire date January 1, 2018 or after</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-left:6.85pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">less than two years of service</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">0</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">%</span></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-left:6.85pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">two years or more of service</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">100&#160;</span></div></td><td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">%</span></div></td></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_spsc_EBPEmployerContributionVestingScheduleTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>EBP, Employer Contribution, Vesting Schedule</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">spsc_EBPEmployerContributionVestingScheduleTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>spsc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478416/962-205-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=spsc_EBP001Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=spsc_EBP001Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<FILENAME>R12.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Fair Value Measurements (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2025</div></th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">EBP 001</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems', window );"><strong>EBP, Investment, Fair Value and NAV [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock', window );">Schedule of Investment at Fair Value and NAV</a></td>
<td class="text"><div style="margin-top:6pt;text-indent:36pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%">The following table sets forth by level, within the fair value hierarchy, the Plan&#8217;s investments at fair value:</span></div><div style="text-align:justify"><span><br/></span></div><div style="padding-left:0.15pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.863%"><tr><td style="width:1.0%"></td><td style="width:41.953%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.037%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.967%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.900%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.967%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.900%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.967%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.900%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.109%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">December 31, 2025</span></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Level 1</span></div></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Level 2</span></div></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Level 3</span></div></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%">Total</span></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Common stock</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">10,714,050&#160;</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">10,714,050&#160;</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Mutual funds</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">74,651,689&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">74,651,689&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Total assets in the fair value hierarchy</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">85,365,739&#160;</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">85,365,739&#160;</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Common collective trust funds, measured at NAV</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">170,546,549&#160;</span></div></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 14.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Investments at fair value</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">255,912,288&#160;</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%">Level 1</span></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%">Level 2</span></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%">Level 3</span></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Common stock</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">19,378,857&#160;</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">19,378,857&#160;</span></div></td><td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Mutual funds</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">62,109,137&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">62,109,137&#160;</span></div></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Total assets in the fair value hierarchy</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">81,487,994&#160;</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">&#8212;</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">81,487,994&#160;</span></div></td><td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Common collective trust funds, measured at NAV</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">129,601,053&#160;</span></div></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr><tr><td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 14.7pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">Investments at fair value</span></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"></div></td><td colspan="3" style="background-color:#cff0fc;padding:0 1pt"><div style="margin-bottom:0.1pt"></div></td><td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">$</span></div></td><td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"><span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%">211,089,047&#160;</span></div></td><td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><div style="margin-bottom:0.1pt;text-align:right"></div></td></tr></table></div><span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (j)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 14: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-04(2)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (k)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 18: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 19: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 20: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 21: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-02(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of fair value of investment held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)), including, but not limited to, fair value measured at net asset value per share as practical expedient (NAV).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-3<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 6<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-6<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477783/962-325-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-8<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-3<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=spsc_EBP001Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=spsc_EBP001Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>22
<FILENAME>R13.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Plan Description - Narrative (Details) - EBP 001<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2025 </div>
<div>USD ($) </div>
<div>loan </div>
<div>year</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems', window );"><strong>EBP, Description of Plan [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan', window );">Total net assets transferred into the Plan</a></td>
<td class="nump">$ 5,894,591<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_spsc_EBPMinimumAgeToParticipate', window );">Minimum age to participate | year</a></td>
<td class="nump">21<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_spsc_EBPRequisiteServicePeriod', window );">Requisite service period</a></td>
<td class="text">1 year<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage', window );">Maximum annual compensation to total compensation, percentage</a></td>
<td class="nump">80.00%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionMatchingPercentage', window );">Employer contribution, matching percentage</a></td>
<td class="nump">50.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage', window );">Compensation matched percentage</a></td>
<td class="nump">6.00%<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount', window );">Minimum borrowing amount</a></td>
<td class="nump">$ 1,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount', window );">Maximum borrowing amount</a></td>
<td class="nump">$ 50,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage', window );">Maximum borrowing to total account, percentage</a></td>
<td class="nump">50.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed', window );">Number of borrowing | loan</a></td>
<td class="nump">1<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_spsc_EBPInvoluntaryCashOutLimit', window );">Involuntary cash-out limit</a></td>
<td class="nump">$ 1,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit', window );">Involuntary transfer to a qualified plan limit</a></td>
<td class="nump">$ 5,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems', window );"><strong>EBP, Description of Plan [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate', window );">Automatic deferral rate</a></td>
<td class="nump">1.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_spsc_EBPNoteReceivableFromParticipantBorrowingTerm', window );">Borrowing term</a></td>
<td class="text">1 year<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems', window );"><strong>EBP, Description of Plan [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_spsc_EBPNoteReceivableFromParticipantBorrowingTerm', window );">Borrowing term</a></td>
<td class="text">5 years<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_spsc_EBPInvoluntaryCashOutLimit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>EBP, Involuntary Cash-out Limit</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">spsc_EBPInvoluntaryCashOutLimit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>spsc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>EBP, Involuntary Transfer To A Qualified Plan, Limit</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>spsc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_spsc_EBPMinimumAgeToParticipate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>EBP, Minimum Age To Participate</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">spsc_EBPMinimumAgeToParticipate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>spsc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_spsc_EBPNoteReceivableFromParticipantBorrowingTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>EBP, Note Receivable From Participant, Borrowing Term</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">spsc_EBPNoteReceivableFromParticipantBorrowingTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>spsc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>EBP, Note Receivable From Participant, Number Of Loans Allowed</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>spsc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_spsc_EBPRequisiteServicePeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>EBP, Requisite Service Period</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">spsc_EBPRequisiteServicePeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>spsc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of net asset available for benefit transferred to (from) employee stock purchase, saving, or similar plan (employee benefit plan (EBP)) from (to) external plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule III))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478416/962-205-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477063/962-205-45-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478416/962-205-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionMatchingPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of employer matching contribution on eligible participant contribution to employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanEmployerContributionMatchingPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of participant compensation eligible for employer matching contribution for participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of maximum account balance that participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)) can borrow.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of maximum account balance that participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)) can borrow to total participant account balance.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of minimum account balance that participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)) can borrow.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of eligible compensation contributed for participant automatically enrolled in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of maximum pretax annual compensation that participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)), is permitted to contribute to total pretax annual compensation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=spsc_EBP001Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=spsc_EBP001Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>23
<FILENAME>R14.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Plan Description - Vesting Schedule of Employer Contribution (Details) - EBP 001<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2025</div></th></tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_spsc_EBPEmployerContributionVestingAxis=spsc_EBPVestingScheduleTrancheOneMember', window );">Hire date prior to January 1, 2018, immediately</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems', window );"><strong>EBP, Description of Plan [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_spsc_EBPEmployerContributionVestingPercentage', window );">Vesting Percentage</a></td>
<td class="nump">100.00%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_spsc_EBPEmployerContributionVestingAxis=spsc_EBPVestingScheduleTrancheTwoMember', window );">Hire date January 1, 2018 or after, less than two years of service</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems', window );"><strong>EBP, Description of Plan [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_spsc_EBPEmployerContributionVestingPercentage', window );">Vesting Percentage</a></td>
<td class="nump">0.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_spsc_EBPEmployerContributionVestingRequisiteServicePeriod', window );">Employer contribution, requisite service period</a></td>
<td class="text">2 years<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_spsc_EBPEmployerContributionVestingAxis=spsc_EBPVestingScheduleTrancheThreeMember', window );">Hire date January 1, 2018 or after, two years or more of service</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems', window );"><strong>EBP, Description of Plan [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_spsc_EBPEmployerContributionVestingPercentage', window );">Vesting Percentage</a></td>
<td class="nump">100.00%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_spsc_EBPEmployerContributionVestingRequisiteServicePeriod', window );">Employer contribution, requisite service period</a></td>
<td class="text">2 years<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_spsc_EBPEmployerContributionVestingPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>EBP, Employer Contribution, Vesting Percentage</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">spsc_EBPEmployerContributionVestingPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>spsc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_spsc_EBPEmployerContributionVestingRequisiteServicePeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>EBP, Employer Contribution Vesting, Requisite Service Period</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">spsc_EBPEmployerContributionVestingRequisiteServicePeriod</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>spsc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:durationItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478416/962-205-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_spsc_EBPEmployerContributionVestingAxis=spsc_EBPVestingScheduleTrancheOneMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">spsc_EBPEmployerContributionVestingAxis=spsc_EBPVestingScheduleTrancheOneMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=spsc_EBP001Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=spsc_EBP001Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_spsc_EBPEmployerContributionVestingAxis=spsc_EBPVestingScheduleTrancheTwoMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">spsc_EBPEmployerContributionVestingAxis=spsc_EBPVestingScheduleTrancheTwoMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_spsc_EBPEmployerContributionVestingAxis=spsc_EBPVestingScheduleTrancheThreeMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">spsc_EBPEmployerContributionVestingAxis=spsc_EBPVestingScheduleTrancheThreeMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>24
<FILENAME>R15.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Summary of Significant Accounting Policies (Details) - EBP 001 - USD ($)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems', window );"><strong>EBP, Accounting Policy [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan', window );">Net assets transferred into the Plan</a></td>
<td class="nump">$ 5,894,591<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentTypeAxis=us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember', window );">SPS Commerce, Inc. common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems', window );"><strong>EBP, Accounting Policy [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage', window );">Concentration of employer's common stock to net assets, percentage</a></td>
<td class="nump">4.00%<span></span>
</td>
<td class="nump">9.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage of investment at fair value held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)), to net assets available for benefit representing concentration risk at or above applicable threshold.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 275<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 18<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482861/275-10-50-18<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479143/962-235-S50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of net asset available for benefit transferred to (from) employee stock purchase, saving, or similar plan (employee benefit plan (EBP)) from (to) external plan.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule III))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478416/962-205-50-1<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 8<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477063/962-205-45-8<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=spsc_EBP001Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=spsc_EBP001Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentTypeAxis=us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentTypeAxis=us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>25
<FILENAME>R16.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Fair Value Measurements - Schedule of Investment at Fair Value and NAV (Details) - EBP 001 - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems', window );"><strong>EBP, Investment, Fair Value and NAV [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">$ 255,912,288<span></span>
</td>
<td class="nump">$ 211,089,047<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentTypeAxis=us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember', window );">SPS Commerce, Inc. common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems', window );"><strong>EBP, Investment, Fair Value and NAV [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">10,714,050<span></span>
</td>
<td class="nump">19,378,857<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentTypeAxis=us-gaap_MutualFundMember', window );">Mutual funds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems', window );"><strong>EBP, Investment, Fair Value and NAV [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">74,651,689<span></span>
</td>
<td class="nump">62,109,137<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentTypeAxis=us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember', window );">Common collective trust funds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems', window );"><strong>EBP, Investment, Fair Value and NAV [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">170,546,549<span></span>
</td>
<td class="nump">129,601,053<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel12And3Member', window );">Fair Value, Inputs, Level 1, Level 2, and Level 3</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems', window );"><strong>EBP, Investment, Fair Value and NAV [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">85,365,739<span></span>
</td>
<td class="nump">81,487,994<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel12And3Member', window );">Fair Value, Inputs, Level 1, Level 2, and Level 3 | SPS Commerce, Inc. common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems', window );"><strong>EBP, Investment, Fair Value and NAV [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">10,714,050<span></span>
</td>
<td class="nump">19,378,857<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel12And3Member', window );">Fair Value, Inputs, Level 1, Level 2, and Level 3 | Mutual funds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems', window );"><strong>EBP, Investment, Fair Value and NAV [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">74,651,689<span></span>
</td>
<td class="nump">62,109,137<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Level 1</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems', window );"><strong>EBP, Investment, Fair Value and NAV [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">85,365,739<span></span>
</td>
<td class="nump">81,487,994<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Level 1 | SPS Commerce, Inc. common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems', window );"><strong>EBP, Investment, Fair Value and NAV [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">10,714,050<span></span>
</td>
<td class="nump">19,378,857<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member', window );">Level 1 | Mutual funds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems', window );"><strong>EBP, Investment, Fair Value and NAV [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">74,651,689<span></span>
</td>
<td class="nump">62,109,137<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Level 2</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems', window );"><strong>EBP, Investment, Fair Value and NAV [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Level 2 | SPS Commerce, Inc. common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems', window );"><strong>EBP, Investment, Fair Value and NAV [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member', window );">Level 2 | Mutual funds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems', window );"><strong>EBP, Investment, Fair Value and NAV [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Level 3</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems', window );"><strong>EBP, Investment, Fair Value and NAV [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Level 3 | SPS Commerce, Inc. common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems', window );"><strong>EBP, Investment, Fair Value and NAV [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member', window );">Level 3 | Mutual funds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems', window );"><strong>EBP, Investment, Fair Value and NAV [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueMeasuredAtNetAssetValuePerShareMember', window );">NAV | Common collective trust funds</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems', window );"><strong>EBP, Investment, Fair Value and NAV [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Total investments</a></td>
<td class="nump">$ 170,546,549<span></span>
</td>
<td class="nump">$ 129,601,053<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value of investment, excluding plan interest in master trust, held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)). Includes, but is not limited to, derivative, investment measured at net asset value per share as practical expedient, and insurance contract not meeting fully-benefit responsive investment criteria.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4B<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4B<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4B<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4K<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4K<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 12: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (j)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-7A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 16: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (k)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 18: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 19: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 20: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 21: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 22: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-3<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-3<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (j)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(1)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 14: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-04(2)(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 16: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (k)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 18: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 19: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 20: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 21: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-02(a))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)(i)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=spsc_EBP001Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=spsc_EBP001Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentTypeAxis=us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentTypeAxis=us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentTypeAxis=us-gaap_MutualFundMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentTypeAxis=us-gaap_MutualFundMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentTypeAxis=us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentTypeAxis=us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel12And3Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel12And3Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel1Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel2Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueInputsLevel3Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueMeasuredAtNetAssetValuePerShareMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueByFairValueHierarchyLevelAxis=us-gaap_FairValueMeasuredAtNetAssetValuePerShareMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<FILENAME>R17.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Party-in-Interest Transactions (Details) - EBP 001 - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2025</div></th>
<th class="th"><div>Dec. 31, 2024</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems', window );"><strong>EBP, Related Party and Party-in-Interest Transactions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Investment, common stock value</a></td>
<td class="nump">$ 255,912,288<span></span>
</td>
<td class="nump">$ 211,089,047<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InvestmentTypeAxis=us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember', window );">SPS Commerce, Inc. common stock</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems', window );"><strong>EBP, Related Party and Party-in-Interest Transactions [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentNumberOfShares', window );">Investment, number of common stock (in shares)</a></td>
<td class="nump">120,207<span></span>
</td>
<td class="nump">105,326<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue', window );">Investment, common stock value</a></td>
<td class="nump">$ 10,714,050<span></span>
</td>
<td class="nump">$ 19,378,857<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fair value of investment, excluding plan interest in master trust, held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)). Includes, but is not limited to, derivative, investment measured at net asset value per share as practical expedient, and insurance contract not meeting fully-benefit responsive investment criteria.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4B<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4B<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4B<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4B<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4A<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-3<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-3<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-2<br><br>Reference 8: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 55<br> -Paragraph 17<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147478873/962-325-55-17<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (f)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 4K<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-4K<br><br>Reference 11: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 12: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (j)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 815<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 7A<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147480434/815-10-50-7A<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 820<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 6A<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147482106/820-10-50-6A<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 16: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (g)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 17: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (k)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 18: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (h)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 19: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (e)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 20: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 21: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (b)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br><br>Reference 22: http://www.xbrl.org/2003/role/exampleRef<br> -Topic 962<br> -SubTopic 325<br> -Name Accounting Standards Codification<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (a)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477509/962-325-45-5<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanInvestmentNumberOfShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares or units of investment held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule I))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (3)<br> -Publisher DOL-EBSA<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (4)<br> -Publisher DOL-EBSA<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (1)(i)(B)<br> -Publisher DOL-EBSA<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (2)(i)(B)<br> -Publisher DOL-EBSA<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 6<br> -Paragraph d<br> -Subparagraph (1)(ii)<br> -Publisher DOL-EBSA<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-02(b))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanInvestmentNumberOfShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-02)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 235<br> -Name Accounting Standards Codification<br> -Section S50<br> -Paragraph 1<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147479143/962-235-S50-1<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 850<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147483326/850-10-50-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=spsc_EBP001Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=spsc_EBP001Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentTypeAxis=us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentTypeAxis=us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>27
<FILENAME>R18.htm
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="include/report.css">
<script type="text/javascript" src="Show.js">/* Do Not Remove This Comment */</script><script type="text/javascript">
							function toggleNextSibling (e) {
							if (e.nextSibling.style.display=='none') {
							e.nextSibling.style.display='block';
							} else { e.nextSibling.style.display='none'; }
							}</script>
</head>
<body>
<span style="display: none;">v3.26.1</span><table class="report" border="0" cellspacing="2" id="id2">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Form 5500, Schedule H, Part IV, Line 4(i) Schedule of Assets (Held at End of Year) (Details) - EBP 001<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2025 </div>
<div>USD ($)</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity tax identification number</a></td>
<td class="text">41-2015217<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanPlanNumber', window );">Plan number</a></td>
<td class="text">001<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution', window );">Participant loans, current value</a></td>
<td class="nump">$ 1,611,115<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_spsc_EBPAssetHeldForInvestmentParticipantLoanCost', window );">Participant loans, cost</a></td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment', window );">Asset held for investment</a></td>
<td class="nump">257,523,403<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Collective trust funds| Prudential| Total Return Bond Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">2,059,033<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Collective trust funds| Union Bank and Trust Company| Morley Stable Value Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">1,978,692<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Collective trust funds| Vanguard| Target Retirement 2020 Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">568,917<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Collective trust funds| Vanguard| Target Retirement 2025 Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">2,953,520<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Collective trust funds| Vanguard| Target Retirement 2030 Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">10,395,498<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Collective trust funds| Vanguard| Target Retirement 2035 Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">12,269,543<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Collective trust funds| Vanguard| Target Retirement 2040 Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">13,314,586<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Collective trust funds| Vanguard| Target Retirement 2045 Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">30,463,895<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Collective trust funds| Vanguard| Target Retirement 2050 Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">33,428,634<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Collective trust funds| Vanguard| Target Retirement 2055 Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">37,114,282<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Collective trust funds| Vanguard| Target Retirement 2060 Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">18,064,883<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Collective trust funds| Vanguard| Target Retirement 2065 Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">6,469,746<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Collective trust funds| Vanguard| Target Retirement 2070 Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">189,844<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Collective trust funds| Vanguard| Target Retirement Income Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">1,275,476<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Mutual funds| Fidelity| Institutional 500 Index Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">31,661,967<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Mutual funds| Fidelity| MFS Research International Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">6,054,830<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Mutual funds| Fidelity| MFS Value Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">4,633,621<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Mutual funds| Fidelity| Mid-Cap Index Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">7,262,551<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Mutual funds| Fidelity| Small Cap Growth Index Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">3,534,899<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Mutual funds| Fidelity| Small Cap Index Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">405,166<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Mutual funds| Fidelity| Small Cap Value Index Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">3,140,478<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Mutual funds| Fidelity| Total International Index Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">2,289,161<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Mutual funds| Fidelity| US Bond Index Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">2,444,609<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Mutual funds| J.P. Morgan| Large Cap Growth Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">12,657,101<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Mutual funds| John Hancock| Disciplined Value Mid-Cap Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">53,231<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Mutual funds| PIMCO| Income Institutional Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">359,156<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: Mutual funds| Principal| Mid-Cap Fund</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">154,919<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Investment, Identifier [Axis]: SPS Commerce, Inc.| Common Stock</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">10,714,050<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Common collective trust funds</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">170,546,549<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Mutual funds</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue', window );">Asset held for investment, current value</a></td>
<td class="nump">$ 74,651,689<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate', window );">Interest rate</a></td>
<td class="nump">4.25%<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_LegalEntityAxis=spsc_EBP001Member', window );">Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems', window );"><strong>EBP, Schedule of Asset Held for Investment [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate', window );">Interest rate</a></td>
<td class="nump">9.50%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_spsc_EBPAssetHeldForInvestmentParticipantLoanCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>EBP, Asset Held for Investment, Participant Loan, Cost</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">spsc_EBPAssetHeldForInvestmentParticipantLoanCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>spsc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of total assets in schedule of asset held for investment of employee stock purchase, saving, or similar plan (employee benefit plan (EBP)). Includes, but is not limited to, current value of investment, participant loan, and plan interest in master trust.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule I))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (1)<br> -Publisher DOL-EBSA<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Current value of investment, excluding plan interest in master trust, in schedule of asset held for investment of employee stock purchase, saving, or similar plan (employee benefit plan (EBP)). Includes, but is not limited to, derivative, investment measured at net asset value per share as practical expedient, and insurance contract.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (1)(i)(D)<br> -Publisher DOL-EBSA<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule I))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after deemed distribution, of participant loan in schedule of asset held for investment of employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (1)(i)(D)<br> -Publisher DOL-EBSA<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule I))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Interest rate on participant loan in schedule of asset held for investment of employee stock purchase, saving, or similar plan (employee benefit plan (EBP)).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (1)(i)(D)<br> -Publisher DOL-EBSA<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule I))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanPlanNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Plan number of employee stock purchase, saving, or similar plan (employee benefit plan (EBP)), in three-digit numeric format.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule I))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule II))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (1)<br> -Publisher DOL-EBSA<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule III))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (3)<br> -Publisher DOL-EBSA<br><br>Reference 6: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (4)<br> -Publisher DOL-EBSA<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 6<br> -Paragraph d<br> -Subparagraph (1)<br> -Publisher DOL-EBSA<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 6<br> -Paragraph d<br> -Subparagraph (2)<br> -Publisher DOL-EBSA<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (2)<br> -Publisher DOL-EBSA<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanPlanNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>us-types:threeDigitItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (1)(i)(D)<br> -Publisher DOL-EBSA<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 962<br> -SubTopic 205<br> -Name Accounting Standards Codification<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.6A-05(a)(Schedule I))<br> -Publisher FASB<br> -URI https://asc.fasb.org/1943274/2147477804/962-205-S99-1<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (1)(i)(A)<br> -Publisher DOL-EBSA<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (1)(i)(C)<br> -Publisher DOL-EBSA<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Name Employee Retirement Income Security Act of 1974<br> -Number 2520<br> -Section 103<br> -Subsection 10<br> -Paragraph b<br> -Subparagraph (1)(i)(B)<br> -Publisher DOL-EBSA<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap-ebp_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LegalEntityAxis=spsc_EBP001Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LegalEntityAxis=spsc_EBP001Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Collective trust funds| Prudential| Total Return Bond Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Collective trust funds| Prudential| Total Return Bond Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Collective trust funds| Union Bank and Trust Company| Morley Stable Value Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Collective trust funds| Union Bank and Trust Company| Morley Stable Value Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2020 Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2020 Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2025 Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2025 Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2030 Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2030 Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2035 Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2035 Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2040 Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2040 Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2045 Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2045 Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2050 Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2050 Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2055 Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2055 Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2060 Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2060 Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2065 Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2065 Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2070 Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement 2070 Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement Income Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Collective trust funds| Vanguard| Target Retirement Income Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Mutual funds| Fidelity| Institutional 500 Index Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Mutual funds| Fidelity| Institutional 500 Index Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Mutual funds| Fidelity| MFS Research International Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Mutual funds| Fidelity| MFS Research International Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Mutual funds| Fidelity| MFS Value Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Mutual funds| Fidelity| MFS Value Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Mutual funds| Fidelity| Mid-Cap Index Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Mutual funds| Fidelity| Mid-Cap Index Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Mutual funds| Fidelity| Small Cap Growth Index Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Mutual funds| Fidelity| Small Cap Growth Index Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Mutual funds| Fidelity| Small Cap Index Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Mutual funds| Fidelity| Small Cap Index Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Mutual funds| Fidelity| Small Cap Value Index Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Mutual funds| Fidelity| Small Cap Value Index Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Mutual funds| Fidelity| Total International Index Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Mutual funds| Fidelity| Total International Index Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Mutual funds| Fidelity| US Bond Index Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Mutual funds| Fidelity| US Bond Index Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Mutual funds| J.P. Morgan| Large Cap Growth Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Mutual funds| J.P. Morgan| Large Cap Growth Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Mutual funds| John Hancock| Disciplined Value Mid-Cap Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Mutual funds| John Hancock| Disciplined Value Mid-Cap Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Mutual funds| PIMCO| Income Institutional Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Mutual funds| PIMCO| Income Institutional Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=Mutual funds| Principal| Mid-Cap Fund">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=Mutual funds| Principal| Mid-Cap Fund</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentIdentifierAxis=SPS Commerce, Inc.| Common Stock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentIdentifierAxis=SPS Commerce, Inc.| Common Stock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentTypeAxis=us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentTypeAxis=us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InvestmentTypeAxis=us-gaap_MutualFundMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InvestmentTypeAxis=us-gaap_MutualFundMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MinimumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_RangeAxis=srt_MaximumMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<FILENAME>report.css
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
/* Updated 2009-11-04 */
/* v2.2.0.24 */

/* DefRef Styles */
.report table.authRefData{
	background-color: #def;
	border: 2px solid #2F4497;
	font-size: 1em;
	position: absolute;
}

.report table.authRefData a {
	display: block;
	font-weight: bold;
}

.report table.authRefData p {
	margin-top: 0px;
}

.report table.authRefData .hide {
	background-color: #2F4497;
	padding: 1px 3px 0px 0px;
	text-align: right;
}

.report table.authRefData .hide a:hover {
	background-color: #2F4497;
}

.report table.authRefData .body {
	height: 150px;
	overflow: auto;
	width: 400px;
}

.report table.authRefData table{
	font-size: 1em;
}

/* Report Styles */
.pl a, .pl a:visited {
	color: black;
	text-decoration: none;
}

/* table */
.report {
	background-color: white;
	border: 2px solid #acf;
	clear: both;
	color: black;
	font: normal 8pt Helvetica, Arial, san-serif;
	margin-bottom: 2em;
}

.report hr {
	border: 1px solid #acf;
}

/* Top labels */
.report th {
	background-color: #acf;
	color: black;
	font-weight: bold;
	text-align: center;
}

.report th.void	{
	background-color: transparent;
	color: #000000;
	font: bold 10pt Helvetica, Arial, san-serif;
	text-align: left;
}

.report .pl {
	text-align: left;
	vertical-align: top;
	white-space: normal;
	width: 200px;
	white-space: normal; /* word-wrap: break-word; */
}

.report td.pl a.a {
	cursor: pointer;
	display: block;
	width: 200px;
	overflow: hidden;
}

.report td.pl div.a {
	width: 200px;
}

.report td.pl a:hover {
	background-color: #ffc;
}

/* Header rows... */
.report tr.rh {
	background-color: #acf;
	color: black;
	font-weight: bold;
}

/* Calendars... */
.report .rc {
	background-color: #f0f0f0;
}

/* Even rows... */
.report .re, .report .reu {
	background-color: #def;
}

.report .reu td {
	border-bottom: 1px solid black;
}

/* Odd rows... */
.report .ro, .report .rou {
	background-color: white;
}

.report .rou td {
	border-bottom: 1px solid black;
}

.report .rou table td, .report .reu table td {
	border-bottom: 0px solid black;
}

/* styles for footnote marker */
.report .fn {
	white-space: nowrap;
}

/* styles for numeric types */
.report .num, .report .nump {
	text-align: right;
	white-space: nowrap;
}

.report .nump {
	padding-left: 2em;
}

.report .nump {
	padding: 0px 0.4em 0px 2em;
}

/* styles for text types */
.report .text {
	text-align: left;
	white-space: normal;
}

.report .text .big {
	margin-bottom: 1em;
	width: 17em;
}

.report .text .more {
	display: none;
}

.report .text .note {
	font-style: italic;
	font-weight: bold;
}

.report .text .small {
	width: 10em;
}

.report sup {
	font-style: italic;
}

.report .outerFootnotes {
	font-size: 1em;
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>29
<FILENAME>Show.js
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
// Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission.  Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105.
var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0);
e.removeAttribute('id');a.parentNode.appendChild(e)}}
if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'}
e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>31
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.26.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>71</ContextCount>
  <ElementCount>63</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>15</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>5</UnitCount>
  <MyReports>
    <Report instance="spsc-20260629.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>0000001 - Document - Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.spscommerce.com/role/Cover</Role>
      <ShortName>Cover</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="spsc-20260629.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>0000002 - Statement - STATEMENTS OF NET ASSETS AVAILABLE FOR BENEFITS (Statement)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement</Role>
      <ShortName>STATEMENTS OF NET ASSETS AVAILABLE FOR BENEFITS (Statement)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="spsc-20260629.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>0000003 - Statement - STATEMENT OF CHANGES IN NET ASSETS AVAILABLE FOR BENEFITS (Statement)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement</Role>
      <ShortName>STATEMENT OF CHANGES IN NET ASSETS AVAILABLE FOR BENEFITS (Statement)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="spsc-20260629.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>0000004 - Disclosure - Plan Description</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.spscommerce.com/role/PlanDescription</Role>
      <ShortName>Plan Description</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="spsc-20260629.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>0000005 - Disclosure - Summary of Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.spscommerce.com/role/SummaryofSignificantAccountingPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="spsc-20260629.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>0000006 - Disclosure - Fair Value Measurements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.spscommerce.com/role/FairValueMeasurements</Role>
      <ShortName>Fair Value Measurements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="spsc-20260629.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>0000007 - Disclosure - Income Tax Status</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.spscommerce.com/role/IncomeTaxStatus</Role>
      <ShortName>Income Tax Status</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="spsc-20260629.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>0000008 - Disclosure - Party-in-Interest Transactions</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.spscommerce.com/role/PartyinInterestTransactions</Role>
      <ShortName>Party-in-Interest Transactions</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="spsc-20260629.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>0000009 - Disclosure - Form 5500, Schedule H, Part IV, Line 4(i) Schedule of Assets (Held at End of Year)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYear</Role>
      <ShortName>Form 5500, Schedule H, Part IV, Line 4(i) Schedule of Assets (Held at End of Year)</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="spsc-20260629.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>0000010 - Disclosure - Summary of Significant Accounting Policies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies</Role>
      <ShortName>Summary of Significant Accounting Policies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.spscommerce.com/role/SummaryofSignificantAccountingPolicies</ParentRole>
      <Position>10</Position>
    </Report>
    <Report instance="spsc-20260629.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>0000011 - Disclosure - Plan Description (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.spscommerce.com/role/PlanDescriptionTables</Role>
      <ShortName>Plan Description (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.spscommerce.com/role/PlanDescription</ParentRole>
      <Position>11</Position>
    </Report>
    <Report instance="spsc-20260629.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>0000012 - Disclosure - Fair Value Measurements (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.spscommerce.com/role/FairValueMeasurementsTables</Role>
      <ShortName>Fair Value Measurements (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.spscommerce.com/role/FairValueMeasurements</ParentRole>
      <Position>12</Position>
    </Report>
    <Report instance="spsc-20260629.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>0000013 - Disclosure - Plan Description - Narrative (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails</Role>
      <ShortName>Plan Description - Narrative (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="spsc-20260629.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>0000014 - Disclosure - Plan Description - Vesting Schedule of Employer Contribution (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.spscommerce.com/role/PlanDescriptionVestingScheduleofEmployerContributionDetails</Role>
      <ShortName>Plan Description - Vesting Schedule of Employer Contribution (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="spsc-20260629.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>0000015 - Disclosure - Summary of Significant Accounting Policies (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesDetails</Role>
      <ShortName>Summary of Significant Accounting Policies (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies</ParentRole>
      <Position>15</Position>
    </Report>
    <Report instance="spsc-20260629.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>0000016 - Disclosure - Fair Value Measurements - Schedule of Investment at Fair Value and NAV (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails</Role>
      <ShortName>Fair Value Measurements - Schedule of Investment at Fair Value and NAV (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="spsc-20260629.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>0000017 - Disclosure - Party-in-Interest Transactions (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.spscommerce.com/role/PartyinInterestTransactionsDetails</Role>
      <ShortName>Party-in-Interest Transactions (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.spscommerce.com/role/PartyinInterestTransactions</ParentRole>
      <Position>17</Position>
    </Report>
    <Report instance="spsc-20260629.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>0000018 - Disclosure - Form 5500, Schedule H, Part IV, Line 4(i) Schedule of Assets (Held at End of Year) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails</Role>
      <ShortName>Form 5500, Schedule H, Part IV, Line 4(i) Schedule of Assets (Held at End of Year) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYear</ParentRole>
      <Position>18</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="11-K" isDefinitelyFs="true" isUsgaap="true" original="spsc-20260629.htm">spsc-20260629.htm</File>
    <File>spsc-20260629.xsd</File>
    <File>spsc-20260629_cal.xml</File>
    <File>spsc-20260629_def.xml</File>
    <File>spsc-20260629_lab.xml</File>
    <File>spsc-20260629_pre.xml</File>
  </InputFiles>
  <SupplementalFiles>
    <File>spsc-20260629_g1.jpg</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy items="124">http://fasb.org/us-gaap-ebp/2026</BaseTaxonomy>
    <BaseTaxonomy items="9">http://xbrl.sec.gov/dei/2026</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>34
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "version": "2.2",
 "instance": {
  "spsc-20260629.htm": {
   "nsprefix": "spsc",
   "nsuri": "http://www.spscommerce.com/20260629",
   "dts": {
    "inline": {
     "local": [
      "spsc-20260629.htm"
     ]
    },
    "schema": {
     "local": [
      "spsc-20260629.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/2023/calculation-1.1.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://www.xbrl.org/dtr/type/2024-01-31/types.xsd",
      "https://xbrl.fasb.org/srt/2026/elts/srt-2026.xsd",
      "https://xbrl.fasb.org/srt/2026/elts/srt-roles-2026.xsd",
      "https://xbrl.fasb.org/srt/2026/elts/srt-types-2026.xsd",
      "https://xbrl.fasb.org/us-gaap/2026/ebp/elts/us-gaap-ebp-2026.xsd",
      "https://xbrl.fasb.org/us-gaap/2026/elts/us-gaap-2026.xsd",
      "https://xbrl.fasb.org/us-gaap/2026/elts/us-roles-2026.xsd",
      "https://xbrl.fasb.org/us-gaap/2026/elts/us-types-2026.xsd",
      "https://xbrl.sec.gov/country/2026/country-2026.xsd",
      "https://xbrl.sec.gov/dei/2026/dei-2026.xsd",
      "https://xbrl.sec.gov/stpr/2026/stpr-2026.xsd"
     ]
    },
    "calculationLink": {
     "local": [
      "spsc-20260629_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "spsc-20260629_def.xml"
     ]
    },
    "labelLink": {
     "local": [
      "spsc-20260629_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "spsc-20260629_pre.xml"
     ]
    }
   },
   "keyStandard": 53,
   "keyCustom": 10,
   "axisStandard": 5,
   "axisCustom": 1,
   "memberStandard": 11,
   "memberCustom": 4,
   "hidden": {
    "total": 6,
    "http://xbrl.sec.gov/dei/2026": 4,
    "http://www.spscommerce.com/20260629": 1,
    "http://fasb.org/us-gaap-ebp/2026": 1
   },
   "contextCount": 71,
   "entityCount": 1,
   "segmentCount": 15,
   "elementCount": 122,
   "unitCount": 5,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap-ebp/2026": 124,
    "http://xbrl.sec.gov/dei/2026": 9
   },
   "report": {
    "R1": {
     "role": "http://www.spscommerce.com/role/Cover",
     "longName": "0000001 - Document - Cover",
     "shortName": "Cover",
     "isDefault": "true",
     "groupType": "document",
     "subGroupType": "",
     "menuCat": "Cover",
     "order": "1",
     "firstAnchor": {
      "contextRef": "c-1",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-1",
      "name": "dei:DocumentType",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     }
    },
    "R2": {
     "role": "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement",
     "longName": "0000002 - Statement - STATEMENTS OF NET ASSETS AVAILABLE FOR BENEFITS (Statement)",
     "shortName": "STATEMENTS OF NET ASSETS AVAILABLE FOR BENEFITS (Statement)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "2",
     "firstAnchor": {
      "contextRef": "c-3",
      "name": "us-gaap-ebp:EmployeeBenefitPlanCash",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "0",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-3",
      "name": "us-gaap-ebp:EmployeeBenefitPlanCash",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "0",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     }
    },
    "R3": {
     "role": "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement",
     "longName": "0000003 - Statement - STATEMENT OF CHANGES IN NET ASSETS AVAILABLE FOR BENEFITS (Statement)",
     "shortName": "STATEMENT OF CHANGES IN NET ASSETS AVAILABLE FOR BENEFITS (Statement)",
     "isDefault": "false",
     "groupType": "statement",
     "subGroupType": "",
     "menuCat": "Statements",
     "order": "3",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "0",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "0",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     }
    },
    "R4": {
     "role": "http://www.spscommerce.com/role/PlanDescription",
     "longName": "0000004 - Disclosure - Plan Description",
     "shortName": "Plan Description",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "4",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanDescriptionOfPlanTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanDescriptionOfPlanTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     }
    },
    "R5": {
     "role": "http://www.spscommerce.com/role/SummaryofSignificantAccountingPolicies",
     "longName": "0000005 - Disclosure - Summary of Significant Accounting Policies",
     "shortName": "Summary of Significant Accounting Policies",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "5",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     }
    },
    "R6": {
     "role": "http://www.spscommerce.com/role/FairValueMeasurements",
     "longName": "0000006 - Disclosure - Fair Value Measurements",
     "shortName": "Fair Value Measurements",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "6",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     }
    },
    "R7": {
     "role": "http://www.spscommerce.com/role/IncomeTaxStatus",
     "longName": "0000007 - Disclosure - Income Tax Status",
     "shortName": "Income Tax Status",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "7",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanTaxStatusTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanTaxStatusTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     }
    },
    "R8": {
     "role": "http://www.spscommerce.com/role/PartyinInterestTransactions",
     "longName": "0000008 - Disclosure - Party-in-Interest Transactions",
     "shortName": "Party-in-Interest Transactions",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "8",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     }
    },
    "R9": {
     "role": "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYear",
     "longName": "0000009 - Disclosure - Form 5500, Schedule H, Part IV, Line 4(i) Schedule of Assets (Held at End of Year)",
     "shortName": "Form 5500, Schedule H, Part IV, Line 4(i) Schedule of Assets (Held at End of Year)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "",
     "menuCat": "Notes",
     "order": "9",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     }
    },
    "R10": {
     "role": "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies",
     "longName": "0000010 - Disclosure - Summary of Significant Accounting Policies (Policies)",
     "shortName": "Summary of Significant Accounting Policies (Policies)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "policies",
     "menuCat": "Policies",
     "order": "10",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     }
    },
    "R11": {
     "role": "http://www.spscommerce.com/role/PlanDescriptionTables",
     "longName": "0000011 - Disclosure - Plan Description (Tables)",
     "shortName": "Plan Description (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "11",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "spsc:EBPEmployerContributionVestingScheduleTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "spsc:EBPEmployerContributionVestingScheduleTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     }
    },
    "R12": {
     "role": "http://www.spscommerce.com/role/FairValueMeasurementsTables",
     "longName": "0000012 - Disclosure - Fair Value Measurements (Tables)",
     "shortName": "Fair Value Measurements (Tables)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "tables",
     "menuCat": "Tables",
     "order": "12",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     }
    },
    "R13": {
     "role": "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails",
     "longName": "0000013 - Disclosure - Plan Description - Narrative (Details)",
     "shortName": "Plan Description - Narrative (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "13",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "0",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-3",
      "name": "spsc:EBPMinimumAgeToParticipate",
      "unitRef": "year",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "unique": true
     }
    },
    "R14": {
     "role": "http://www.spscommerce.com/role/PlanDescriptionVestingScheduleofEmployerContributionDetails",
     "longName": "0000014 - Disclosure - Plan Description - Vesting Schedule of Employer Contribution (Details)",
     "shortName": "Plan Description - Vesting Schedule of Employer Contribution (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "14",
     "firstAnchor": {
      "contextRef": "c-12",
      "name": "spsc:EBPEmployerContributionVestingPercentage",
      "unitRef": "number",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-12",
      "name": "spsc:EBPEmployerContributionVestingPercentage",
      "unitRef": "number",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "INF",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     }
    },
    "R15": {
     "role": "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesDetails",
     "longName": "0000015 - Disclosure - Summary of Significant Accounting Policies (Details)",
     "shortName": "Summary of Significant Accounting Policies (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "15",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "0",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-7",
      "name": "us-gaap-ebp:EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage",
      "unitRef": "number",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "2",
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "unique": true
     }
    },
    "R16": {
     "role": "http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails",
     "longName": "0000016 - Disclosure - Fair Value Measurements - Schedule of Investment at Fair Value and NAV (Details)",
     "shortName": "Fair Value Measurements - Schedule of Investment at Fair Value and NAV (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "16",
     "firstAnchor": {
      "contextRef": "c-3",
      "name": "us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "0",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-29",
      "name": "us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "0",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "ix:continuation",
       "us-gaap-ebp:EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "unique": true
     }
    },
    "R17": {
     "role": "http://www.spscommerce.com/role/PartyinInterestTransactionsDetails",
     "longName": "0000017 - Disclosure - Party-in-Interest Transactions (Details)",
     "shortName": "Party-in-Interest Transactions (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "17",
     "firstAnchor": {
      "contextRef": "c-3",
      "name": "us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue",
      "unitRef": "usd",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "0",
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true
     },
     "uniqueAnchor": {
      "contextRef": "c-7",
      "name": "us-gaap-ebp:EmployeeBenefitPlanInvestmentNumberOfShares",
      "unitRef": "shares",
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": "0",
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "unique": true
     }
    },
    "R18": {
     "role": "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails",
     "longName": "0000018 - Disclosure - Form 5500, Schedule H, Part IV, Line 4(i) Schedule of Assets (Held at End of Year) (Details)",
     "shortName": "Form 5500, Schedule H, Part IV, Line 4(i) Schedule of Assets (Held at End of Year) (Details)",
     "isDefault": "false",
     "groupType": "disclosure",
     "subGroupType": "details",
     "menuCat": "Details",
     "order": "18",
     "firstAnchor": {
      "contextRef": "c-2",
      "name": "dei:EntityTaxIdentificationNumber",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "us-gaap-ebp:EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     },
     "uniqueAnchor": {
      "contextRef": "c-2",
      "name": "dei:EntityTaxIdentificationNumber",
      "unitRef": null,
      "xsiNil": "false",
      "lang": "en-US",
      "decimals": null,
      "ancestors": [
       "span",
       "div",
       "us-gaap-ebp:EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock",
       "body",
       "html"
      ],
      "reportCount": 1,
      "baseRef": "spsc-20260629.htm",
      "first": true,
      "unique": true
     }
    }
   },
   "tag": {
    "dei_AmendmentFlag": {
     "xbrltype": "booleanItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "AmendmentFlag",
     "presentation": [
      "http://www.spscommerce.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Amendment Flag",
        "label": "Amendment Flag",
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission."
       }
      }
     },
     "auth_ref": []
    },
    "dei_CoverAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "CoverAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "Cover [Abstract]",
        "documentation": "Cover page."
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap_DefinedBenefitPlanCommonCollectiveTrustMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "DefinedBenefitPlanCommonCollectiveTrustMember",
     "presentation": [
      "http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails",
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails",
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Common collective trust funds",
        "label": "Common Collective Trust [Member]"
       }
      }
     },
     "auth_ref": [
      "r99",
      "r108",
      "r111",
      "r118"
     ]
    },
    "dei_DocumentInformationLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "DocumentInformationLineItems",
     "presentation": [
      "http://www.spscommerce.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Information [Line Items]",
        "label": "Document Information [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentInformationTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "DocumentInformationTable",
     "presentation": [
      "http://www.spscommerce.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Information [Table]",
        "label": "Document Information [Table]",
        "documentation": "Container to support the formal attachment of each official or unofficial, public or private document as part of a submission package."
       }
      }
     },
     "auth_ref": []
    },
    "dei_DocumentType": {
     "xbrltype": "submissionTypeItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "DocumentType",
     "presentation": [
      "http://www.spscommerce.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Document Type",
        "label": "Document Type",
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'."
       }
      }
     },
     "auth_ref": []
    },
    "spsc_EBP001Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.spscommerce.com/20260629",
     "localname": "EBP001Member",
     "presentation": [
      "http://www.spscommerce.com/role/Cover",
      "http://www.spscommerce.com/role/FairValueMeasurements",
      "http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails",
      "http://www.spscommerce.com/role/FairValueMeasurementsTables",
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYear",
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails",
      "http://www.spscommerce.com/role/IncomeTaxStatus",
      "http://www.spscommerce.com/role/PartyinInterestTransactions",
      "http://www.spscommerce.com/role/PartyinInterestTransactionsDetails",
      "http://www.spscommerce.com/role/PlanDescription",
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails",
      "http://www.spscommerce.com/role/PlanDescriptionTables",
      "http://www.spscommerce.com/role/PlanDescriptionVestingScheduleofEmployerContributionDetails",
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement",
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement",
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPolicies",
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesDetails",
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EBP 001",
        "label": "EBP 001 [Member]",
        "documentation": "EBP 001"
       }
      }
     },
     "auth_ref": []
    },
    "spsc_EBPAssetHeldForInvestmentParticipantLoanCost": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.spscommerce.com/20260629",
     "localname": "EBPAssetHeldForInvestmentParticipantLoanCost",
     "crdr": "debit",
     "presentation": [
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Participant loans, cost",
        "label": "EBP, Asset Held for Investment, Participant Loan, Cost",
        "documentation": "EBP, Asset Held for Investment, Participant Loan, Cost"
       }
      }
     },
     "auth_ref": []
    },
    "spsc_EBPEmployerContributionVestingAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://www.spscommerce.com/20260629",
     "localname": "EBPEmployerContributionVestingAxis",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionVestingScheduleofEmployerContributionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EBP, Employer Contribution, Vesting [Axis]",
        "label": "EBP, Employer Contribution, Vesting [Axis]",
        "documentation": "EBP, Employer Contribution, Vesting"
       }
      }
     },
     "auth_ref": []
    },
    "spsc_EBPEmployerContributionVestingDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.spscommerce.com/20260629",
     "localname": "EBPEmployerContributionVestingDomain",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionVestingScheduleofEmployerContributionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EBP, Employer Contribution, Vesting [Domain]",
        "label": "EBP, Employer Contribution, Vesting [Domain]",
        "documentation": "EBP, Employer Contribution, Vesting [Domain]"
       }
      }
     },
     "auth_ref": []
    },
    "spsc_EBPEmployerContributionVestingPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://www.spscommerce.com/20260629",
     "localname": "EBPEmployerContributionVestingPercentage",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionVestingScheduleofEmployerContributionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Vesting Percentage",
        "label": "EBP, Employer Contribution, Vesting Percentage",
        "documentation": "EBP, Employer Contribution, Vesting Percentage"
       }
      }
     },
     "auth_ref": []
    },
    "spsc_EBPEmployerContributionVestingRequisiteServicePeriod": {
     "xbrltype": "durationItemType",
     "nsuri": "http://www.spscommerce.com/20260629",
     "localname": "EBPEmployerContributionVestingRequisiteServicePeriod",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionVestingScheduleofEmployerContributionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Employer contribution, requisite service period",
        "label": "EBP, Employer Contribution Vesting, Requisite Service Period",
        "documentation": "EBP, Employer Contribution Vesting, Requisite Service Period"
       }
      }
     },
     "auth_ref": []
    },
    "spsc_EBPEmployerContributionVestingScheduleTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://www.spscommerce.com/20260629",
     "localname": "EBPEmployerContributionVestingScheduleTableTextBlock",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Vesting Schedule of Employer Contribution",
        "label": "EBP, Employer Contribution, Vesting Schedule [Table Text Block]",
        "documentation": "EBP, Employer Contribution, Vesting Schedule"
       }
      }
     },
     "auth_ref": []
    },
    "spsc_EBPInvoluntaryCashOutLimit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.spscommerce.com/20260629",
     "localname": "EBPInvoluntaryCashOutLimit",
     "crdr": "credit",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Involuntary cash-out limit",
        "label": "EBP, Involuntary Cash-out Limit",
        "documentation": "EBP, Involuntary Cash-out Limit"
       }
      }
     },
     "auth_ref": []
    },
    "spsc_EBPInvoluntaryTransferToAQualifiedPlanLimit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://www.spscommerce.com/20260629",
     "localname": "EBPInvoluntaryTransferToAQualifiedPlanLimit",
     "crdr": "credit",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Involuntary transfer to a qualified plan limit",
        "label": "EBP, Involuntary Transfer To A Qualified Plan, Limit",
        "documentation": "EBP, Involuntary Transfer To A Qualified Plan, Limit"
       }
      }
     },
     "auth_ref": []
    },
    "spsc_EBPMinimumAgeToParticipate": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.spscommerce.com/20260629",
     "localname": "EBPMinimumAgeToParticipate",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Minimum age to participate",
        "label": "EBP, Minimum Age To Participate",
        "documentation": "EBP, Minimum Age To Participate"
       }
      }
     },
     "auth_ref": []
    },
    "spsc_EBPNoteReceivableFromParticipantBorrowingTerm": {
     "xbrltype": "durationItemType",
     "nsuri": "http://www.spscommerce.com/20260629",
     "localname": "EBPNoteReceivableFromParticipantBorrowingTerm",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Borrowing term",
        "label": "EBP, Note Receivable From Participant, Borrowing Term",
        "documentation": "EBP, Note Receivable From Participant, Borrowing Term"
       }
      }
     },
     "auth_ref": []
    },
    "spsc_EBPNoteReceivableFromParticipantNumberOfLoansAllowed": {
     "xbrltype": "integerItemType",
     "nsuri": "http://www.spscommerce.com/20260629",
     "localname": "EBPNoteReceivableFromParticipantNumberOfLoansAllowed",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Number of borrowing",
        "label": "EBP, Note Receivable From Participant, Number Of Loans Allowed",
        "documentation": "EBP, Note Receivable From Participant, Number Of Loans Allowed"
       }
      }
     },
     "auth_ref": []
    },
    "spsc_EBPRequisiteServicePeriod": {
     "xbrltype": "durationItemType",
     "nsuri": "http://www.spscommerce.com/20260629",
     "localname": "EBPRequisiteServicePeriod",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Requisite service period",
        "label": "EBP, Requisite Service Period",
        "documentation": "EBP, Requisite Service Period"
       }
      }
     },
     "auth_ref": []
    },
    "spsc_EBPVestingScheduleTrancheOneMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.spscommerce.com/20260629",
     "localname": "EBPVestingScheduleTrancheOneMember",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionVestingScheduleofEmployerContributionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Hire date prior to January 1, 2018, immediately",
        "label": "EBP, Vesting Schedule, Tranche One [Member]",
        "documentation": "EBP, Vesting Schedule, Tranche One"
       }
      }
     },
     "auth_ref": []
    },
    "spsc_EBPVestingScheduleTrancheThreeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.spscommerce.com/20260629",
     "localname": "EBPVestingScheduleTrancheThreeMember",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionVestingScheduleofEmployerContributionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Hire date January 1, 2018 or after, two years or more of service",
        "label": "EBP, Vesting Schedule, Tranche Three [Member]",
        "documentation": "EBP, Vesting Schedule, Tranche Three"
       }
      }
     },
     "auth_ref": []
    },
    "spsc_EBPVestingScheduleTrancheTwoMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://www.spscommerce.com/20260629",
     "localname": "EBPVestingScheduleTrancheTwoMember",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionVestingScheduleofEmployerContributionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Hire date January 1, 2018 or after, less than two years of service",
        "label": "EBP, Vesting Schedule, Tranche Two [Member]",
        "documentation": "EBP, Vesting Schedule, Tranche Two"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap-ebp_EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage",
     "presentation": [
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Concentration of employer's common stock to net assets, percentage",
        "label": "EBP, Risk and Uncertainty, Concentration of Investment at Fair Value to Net Assets, Percentage",
        "documentation": "Percentage of investment at fair value held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)), to net assets available for benefit representing concentration risk at or above applicable threshold."
       }
      }
     },
     "auth_ref": [
      "r153"
     ]
    },
    "us-gaap-ebp_EbpRiskAndUncertaintyPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EbpRiskAndUncertaintyPolicyTextBlock",
     "presentation": [
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Risk and Uncertainties and Concentration of Market Risk",
        "label": "EBP, Risk and Uncertainty [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for risk and uncertainty of employee stock purchase, saving, or similar plan (employee benefit plan (EBP)). Includes, but is not limited to, concentration risk."
       }
      }
     },
     "auth_ref": [
      "r42",
      "r43"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanAccountingPolicyAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "EBP, Accounting Policy, Accounting Standard Update, and Change in Accounting Principle [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanAccountingPolicyLineItems",
     "presentation": [
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPolicies",
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesDetails",
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EBP, Accounting Policy [Line Items]",
        "label": "EBP, Accounting Policy [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r158",
      "r168"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanAccountingPolicyTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanAccountingPolicyTable",
     "presentation": [
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPolicies",
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesDetails",
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EBP, Accounting Policy [Table]",
        "label": "EBP, Accounting Policy [Table]",
        "documentation": "Disclosure of information about accounting policy for employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r158",
      "r168"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanAssetAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanAssetAbstract",
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Assets",
        "label": "EBP, Asset [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanAssetHeldForInvestment",
     "crdr": "debit",
     "calculation": {
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Asset held for investment",
        "label": "EBP, Asset Held for Investment",
        "documentation": "Amount of total assets in schedule of asset held for investment of employee stock purchase, saving, or similar plan (employee benefit plan (EBP)). Includes, but is not limited to, current value of investment, participant loan, and plan interest in master trust."
       }
      }
     },
     "auth_ref": [
      "r126",
      "r165"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue",
     "crdr": "debit",
     "calculation": {
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails": {
       "parentTag": "us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Asset held for investment, current value",
        "label": "EBP, Asset Held for Investment, Investment, Excluding Plan Interest in Master Trust, Current Value",
        "documentation": "Current value of investment, excluding plan interest in master trust, in schedule of asset held for investment of employee stock purchase, saving, or similar plan (employee benefit plan (EBP)). Includes, but is not limited to, derivative, investment measured at net asset value per share as practical expedient, and insurance contract."
       }
      }
     },
     "auth_ref": [
      "r80",
      "r131"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution",
     "crdr": "debit",
     "calculation": {
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails": {
       "parentTag": "us-gaap-ebp_EmployeeBenefitPlanAssetHeldForInvestment",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Participant loans, current value",
        "label": "EBP, Asset Held for Investment, Participant Loan, after Deemed Distribution",
        "documentation": "Amount, after deemed distribution, of participant loan in schedule of asset held for investment of employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r80",
      "r131"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock",
     "presentation": [
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Basis of Accounting",
        "label": "EBP, Basis of Accounting [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for basis of accounting used to prepare financial statements of employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r158",
      "r168"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanCash": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanCash",
     "crdr": "debit",
     "calculation": {
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement": {
       "parentTag": "us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Non-interest bearing cash",
        "label": "EBP, Noninterest-Bearing Cash",
        "documentation": "Amount of noninterest-bearing cash held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r65"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease",
     "crdr": "credit",
     "calculation": {
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement": {
       "parentTag": "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease",
       "weight": -1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total deductions",
        "label": "EBP, Change in Net Asset Available for Benefit, Decrease",
        "documentation": "Amount of decrease in net asset available for benefit to participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r119",
      "r167"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseAbstract",
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Deductions",
        "label": "EBP, Change in Net Asset Available for Benefit, Decrease [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense",
     "crdr": "credit",
     "calculation": {
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement": {
       "parentTag": "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Administrative expenses",
        "label": "EBP, Change in Net Asset Available for Benefit, Decrease from Administrative Expense",
        "documentation": "Amount of decrease in net asset available for benefit from administrative expense incurred by employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r52",
      "r81",
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant",
     "crdr": "credit",
     "calculation": {
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement": {
       "parentTag": "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Benefits paid to participants",
        "label": "EBP, Change in Net Asset Available for Benefit, Decrease from Payment to Participant",
        "documentation": "Amount of decrease in net asset available for benefit from payment of benefit to participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)), including, but not limited to, withdrawal."
       }
      }
     },
     "auth_ref": [
      "r51",
      "r77",
      "r81",
      "r89",
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease",
     "crdr": "debit",
     "calculation": {
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement": {
       "parentTag": "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total investment activity and additions",
        "label": "EBP, Change in Net Asset Available for Benefit, Increase",
        "documentation": "Amount of increase in net asset available for benefit to participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r119",
      "r167"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseAbstract",
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investment Activity &amp; Additions",
        "label": "EBP, Change in Net Asset Available for Benefit, Increase [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease",
     "crdr": "debit",
     "calculation": {
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net increase in net assets available for benefits",
        "label": "EBP, Change in Net Asset Available for Benefit, Increase (Decrease)",
        "documentation": "Amount of increase (decrease) in net asset available for benefit to participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r0",
      "r81",
      "r119",
      "r171"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment",
     "crdr": "debit",
     "calculation": {
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement": {
       "parentTag": "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net appreciation in fair value of investments",
        "label": "EBP, Change in Net Asset Available for Benefit, Increase (Decrease) from Gain (Loss) on Investment",
        "documentation": "Amount of increase (decrease) in net asset available for benefit from realized and unrealized gain (loss) on investment held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r12",
      "r49",
      "r91",
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment",
     "crdr": "debit",
     "calculation": {
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement": {
       "parentTag": "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net investment income",
        "label": "EBP, Change in Net Asset Available for Benefit, Increase (Decrease) from Income (Loss) on Investment",
        "documentation": "Amount of increase (decrease) in net asset available for benefit from income (loss) on investment held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)). Includes, but is not limited to, realized and unrealized gain (loss) on investment."
       }
      }
     },
     "auth_ref": [
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestmentAbstract",
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investment income",
        "label": "EBP, Change in Net Asset Available for Benefit, Increase (Decrease) from Income (Loss) on Investment [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution",
     "crdr": "debit",
     "calculation": {
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement": {
       "parentTag": "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total contributions",
        "label": "EBP, Change in Net Asset Available for Benefit, Increase from Contribution",
        "documentation": "Amount of increase in net asset available for benefit from contribution to employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r119",
      "r167"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContributionAbstract",
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Contributions",
        "label": "EBP, Change in Net Asset Available for Benefit, Increase from Contribution [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash",
     "crdr": "debit",
     "calculation": {
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement": {
       "parentTag": "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Employer matching",
        "label": "EBP, Change in Net Asset Available for Benefit, Increase from Employer Contribution, Cash",
        "documentation": "Amount of increase in net asset available for benefit from cash contribution from employer of participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r50",
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment",
     "crdr": "debit",
     "calculation": {
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement": {
       "parentTag": "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Interest and dividend income",
        "label": "EBP, Change in Net Asset Available for Benefit, Increase from Interest and Dividend Income on Investment",
        "documentation": "Amount of increase in net asset available for benefit from interest and dividend income on investment held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r92"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant",
     "crdr": "debit",
     "calculation": {
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement": {
       "parentTag": "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Interest income on notes receivable from participants",
        "label": "EBP, Change in Net Asset Available for Benefit, Increase from Interest Income on Note Receivable from Participant",
        "documentation": "Amount of increase in net asset available for benefit from interest income on note receivable from participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r119",
      "r167"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover",
     "crdr": "debit",
     "calculation": {
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement": {
       "parentTag": "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Participant elective deferral",
        "label": "EBP, Change in Net Asset Available for Benefit, Increase from Participant Contribution, Excluding Rollover",
        "documentation": "Amount, excluding rollover, of increase in net asset available for benefit from contribution by participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r119",
      "r123",
      "r124",
      "r125",
      "r163",
      "r164"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover",
     "crdr": "debit",
     "calculation": {
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement": {
       "parentTag": "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Participant rollovers",
        "label": "EBP, Change in Net Asset Available for Benefit, Increase from Participant Contribution, Rollover",
        "documentation": "Amount of increase in net asset available for benefit from contribution transferred from another qualified plan or from individual retirement account of participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)). Excludes contribution for participant transmitted by employer of participant in EBP."
       }
      }
     },
     "auth_ref": [
      "r119",
      "r123",
      "r124",
      "r125",
      "r163",
      "r164"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan",
     "crdr": "debit",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails",
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement",
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Transfer in",
        "verboseLabel": "Total net assets transferred into the Plan",
        "netLabel": "Net assets transferred into the Plan",
        "label": "EBP, Change in Net Asset Available for Benefit, Transfer to (from) Plan",
        "documentation": "Amount of net asset available for benefit transferred to (from) employee stock purchase, saving, or similar plan (employee benefit plan (EBP)) from (to) external plan."
       }
      }
     },
     "auth_ref": [
      "r53",
      "r119",
      "r156",
      "r167"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanDescriptionOfPlanAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "EBP, Description of Plan and Accounting Change [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanDescriptionOfPlanLineItems",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescription",
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails",
      "http://www.spscommerce.com/role/PlanDescriptionTables",
      "http://www.spscommerce.com/role/PlanDescriptionVestingScheduleofEmployerContributionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EBP, Description of Plan [Line Items]",
        "label": "EBP, Description of Plan [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r155"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanDescriptionOfPlanTable",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescription",
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails",
      "http://www.spscommerce.com/role/PlanDescriptionTables",
      "http://www.spscommerce.com/role/PlanDescriptionVestingScheduleofEmployerContributionDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EBP, Description of Plan [Table]",
        "label": "EBP, Description of Plan [Table]",
        "documentation": "Disclosure of information about description of employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r155"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanDescriptionOfPlanTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanDescriptionOfPlanTextBlock",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescription"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Plan Description",
        "label": "EBP, Description of Plan [Text Block]",
        "documentation": "The entire disclosure for description of employee stock purchase, saving, or similar plan (employee benefit plan (EBP)). Includes, but is not limited to, vesting and allocation provisions and disposition of forfeiture."
       }
      }
     },
     "auth_ref": [
      "r2",
      "r3",
      "r4",
      "r54",
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanEmployerCommonStockMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanEmployerCommonStockMember",
     "presentation": [
      "http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails",
      "http://www.spscommerce.com/role/PartyinInterestTransactionsDetails",
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement",
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "SPS Commerce, Inc. common stock",
        "label": "EBP, Employer, Common Stock [Member]",
        "documentation": "Common stock issued by employer of participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r103",
      "r153",
      "r159",
      "r161",
      "r162",
      "r172",
      "r174",
      "r175"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanEmployerContributionMatchingPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanEmployerContributionMatchingPercentage",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Employer contribution, matching percentage",
        "label": "EBP, Employer Contribution, Matching Percentage",
        "documentation": "Percentage of employer matching contribution on eligible participant contribution to employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Compensation matched percentage",
        "label": "EBP, Employer Contribution, Participant Compensation Matched, Percentage",
        "documentation": "Percentage of participant compensation eligible for employer matching contribution for participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanExpensePolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanExpensePolicyTextBlock",
     "presentation": [
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Administrative Expenses",
        "label": "EBP, Expense [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for expense incurred by employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue",
     "crdr": "debit",
     "calculation": {
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement": {
       "parentTag": "us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails",
      "http://www.spscommerce.com/role/PartyinInterestTransactionsDetails",
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Total investments",
        "verboseLabel": "Investment, common stock value",
        "label": "EBP, Investment, Excluding Plan Interest in Master Trust, Fair Value",
        "documentation": "Fair value of investment, excluding plan interest in master trust, held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)). Includes, but is not limited to, derivative, investment measured at net asset value per share as practical expedient, and insurance contract not meeting fully-benefit responsive investment criteria."
       }
      }
     },
     "auth_ref": [
      "r11",
      "r13",
      "r14",
      "r21",
      "r22",
      "r24",
      "r25",
      "r31",
      "r32",
      "r34",
      "r84",
      "r97",
      "r98",
      "r99",
      "r100",
      "r101",
      "r102",
      "r103",
      "r104",
      "r105",
      "r106",
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanInvestmentFairValueAbstract",
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investments, at fair value",
        "label": "EBP, Investment, Fair Value [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanInvestmentFairValueAndNavAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "EBP, Investment, Fair Value and NAV [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanInvestmentFairValueAndNavLineItems",
     "presentation": [
      "http://www.spscommerce.com/role/FairValueMeasurements",
      "http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails",
      "http://www.spscommerce.com/role/FairValueMeasurementsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EBP, Investment, Fair Value and NAV [Line Items]",
        "label": "EBP, Investment, Fair Value and NAV [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r26",
      "r27",
      "r28",
      "r31",
      "r32",
      "r34",
      "r35",
      "r36",
      "r37",
      "r38",
      "r39",
      "r40",
      "r56",
      "r75",
      "r97",
      "r98",
      "r99",
      "r100",
      "r101",
      "r102",
      "r103",
      "r104",
      "r105",
      "r106"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanInvestmentFairValueAndNavTable",
     "presentation": [
      "http://www.spscommerce.com/role/FairValueMeasurements",
      "http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails",
      "http://www.spscommerce.com/role/FairValueMeasurementsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EBP, Investment, Fair Value and NAV [Table]",
        "label": "EBP, Investment, Fair Value and NAV [Table]",
        "documentation": "Disclosure of information about fair value of investment held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)), including, but not limited to, fair value measured at net asset value per share as practical expedient (NAV)."
       }
      }
     },
     "auth_ref": [
      "r25",
      "r26",
      "r27",
      "r28",
      "r31",
      "r32",
      "r34",
      "r35",
      "r36",
      "r37",
      "r38",
      "r39",
      "r40",
      "r56",
      "r75",
      "r87",
      "r97",
      "r98",
      "r99",
      "r100",
      "r101",
      "r102",
      "r103",
      "r104",
      "r105",
      "r106"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock",
     "presentation": [
      "http://www.spscommerce.com/role/FairValueMeasurementsTables"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Schedule of Investment at Fair Value and NAV",
        "label": "EBP, Investment, Fair Value and NAV [Table Text Block]",
        "documentation": "Tabular disclosure of fair value of investment held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)), including, but not limited to, fair value measured at net asset value per share as practical expedient (NAV)."
       }
      }
     },
     "auth_ref": [
      "r23",
      "r30",
      "r32",
      "r33",
      "r41",
      "r119",
      "r169",
      "r170",
      "r173"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock",
     "presentation": [
      "http://www.spscommerce.com/role/FairValueMeasurements"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value Measurements",
        "label": "EBP, Investment, Fair Value and NAV [Text Block]",
        "documentation": "The entire disclosure for fair value of investment held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP)), including, but not limited to, fair value measured at net asset value per share as practical expedient (NAV)."
       }
      }
     },
     "auth_ref": [
      "r26",
      "r28",
      "r29",
      "r31",
      "r32",
      "r34",
      "r37",
      "r38",
      "r39",
      "r40",
      "r56",
      "r75",
      "r76",
      "r84",
      "r85",
      "r119",
      "r122"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanInvestmentNumberOfShares": {
     "xbrltype": "sharesItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanInvestmentNumberOfShares",
     "presentation": [
      "http://www.spscommerce.com/role/PartyinInterestTransactionsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investment, number of common stock (in shares)",
        "label": "EBP, Investment, Number of Shares",
        "documentation": "Number of shares or units of investment held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r57",
      "r80",
      "r129",
      "r134",
      "r137",
      "r138",
      "r141"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanInvestmentPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanInvestmentPolicyTextBlock",
     "presentation": [
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investment Valuation and Income (Loss) Recognition",
        "label": "EBP, Investment [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for investment held by employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r83",
      "r87",
      "r88",
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanNetAssetAvailableForBenefit",
     "crdr": "debit",
     "calculation": {
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement": {
       "parentTag": null,
       "weight": null,
       "order": null,
       "root": true
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement",
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Net assets available for benefits",
        "periodStartLabel": "Beginning of year",
        "periodEndLabel": "End of year",
        "label": "EBP, Net Asset Available for Benefit",
        "documentation": "Amount of asset less liability available to pay benefit of participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)), including, but not limited to, aggregation of participants' individual account balances."
       }
      }
     },
     "auth_ref": [
      "r1",
      "r48",
      "r70",
      "r78",
      "r79",
      "r86",
      "r95",
      "r119",
      "r120",
      "r166"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanNetAssetAvailableForBenefitAbstract",
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Net assets available for benefits",
        "label": "EBP, Net Asset Available for Benefit [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipant": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanNoteReceivableFromParticipant",
     "crdr": "debit",
     "calculation": {
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement": {
       "parentTag": "us-gaap-ebp_EmployeeBenefitPlanReceivable",
       "weight": 1.0,
       "order": 2.0
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Notes receivable from participants",
        "label": "EBP, Note Receivable from Participant",
        "documentation": "Amount of unpaid principal plus accrued but unpaid interest for loan from participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r82",
      "r119",
      "r166"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount",
     "crdr": "debit",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maximum borrowing amount",
        "label": "EBP, Note Receivable from Participant, Account, Maximum Borrowing, Amount",
        "documentation": "Amount of maximum account balance that participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)) can borrow."
       }
      }
     },
     "auth_ref": [
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maximum borrowing to total account, percentage",
        "label": "EBP, Note Receivable from Participant, Account, Maximum Borrowing, to Total Account, Percentage",
        "documentation": "Percentage of maximum account balance that participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)) can borrow to total participant account balance."
       }
      }
     },
     "auth_ref": [
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount",
     "crdr": "debit",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Minimum borrowing amount",
        "label": "EBP, Note Receivable from Participant, Account, Minimum Borrowing, Amount",
        "documentation": "Amount of minimum account balance that participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)) can borrow."
       }
      }
     },
     "auth_ref": [
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock",
     "presentation": [
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Notes Receivable from Participants",
        "label": "EBP, Note Receivable from Participant [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for note receivable from participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanOtherReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanOtherReceivable",
     "crdr": "debit",
     "calculation": {
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement": {
       "parentTag": "us-gaap-ebp_EmployeeBenefitPlanReceivable",
       "weight": 1.0,
       "order": 1.0
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Other receivables",
        "label": "EBP, Other Receivable",
        "documentation": "Amount of receivable for employee stock purchase, saving, or similar plan (employee benefit plan (EBP)), classified as other."
       }
      }
     },
     "auth_ref": [
      "r160"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Automatic deferral rate",
        "label": "EBP, Participant Contribution, Automatic, Deferral Rate",
        "documentation": "Percentage of eligible compensation contributed for participant automatically enrolled in employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage",
     "presentation": [
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maximum annual compensation to total compensation, percentage",
        "label": "EBP, Participant Contribution, Pretax, Maximum Annual Compensation to Total Compensation, Percentage",
        "documentation": "Percentage of maximum pretax annual compensation that participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP)), is permitted to contribute to total pretax annual compensation."
       }
      }
     },
     "auth_ref": [
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanParticipantLoanInterestRate": {
     "xbrltype": "percentItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanParticipantLoanInterestRate",
     "presentation": [
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Interest rate",
        "label": "EBP, Asset Held for Investment, Participant Loan, Interest Rate",
        "documentation": "Interest rate on participant loan in schedule of asset held for investment of employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r80",
      "r131"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock",
     "presentation": [
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Benefits Paid to Participants &amp; Contributions",
        "label": "EBP, Payment to Participant [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for payment of benefit to participant in employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanPlanNumber": {
     "xbrltype": "threeDigitItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanPlanNumber",
     "presentation": [
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Plan number",
        "label": "EBP, Plan Number",
        "documentation": "Plan number of employee stock purchase, saving, or similar plan (employee benefit plan (EBP)), in three-digit numeric format."
       }
      }
     },
     "auth_ref": [
      "r126",
      "r132",
      "r137",
      "r138",
      "r139",
      "r147",
      "r165",
      "r166",
      "r167"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanReceivable": {
     "xbrltype": "monetaryItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanReceivable",
     "crdr": "debit",
     "calculation": {
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement": {
       "parentTag": "us-gaap-ebp_EmployeeBenefitPlanNetAssetAvailableForBenefit",
       "weight": 1.0,
       "order": 3.0
      }
     },
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "totalLabel": "Total receivables",
        "label": "EBP, Receivable",
        "documentation": "Amount of receivable of employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r119",
      "r166"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "EBP, Related Party and Party-in-Interest Transactions [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsLineItems",
     "presentation": [
      "http://www.spscommerce.com/role/PartyinInterestTransactions",
      "http://www.spscommerce.com/role/PartyinInterestTransactionsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EBP, Related Party and Party-in-Interest Transactions [Line Items]",
        "label": "EBP, Related Party and Party-in-Interest Transactions [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r47",
      "r158",
      "r168"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTable",
     "presentation": [
      "http://www.spscommerce.com/role/PartyinInterestTransactions",
      "http://www.spscommerce.com/role/PartyinInterestTransactionsDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EBP, Related Party and Party-in-Interest Transactions [Table]",
        "label": "EBP, Related Party and Party-in-Interest Transactions [Table]",
        "documentation": "Disclosure of information about related party and party-in-interest transactions with employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r47",
      "r158",
      "r168"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock",
     "presentation": [
      "http://www.spscommerce.com/role/PartyinInterestTransactions"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Party-in-Interest Transactions",
        "label": "EBP, Related Party and Party-in-Interest Transactions [Text Block]",
        "documentation": "The entire disclosure for related party and party-in-interest transactions with employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r44",
      "r45",
      "r46",
      "r47",
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "EBP, Schedule of Asset Held for Investment [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentLineItems",
     "presentation": [
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYear",
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EBP, Schedule of Asset Held for Investment [Line Items]",
        "label": "EBP, Schedule of Asset Held for Investment [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r80",
      "r128",
      "r129",
      "r130",
      "r131"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTable",
     "presentation": [
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYear",
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EBP, Schedule of Asset Held for Investment [Table]",
        "label": "EBP, Schedule of Asset Held for Investment [Table]",
        "documentation": "Disclosure of information about schedule of asset held for investment of employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r80",
      "r128",
      "r129",
      "r130",
      "r131"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock",
     "presentation": [
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYear"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Form 5500, Schedule H, Part IV, Line 4(i) Schedule of Assets (Held at End of Year)",
        "label": "EBP, Schedule of Asset Held for Investment [Text Block]",
        "documentation": "The entire disclosure for schedule of asset held for investment for employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r127",
      "r165"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "EBP, Statement of Change in Net Asset Available for Benefit [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitLineItems",
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EBP, Statement of Change in Net Asset Available for Benefit [Line Items]",
        "label": "EBP, Statement of Change in Net Asset Available for Benefit [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r72",
      "r73",
      "r74",
      "r86"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanStatementOfChangeInNetAssetAvailableForBenefitTable",
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EBP, Statement of Change in Net Asset Available for Benefit [Table]",
        "label": "EBP, Statement of Change in Net Asset Available for Benefit [Table]",
        "documentation": "Presentation of information about change in net asset available for benefit for employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r72",
      "r73",
      "r74",
      "r86"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "EBP, Statement of Net Asset Available for Benefit [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitLineItems",
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EBP, Statement of Net Asset Available for Benefit [Line Items]",
        "label": "EBP, Statement of Net Asset Available for Benefit [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r59",
      "r60",
      "r61",
      "r62",
      "r63",
      "r64",
      "r66",
      "r67",
      "r68",
      "r69",
      "r84",
      "r86",
      "r97",
      "r98",
      "r99",
      "r100",
      "r101",
      "r102",
      "r103",
      "r104",
      "r105",
      "r106"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanStatementOfNetAssetAvailableForBenefitTable",
     "presentation": [
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EBP, Statement of Net Asset Available for Benefit [Table]",
        "label": "EBP, Statement of Net Asset Available for Benefit [Table]",
        "documentation": "Presentation of information about net asset available for benefit for employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r59",
      "r60",
      "r61",
      "r62",
      "r63",
      "r64",
      "r66",
      "r67",
      "r68",
      "r69",
      "r84",
      "r86",
      "r97",
      "r98",
      "r99",
      "r100",
      "r101",
      "r102",
      "r103",
      "r104",
      "r105"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock",
     "presentation": [
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Summary of Significant Accounting Policies",
        "label": "EBP, Summary of Accounting Policy [Text Block]",
        "documentation": "The entire disclosure for summary of accounting policy used to prepare financial statement of employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r2",
      "r3",
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanTaxStatusAbstract": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanTaxStatusAbstract",
     "lang": {
      "en-us": {
       "role": {
        "label": "EBP, Tax Status [Abstract]"
       }
      }
     },
     "auth_ref": []
    },
    "us-gaap-ebp_EmployeeBenefitPlanTaxStatusLineItems": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanTaxStatusLineItems",
     "presentation": [
      "http://www.spscommerce.com/role/IncomeTaxStatus"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EBP, Tax Status [Line Items]",
        "label": "EBP, Tax Status [Line Items]",
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table."
       }
      }
     },
     "auth_ref": [
      "r157"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanTaxStatusTable": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanTaxStatusTable",
     "presentation": [
      "http://www.spscommerce.com/role/IncomeTaxStatus"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "EBP, Tax Status [Table]",
        "label": "EBP, Tax Status [Table]",
        "documentation": "Disclosure of information about tax status of employee stock purchase, saving, or similar plan (employee benefit plan (EBP)). Includes, but is not limited to, information concerning whether tax ruling or determination letter was obtained and principal assumption on which plan relied in not making provision for federal income tax."
       }
      }
     },
     "auth_ref": [
      "r157"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanTaxStatusTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanTaxStatusTextBlock",
     "presentation": [
      "http://www.spscommerce.com/role/IncomeTaxStatus"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Income Tax Status",
        "label": "EBP, Tax Status [Text Block]",
        "documentation": "The entire disclosure for tax status of employee stock purchase, saving, or similar plan (employee benefit plan (EBP)). Includes, but is not limited to, information concerning whether tax ruling or determination letter was obtained and principal assumption on which plan relied in not making provision for federal income tax."
       }
      }
     },
     "auth_ref": [
      "r55",
      "r58",
      "r119"
     ]
    },
    "us-gaap-ebp_EmployeeBenefitPlanUseOfEstimatePolicyTextBlock": {
     "xbrltype": "textBlockItemType",
     "nsuri": "http://fasb.org/us-gaap-ebp/2026",
     "localname": "EmployeeBenefitPlanUseOfEstimatePolicyTextBlock",
     "presentation": [
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Use of Estimates",
        "label": "EBP, Use of Estimate [Policy Text Block]",
        "documentation": "Disclosure of accounting policy for use of estimate in preparation of financial statement of employee stock purchase, saving, or similar plan (employee benefit plan (EBP))."
       }
      }
     },
     "auth_ref": [
      "r5",
      "r6",
      "r7",
      "r8",
      "r9",
      "r10",
      "r119"
     ]
    },
    "dei_EntityCentralIndexKey": {
     "xbrltype": "centralIndexKeyItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "EntityCentralIndexKey",
     "presentation": [
      "http://www.spscommerce.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Central Index Key",
        "label": "Entity Central Index Key",
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK."
       }
      }
     },
     "auth_ref": [
      "r121"
     ]
    },
    "dei_EntityDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "EntityDomain",
     "presentation": [
      "http://www.spscommerce.com/role/Cover",
      "http://www.spscommerce.com/role/FairValueMeasurements",
      "http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails",
      "http://www.spscommerce.com/role/FairValueMeasurementsTables",
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYear",
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails",
      "http://www.spscommerce.com/role/IncomeTaxStatus",
      "http://www.spscommerce.com/role/PartyinInterestTransactions",
      "http://www.spscommerce.com/role/PartyinInterestTransactionsDetails",
      "http://www.spscommerce.com/role/PlanDescription",
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails",
      "http://www.spscommerce.com/role/PlanDescriptionTables",
      "http://www.spscommerce.com/role/PlanDescriptionVestingScheduleofEmployerContributionDetails",
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement",
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement",
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPolicies",
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesDetails",
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity [Domain]",
        "label": "Entity [Domain]",
        "documentation": "All the names of the entities being reported upon in a document. Any legal structure used to conduct activities or to hold assets. Some examples of such structures are corporations, partnerships, limited liability companies, grantor trusts, and other trusts. This item does not include business and geographical segments which are included in the geographical or business segments domains."
       }
      }
     },
     "auth_ref": []
    },
    "dei_EntityRegistrantName": {
     "xbrltype": "normalizedStringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "EntityRegistrantName",
     "presentation": [
      "http://www.spscommerce.com/role/Cover"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity Registrant Name",
        "label": "Entity Registrant Name",
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC."
       }
      }
     },
     "auth_ref": [
      "r121"
     ]
    },
    "dei_EntityTaxIdentificationNumber": {
     "xbrltype": "employerIdItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "EntityTaxIdentificationNumber",
     "presentation": [
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Entity tax identification number",
        "label": "Entity Tax Identification Number",
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS."
       }
      }
     },
     "auth_ref": [
      "r121"
     ]
    },
    "us-gaap_FairValueByFairValueHierarchyLevelAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FairValueByFairValueHierarchyLevelAxis",
     "presentation": [
      "http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value Hierarchy and NAV [Axis]",
        "label": "Fair Value Hierarchy and NAV [Axis]"
       }
      }
     },
     "auth_ref": [
      "r25",
      "r26",
      "r27",
      "r28",
      "r31",
      "r32",
      "r34",
      "r85",
      "r119"
     ]
    },
    "us-gaap_FairValueInputsLevel12And3Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FairValueInputsLevel12And3Member",
     "presentation": [
      "http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value, Inputs, Level 1, Level 2, and Level 3",
        "label": "Fair Value, Inputs, Level 1, Level 2, and Level 3 [Member]"
       }
      }
     },
     "auth_ref": [
      "r154",
      "r170",
      "r172"
     ]
    },
    "us-gaap_FairValueInputsLevel1Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FairValueInputsLevel1Member",
     "presentation": [
      "http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Level 1",
        "label": "Fair Value, Inputs, Level 1 [Member]"
       }
      }
     },
     "auth_ref": [
      "r25",
      "r31",
      "r107",
      "r119"
     ]
    },
    "us-gaap_FairValueInputsLevel2Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FairValueInputsLevel2Member",
     "presentation": [
      "http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Level 2",
        "label": "Fair Value, Inputs, Level 2 [Member]"
       }
      }
     },
     "auth_ref": [
      "r25",
      "r26",
      "r31",
      "r107",
      "r119"
     ]
    },
    "us-gaap_FairValueInputsLevel3Member": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FairValueInputsLevel3Member",
     "presentation": [
      "http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Level 3",
        "label": "Fair Value, Inputs, Level 3 [Member]"
       }
      }
     },
     "auth_ref": [
      "r25",
      "r26",
      "r27",
      "r28",
      "r31",
      "r32",
      "r107",
      "r119"
     ]
    },
    "us-gaap_FairValueMeasuredAtNetAssetValuePerShareMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FairValueMeasuredAtNetAssetValuePerShareMember",
     "presentation": [
      "http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "NAV",
        "label": "Fair Value Measured at Net Asset Value Per Share [Member]"
       }
      }
     },
     "auth_ref": [
      "r34",
      "r107"
     ]
    },
    "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "FairValueMeasurementsFairValueHierarchyDomain",
     "presentation": [
      "http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Fair Value Hierarchy and NAV [Domain]",
        "label": "Fair Value Hierarchy and NAV [Domain]"
       }
      }
     },
     "auth_ref": [
      "r25",
      "r26",
      "r27",
      "r28",
      "r31",
      "r32",
      "r34",
      "r85",
      "r119"
     ]
    },
    "us-gaap_InvestmentIdentifierAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "InvestmentIdentifierAxis",
     "presentation": [
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investment, Identifier [Axis]",
        "label": "Investment, Identifier [Axis]"
       }
      }
     },
     "auth_ref": [
      "r80",
      "r128",
      "r129",
      "r130",
      "r131",
      "r133",
      "r134",
      "r135",
      "r136",
      "r137",
      "r138",
      "r140",
      "r141",
      "r142",
      "r143",
      "r144",
      "r145",
      "r146",
      "r148",
      "r149",
      "r150",
      "r151",
      "r152"
     ]
    },
    "us-gaap_InvestmentTypeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "InvestmentTypeAxis",
     "presentation": [
      "http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails",
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails",
      "http://www.spscommerce.com/role/PartyinInterestTransactionsDetails",
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement",
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investment Type [Axis]",
        "label": "Investment Type [Axis]"
       }
      }
     },
     "auth_ref": [
      "r11",
      "r12",
      "r13",
      "r14",
      "r15",
      "r16",
      "r17",
      "r18",
      "r19",
      "r20",
      "r21",
      "r24",
      "r25",
      "r26",
      "r27",
      "r28",
      "r31",
      "r32",
      "r34",
      "r35",
      "r36",
      "r37",
      "r38",
      "r39",
      "r40",
      "r56",
      "r59",
      "r60",
      "r61",
      "r62",
      "r63",
      "r64",
      "r71",
      "r72",
      "r73",
      "r74",
      "r75",
      "r80",
      "r84",
      "r90",
      "r93",
      "r94",
      "r96",
      "r97",
      "r98",
      "r99",
      "r100",
      "r101",
      "r102",
      "r103",
      "r104",
      "r105",
      "r106",
      "r109",
      "r110",
      "r111",
      "r112",
      "r113",
      "r114",
      "r115",
      "r116",
      "r117",
      "r119",
      "r120",
      "r131",
      "r153",
      "r166"
     ]
    },
    "us-gaap_InvestmentTypeCategorizationMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "InvestmentTypeCategorizationMember",
     "presentation": [
      "http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails",
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails",
      "http://www.spscommerce.com/role/PartyinInterestTransactionsDetails",
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement",
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Investments [Domain]",
        "label": "Investments [Domain]"
       }
      }
     },
     "auth_ref": [
      "r11",
      "r12",
      "r13",
      "r14",
      "r15",
      "r16",
      "r17",
      "r18",
      "r19",
      "r20",
      "r21",
      "r24",
      "r25",
      "r26",
      "r27",
      "r28",
      "r31",
      "r32",
      "r34",
      "r35",
      "r36",
      "r37",
      "r38",
      "r39",
      "r40",
      "r56",
      "r59",
      "r60",
      "r61",
      "r62",
      "r63",
      "r64",
      "r71",
      "r72",
      "r73",
      "r74",
      "r75",
      "r80",
      "r84",
      "r90",
      "r93",
      "r94",
      "r96",
      "r97",
      "r98",
      "r99",
      "r100",
      "r101",
      "r102",
      "r103",
      "r104",
      "r105",
      "r106",
      "r109",
      "r110",
      "r111",
      "r112",
      "r113",
      "r114",
      "r115",
      "r116",
      "r117",
      "r119",
      "r120",
      "r131",
      "r153",
      "r166"
     ]
    },
    "dei_LegalEntityAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://xbrl.sec.gov/dei/2026",
     "localname": "LegalEntityAxis",
     "presentation": [
      "http://www.spscommerce.com/role/Cover",
      "http://www.spscommerce.com/role/FairValueMeasurements",
      "http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails",
      "http://www.spscommerce.com/role/FairValueMeasurementsTables",
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYear",
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails",
      "http://www.spscommerce.com/role/IncomeTaxStatus",
      "http://www.spscommerce.com/role/PartyinInterestTransactions",
      "http://www.spscommerce.com/role/PartyinInterestTransactionsDetails",
      "http://www.spscommerce.com/role/PlanDescription",
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails",
      "http://www.spscommerce.com/role/PlanDescriptionTables",
      "http://www.spscommerce.com/role/PlanDescriptionVestingScheduleofEmployerContributionDetails",
      "http://www.spscommerce.com/role/STATEMENTOFCHANGESINNETASSETSAVAILABLEFORBENEFITSStatement",
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement",
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPolicies",
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesDetails",
      "http://www.spscommerce.com/role/SummaryofSignificantAccountingPoliciesPolicies"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Legal Entity [Axis]",
        "label": "Legal Entity [Axis]",
        "documentation": "The set of legal entities associated with a report."
       }
      }
     },
     "auth_ref": []
    },
    "srt_MaximumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "MaximumMember",
     "presentation": [
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails",
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Maximum",
        "label": "Maximum [Member]"
       }
      }
     },
     "auth_ref": [
      "r28",
      "r119",
      "r131",
      "r165"
     ]
    },
    "srt_MinimumMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "MinimumMember",
     "presentation": [
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails",
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Minimum",
        "label": "Minimum [Member]"
       }
      }
     },
     "auth_ref": [
      "r28",
      "r119",
      "r131",
      "r165"
     ]
    },
    "us-gaap_MutualFundMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/us-gaap/2026",
     "localname": "MutualFundMember",
     "presentation": [
      "http://www.spscommerce.com/role/FairValueMeasurementsScheduleofInvestmentatFairValueandNAVDetails",
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails",
      "http://www.spscommerce.com/role/STATEMENTSOFNETASSETSAVAILABLEFORBENEFITSStatement"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Mutual funds",
        "label": "Mutual Fund [Member]"
       }
      }
     },
     "auth_ref": [
      "r97",
      "r108",
      "r109",
      "r118",
      "r119",
      "r120"
     ]
    },
    "srt_RangeAxis": {
     "xbrltype": "stringItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "RangeAxis",
     "presentation": [
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails",
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Statistical Measurement [Axis]",
        "label": "Statistical Measurement [Axis]"
       }
      }
     },
     "auth_ref": [
      "r28",
      "r119",
      "r131",
      "r165"
     ]
    },
    "srt_RangeMember": {
     "xbrltype": "domainItemType",
     "nsuri": "http://fasb.org/srt/2026",
     "localname": "RangeMember",
     "presentation": [
      "http://www.spscommerce.com/role/Form5500ScheduleHPartIVLine4iScheduleofAssetsHeldatEndofYearDetails",
      "http://www.spscommerce.com/role/PlanDescriptionNarrativeDetails"
     ],
     "lang": {
      "en-us": {
       "role": {
        "terseLabel": "Statistical Measurement [Domain]",
        "label": "Statistical Measurement [Domain]"
       }
      }
     },
     "auth_ref": [
      "r28",
      "r119",
      "r131",
      "r165"
     ]
    }
   }
  }
 },
 "std_ref": {
  "r0": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r1": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1"
  },
  "r2": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "5",
   "Subparagraph": "(SAB Topic 11.M.Q2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480530/250-10-S99-5"
  },
  "r3": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "250",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "6",
   "Subparagraph": "(SAB Topic 11.M)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480530/250-10-S99-6"
  },
  "r4": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-1"
  },
  "r5": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-1"
  },
  "r6": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-1"
  },
  "r7": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-11"
  },
  "r8": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "11",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-11"
  },
  "r9": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "12",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-12"
  },
  "r10": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "275",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-4"
  },
  "r11": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A"
  },
  "r12": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A"
  },
  "r13": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B"
  },
  "r14": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4B",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B"
  },
  "r15": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4K",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4K"
  },
  "r16": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4K",
   "Subparagraph": "(a)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4K"
  },
  "r17": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4K",
   "Subparagraph": "(a)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4K"
  },
  "r18": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4K",
   "Subparagraph": "(a)(3)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4K"
  },
  "r19": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4K",
   "Subparagraph": "(a)(4)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4K"
  },
  "r20": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4K",
   "Subparagraph": "(a)(5)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4K"
  },
  "r21": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4K",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4K"
  },
  "r22": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-7A"
  },
  "r23": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r24": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r25": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r26": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r27": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r28": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(bbb)(2)(i)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r29": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2"
  },
  "r30": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3"
  },
  "r31": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3"
  },
  "r32": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3"
  },
  "r33": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r34": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r35": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r36": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r37": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r38": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r39": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r40": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "6A",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A"
  },
  "r41": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-8"
  },
  "r42": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(c)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-21"
  },
  "r43": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "21",
   "Subparagraph": "(d)(1)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-21"
  },
  "r44": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-1"
  },
  "r45": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-1"
  },
  "r46": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-1"
  },
  "r47": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "850",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147483326/850-10-50-1"
  },
  "r48": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477063/962-205-45-2"
  },
  "r49": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477063/962-205-45-7"
  },
  "r50": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477063/962-205-45-7"
  },
  "r51": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477063/962-205-45-7"
  },
  "r52": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477063/962-205-45-7"
  },
  "r53": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477063/962-205-45-8"
  },
  "r54": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478416/962-205-50-1"
  },
  "r55": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478416/962-205-50-1"
  },
  "r56": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-02(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r57": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-02(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r58": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-02(c))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r59": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-03(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r60": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-03(2)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r61": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-03(2)(b)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r62": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-03(2)(b)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r63": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-03(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r64": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-03(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r65": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-03(5))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r66": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-03(6)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r67": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-03(6)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r68": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-03(7)(a))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r69": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-03(7)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r70": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-03(9))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r71": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-04(1)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r72": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-04(2)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r73": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-04(2)(a)(2))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r74": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-04(2)(a)(3))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r75": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-04(2)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r76": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-04(3)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r77": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-04(5)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r78": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-04(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r79": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-04(7))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r80": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-05(a)(Schedule I))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r81": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-05(a)(Schedule III))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r82": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "310",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "2",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478642/962-310-45-2"
  },
  "r83": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "35",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478844/962-325-35-1B"
  },
  "r84": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477509/962-325-45-5"
  },
  "r85": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477509/962-325-45-6"
  },
  "r86": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477509/962-325-45-8"
  },
  "r87": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-1"
  },
  "r88": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-2A"
  },
  "r89": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-2B"
  },
  "r90": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-3"
  },
  "r91": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-7"
  },
  "r92": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "7",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-7"
  },
  "r93": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8A",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-8A"
  },
  "r94": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-8B"
  },
  "r95": {
   "role": "http://www.xbrl.org/2003/role/disclosureRef",
   "Topic": "962",
   "SubTopic": "40",
   "Name": "Accounting Standards Codification",
   "Section": "25",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479750/962-40-25-1"
  },
  "r96": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "815",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "4L",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4L"
  },
  "r97": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477509/962-325-45-5"
  },
  "r98": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477509/962-325-45-5"
  },
  "r99": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477509/962-325-45-5"
  },
  "r100": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477509/962-325-45-5"
  },
  "r101": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477509/962-325-45-5"
  },
  "r102": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477509/962-325-45-5"
  },
  "r103": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477509/962-325-45-5"
  },
  "r104": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477509/962-325-45-5"
  },
  "r105": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(j)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477509/962-325-45-5"
  },
  "r106": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Subparagraph": "(k)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477509/962-325-45-5"
  },
  "r107": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477509/962-325-45-6"
  },
  "r108": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-1"
  },
  "r109": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8A",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-8A"
  },
  "r110": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8A",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-8A"
  },
  "r111": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8A",
   "Subparagraph": "(c)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-8A"
  },
  "r112": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8A",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-8A"
  },
  "r113": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8A",
   "Subparagraph": "(e)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-8A"
  },
  "r114": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8A",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-8A"
  },
  "r115": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8A",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-8A"
  },
  "r116": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8A",
   "Subparagraph": "(h)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-8A"
  },
  "r117": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8A",
   "Subparagraph": "(j)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-8A"
  },
  "r118": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-8B"
  },
  "r119": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "17",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478873/962-325-55-17"
  },
  "r120": {
   "role": "http://www.xbrl.org/2003/role/exampleRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "55",
   "Paragraph": "18",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478873/962-325-55-18"
  },
  "r121": {
   "role": "http://www.xbrl.org/2003/role/presentationRef",
   "Publisher": "SEC",
   "Name": "Exchange Act",
   "Number": "240",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r122": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "825",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "23",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-23"
  },
  "r123": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "7",
   "Subparagraph": "(d)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477063/962-205-45-7"
  },
  "r124": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-05(a)(Schedule III))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r125": {
   "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "2B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-2B"
  },
  "r126": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "10",
   "Paragraph": "b",
   "Subparagraph": "(1)",
   "Publisher": "DOL-EBSA"
  },
  "r127": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "10",
   "Paragraph": "b",
   "Subparagraph": "(1)(i)",
   "Publisher": "DOL-EBSA"
  },
  "r128": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "10",
   "Paragraph": "b",
   "Subparagraph": "(1)(i)(A)",
   "Publisher": "DOL-EBSA"
  },
  "r129": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "10",
   "Paragraph": "b",
   "Subparagraph": "(1)(i)(B)",
   "Publisher": "DOL-EBSA"
  },
  "r130": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "10",
   "Paragraph": "b",
   "Subparagraph": "(1)(i)(C)",
   "Publisher": "DOL-EBSA"
  },
  "r131": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "10",
   "Paragraph": "b",
   "Subparagraph": "(1)(i)(D)",
   "Publisher": "DOL-EBSA"
  },
  "r132": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "10",
   "Paragraph": "b",
   "Subparagraph": "(2)",
   "Publisher": "DOL-EBSA"
  },
  "r133": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "10",
   "Paragraph": "b",
   "Subparagraph": "(2)(i)(A)",
   "Publisher": "DOL-EBSA"
  },
  "r134": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "10",
   "Paragraph": "b",
   "Subparagraph": "(2)(i)(B)",
   "Publisher": "DOL-EBSA"
  },
  "r135": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "10",
   "Paragraph": "b",
   "Subparagraph": "(2)(i)(C)",
   "Publisher": "DOL-EBSA"
  },
  "r136": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "10",
   "Paragraph": "b",
   "Subparagraph": "(2)(i)(D)",
   "Publisher": "DOL-EBSA"
  },
  "r137": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "10",
   "Paragraph": "b",
   "Subparagraph": "(3)",
   "Publisher": "DOL-EBSA"
  },
  "r138": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "10",
   "Paragraph": "b",
   "Subparagraph": "(4)",
   "Publisher": "DOL-EBSA"
  },
  "r139": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "6",
   "Paragraph": "d",
   "Subparagraph": "(1)",
   "Publisher": "DOL-EBSA"
  },
  "r140": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "6",
   "Paragraph": "d",
   "Subparagraph": "(1)(i)",
   "Publisher": "DOL-EBSA"
  },
  "r141": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "6",
   "Paragraph": "d",
   "Subparagraph": "(1)(ii)",
   "Publisher": "DOL-EBSA"
  },
  "r142": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "6",
   "Paragraph": "d",
   "Subparagraph": "(1)(iii)",
   "Publisher": "DOL-EBSA"
  },
  "r143": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "6",
   "Paragraph": "d",
   "Subparagraph": "(1)(iv)",
   "Publisher": "DOL-EBSA"
  },
  "r144": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "6",
   "Paragraph": "d",
   "Subparagraph": "(1)(v)",
   "Publisher": "DOL-EBSA"
  },
  "r145": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "6",
   "Paragraph": "d",
   "Subparagraph": "(1)(vi)",
   "Publisher": "DOL-EBSA"
  },
  "r146": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "6",
   "Paragraph": "d",
   "Subparagraph": "(1)(vii)",
   "Publisher": "DOL-EBSA"
  },
  "r147": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "6",
   "Paragraph": "d",
   "Subparagraph": "(2)",
   "Publisher": "DOL-EBSA"
  },
  "r148": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "6",
   "Paragraph": "d",
   "Subparagraph": "(2)(i)",
   "Publisher": "DOL-EBSA"
  },
  "r149": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "6",
   "Paragraph": "d",
   "Subparagraph": "(2)(ii)",
   "Publisher": "DOL-EBSA"
  },
  "r150": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "6",
   "Paragraph": "d",
   "Subparagraph": "(2)(iii)",
   "Publisher": "DOL-EBSA"
  },
  "r151": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "6",
   "Paragraph": "d",
   "Subparagraph": "(2)(iv)",
   "Publisher": "DOL-EBSA"
  },
  "r152": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Name": "Employee Retirement Income Security Act of 1974",
   "Number": "2520",
   "Section": "103",
   "Subsection": "6",
   "Paragraph": "d",
   "Subparagraph": "(2)(v)",
   "Publisher": "DOL-EBSA"
  },
  "r153": {
   "role": "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"
  },
  "r154": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "820",
   "SubTopic": "10",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3"
  },
  "r155": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(a)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478416/962-205-50-1"
  },
  "r156": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(b)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478416/962-205-50-1"
  },
  "r157": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147478416/962-205-50-1"
  },
  "r158": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-02)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r159": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-03(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r160": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-03(6))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r161": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-04(1)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r162": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-04(2)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r163": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-04(4)(a)(1))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r164": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-04(4)(b))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r165": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-05(a)(Schedule I))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r166": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-05(a)(Schedule II))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r167": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "205",
   "Name": "Accounting Standards Codification",
   "Section": "S99",
   "Paragraph": "1",
   "Subparagraph": "(SX 210.6A-05(a)(Schedule III))",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477804/962-205-S99-1"
  },
  "r168": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "235",
   "Name": "Accounting Standards Codification",
   "Section": "S50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147479143/962-235-S50-1"
  },
  "r169": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "5",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477509/962-325-45-5"
  },
  "r170": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "6",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477509/962-325-45-6"
  },
  "r171": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "45",
   "Paragraph": "8",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477509/962-325-45-8"
  },
  "r172": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "1",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-1"
  },
  "r173": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "3",
   "Subparagraph": "(f)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-3"
  },
  "r174": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8A",
   "Subparagraph": "(g)",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-8A"
  },
  "r175": {
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef",
   "Topic": "962",
   "SubTopic": "325",
   "Name": "Accounting Standards Codification",
   "Section": "50",
   "Paragraph": "8B",
   "Publisher": "FASB",
   "URI": "https://asc.fasb.org/1943274/2147477783/962-325-50-8B"
  }
 }
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>35
<FILENAME>0001092699-26-000057-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001092699-26-000057-xbrl.zip
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
M-PA8R#^^9OXMEK:6!@FEX[?<>+@WG37'!&NCC#Y?B70'T*#S1+HR^H0ETAU
MG\\3Z<KH,Y9(=RCK(D_,DX[E\F!6:9"J<#YEB53E5\P*Y\&62%5^Q:MP_G*)
M5$>B6$D7_5M0=>J%\\Z7Z9A+HWS4"^?_+M,QEX9IUPOG<2[3,9=+0-?+Z.B5
M<=4"Q%7S1,+".7[S.7ELL&VM@^$7DZ6*F3XFCSCVR Z9=>?]8&[-\D;4=CM3
M)"<A8CD9@ D4_)?\1MW[B/K6?\D=]>]92&Y8:/L,QR>Z:IH$3:6/)ZN&GFPH
MM?("Q=_KA7/3'B&>J$> )X7SO!X?GM2/@9\4SIEZ?'C2. 9^4CC_Z/'A2?T8
M\.1(O9U%PA/C".2.>:3NTD+AR1'P$_-(_:U%PI/&,?"3(W78%@E/]&/ D\(Y
M>\N()]=^Q(>A#F"*%U('$27R7?+)<ZTC0!+IC,T!2;Z[,#KY1-T?A )6\' $
M.?-&8^H^_Y=<>K[#GLEMB#=7$NZS/P+$D=[9'4NA"[?OC8X!4Z1_=O?ZRC'8
M/](_NW,\:1X#GDC_[ 9X(O)F$^SX MMT8(G_!>D2P%IY9W7XVE15PF\G/P+T
MD&[9K='CU]IU#=75>^K^EWQ%_D'.Z)C\['N/X;#\J-&0GM@<.,>E;541*XZ$
M7S2DVS4/I/AR"YI&P#")#3 C9+Y+8]E2?@R1#M><,.1(?!\-Z5G- 2%N1]1Q
MTOK%L0@4Z5+-%3L$TS@6Y)!NTQR0X_NM"+\<"U)(#VD.2"&B<[.ZY[$@B'2-
MYBI2C@4MI"=T:[2XOK@\^_;?),@VZPTM/V)('^CVB.';;M\>8[Y'XNDJ/3XT
MI>-S>Y^X-W3)+Q3X1/_'?\EG.P#D<+ >-39,C@=)I"-T R0AM]>WF.(S8GZ?
M*2A':O\EHBZ9\/Y_I<&%$_OIU&>!%\%& O'KD%&+K\>R'SH?X2^.(G:K9^A6
M4VT836-0;]1ISZ!LT+.:)AQXCYG:OQ&#IN\$X;,#N#*RW>J0V??#\+1NU-KZ
M./SP:%OA\%13U;]4^*.=C\&8 E!Z_@D,('X6XRR,AFNN4L>^=T_[#'7]BG@Y
M^;[O.9Y_^B>5__=A )NL#NC(=IY/_W8'AQ^0*_9(;N 0W+\I 4!D()X)[/^P
M4ZT%:^._/HKU-F$(I/5D_6+%WZ\N[LX_D]N[[MWY[>QRB[70V_.S[S<7=Q?G
MMZ1[]9F<_^_9+]VKG\_)V;?+RXO;VXMO5X=9O;[6ZO_9O?WEXNKGNV]7"OE<
M.ZMAN6J]O73%(^K? Z:%WO@4H5, \'_Y=G-)/@(YN9Y[%0&CL/LDIKH;-N"W
MZ%:(2Y&?(J?[[/4C)'ML@%#A!#>H(D&M&D!_:0"]TM&TZC\X54]'Z2S^_C)4
M^;&-J679[GW588-0P($#VG:1=YY6\9,Y0/=H_\>][X%TK,8P'_#_/JPX@3,Z
MZODV)9<T'&: 7YT#?ST3_'_]4ZO5J'](MO;:-;V,%>LN2VNH'Q;_SEIGKLO)
M1M+NU=7W[E=R<W[][>:.7'^_N?W>O;HC=]\(<(\[8!%$,]]9[\FW+^3NEW.2
M8BD3=M(]N\.OM;917P>/&KNFSO4V_L7S23ADY*]_:M1UL_DAZ(/.]\RH3Q@@
MLT4^LSZ7RN)T#$WA90$;,\PLH;8O/KL>(+[=K'MJ^R'^+E"^ [NA;E#=FL;:
MS;HD_1<._NZF>W5[P6G\[9)_Z .>V>CX(4)!)@/?&QWD1 18+-;W?.Z_/@4D
M93X^5>D0_.] >$)"[S!3%Q8@R^;>#7,Q:N8&[&4I#<YP;UU+,W2?CR(^VU*0
M%8_"T1BW S3V)S+>8<2-N"- 5;6J46^J^NYDWQX$2K>V3*1\B1R'A'8(._8&
MG-&-'5@:5B?A+[ 9,/F#]'<*L0?$L@<#YL...!>$[VB8/ .@C !P:&Y8I,<<
M[_&T1,BPZ*TA=55[]^-].C_^EC[ $0<$6\R5&B\^+<6+*S@^/-'X-..S#5@_
M\D$(PN1#YEAD'/E!1 $BP/E7X8X=!F2<^,L)>X)A>$6"-T@HKL]>C24O,)Z9
M U!K_ AF^5K\X2ZQ4*^OA87KV_+"XWG#[NT -900SRVQZ8T7!M+6':@>T\6W
MR\OSF[-SH(NKL]I+K@*RFY.P1_<D\/L_5="_6P53JZ$V]/:_[[7:[^/["J%.
MR+\BCG?OB8_B66, -_7QTX<8HWI>&'JC4Y2:#\P/;;#LXNGXS.+KV G9-,=/
M AXV .[DJ"P[PS#(K1>%0W++'F -\&_H,Q8JY#:R0T;@*;7(Z[^T79?1L>?8
M@4+X+X$74F*:]15R^]7\8-?\1HXOQY?CR_'E^')\.;X<7XXOQW]#X\<:?L.L
MF3R@[ GO^ZG/'(K.@X7DD(ES55AUZO05V@L\)PH77WDIGT3\/?2G>[YGU9[/
MZ(\J'<!.3JGS2)\#- <W2V3),)XXS);;3H/!AK93<RUO\"K7^4=:B'60H8_^
MBC^]G%94KW3N>.\D;T#.T-7AAL''$_I2JM#.,'F]9*AZ5C+4VE8UI<S<H2MT
MSN7S6A_ [E8[FY_P[8KPK!J1TU+<5=]U/WT]QZCHV;>KN_.KN\4TL948UODH
M>H5-.)\/1(,A)8>. W::_/#!LH.Q0Y]/;9<O@;^TC1,,%EU3!1,+??AC)3/'
M7]?@JY/%S]MZK6&V,K\"RMKH<YA"W_B-S,^1,Z\>Z83O4>P30(FP_ZEB5.;8
MQJE*M'$8C_/ZQ_3Q$SZXR&L63L<;S\J2V?.$32RPL:I6,S+'SM%E]V+*FV$
M^ER#()WCRJ$U@?B\"L!#(_LXA)B ,-*@HM@BH#?8%DD@L3#*FAB2<:8H:[8Y
MT>R3,E13&^BYQXC@J#;2#PZRC/75@V:E<\/&GL]#E5C:-68\^D9$U(/YS"+7
M4<^Q^Z3;[WN1&\+AD2^V/\I0(A!==T7P:R''^JKCKJ*'F?KA;B9;.'_7V_3H
MC26'>&B>4UBFLJ/3Y/Q_7ZB3Q3HV1!U-K72^V"YU^S9UL#EKR), @M-=,H5Y
M9'@SV#F;)E&OU?<L\C8UB0^RC V0UP [;H*R*/>N6$CXG8 !Z3Y0V^'VP\#S
M27QM8I;!O&]9)WB3%'?;\RPX]KJ4=Y*C[("C-%(<A3O:AM2]A]79KN0M;X*W
M  *8DK=(WK(#WM*N=*Z\$)83>B1+YRX _Y!V^*N8!YQP8R/FH9E'RST*88G?
M1N.QPZF+^L_DP@5Q/>)'^_=3:=Q*<5%D<6$T>7G>B)BFJBKDMC]D5@0:YR\*
MN:9^2"Y^4\A7&)+4W]GOR5__U-(U[</T,=!=8V7UW2]8S$!#<NY:^/&_&/7?
M2UF3)6LT5:I],BZ3;URFKE8ZYT]#NV>'HN.>)+V2JWEXHIHFC43)+7; +="E
M#8"F8>0S:1&6GE48+[&*$YZNM&Y*5+:N79!ZV[\O*[?M.@[QPF'<.0_5TX#X
M[(_(QIR$WC/1V^3LRPW131WXAVI4-34IR?W,QJ#K)L[8K[3G^5S3;7X(R T?
M!^MQ;]A]Y/#S";A#5N1!8'H#?HO-"ATO 'HBG"+YP.>CL>,],Y9QU>"M* -^
M)MT^GU5K-^L*H3#52/3$>8=+T-4/YS<7MUW^L_;A/3P!$[A>2&RW[T06+P_O
MTRA@.-_SY%LZQO9\>.:UY36DLS7!.SE)/MBI'0(E]]<XV^^N@]7."+JD7R(_
MT4<;-AB?9:!PZ(\C?^P%+"ZKMP/2==V(WQ@KLE-<PLT:3%Y4^("/GF^1&*;Q
M=:$Q5&'D ?.YPVRQ='W39,+"9&7O-ZNQW:ZU36W3I,:Z7C.;1BZIB%JK9IAF
M/EF-9JW9U/-(:WQ%/"5;XWEMY3:P[*TJM[7VM');1P"LR2K.8,">;R_K,*6M
MY5[+O?7,8CI]=H;E8O8V;V3QC_?DYOSNXN;\\OSJCMQV?[NX^OF67'_M7FVL
M1>43<-MY NK"N>C(9_0\MLNUNZ7[W>.)ZW&G*B$SN(Q!L8%^+/1IO=RE;DME
M2];/R/J9S1M?K%<6T]RF+&8_7?NR:SFVS"U>KN-N"-=]6C.:CL4KHNG/ZULF
M[7WEN K2M8#1\&XW(?!+M(/XQQ@ZL+%1$4?^S17HG6QC'N/:)C;D',/ZP5B
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
MZV57UNED^"A5DJ_G/@OA]@S4/V<#+VOSZ[MG"[_K^&+E+SX5F2J1:XMKE:/
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
M'<.USZK=,4[%E5:QM'1?DUF$K&41$&PK-<FDG E1%Y8;C&$'\/.[0>3#8[Y
M=Y_Q.EGXG=GPEA@AIK(SX5A68DI+$Q_IIL>?/ '#IQ^Z%5,FE+K\FM7-L&G'
M3OB5:'8A3A:-"(6#%: &&.0R$1!ZM,,A!V$,NQ0SL/$<^G]$MG #(2Y1QTDX
MAQ>%@#LN6ER$P4. $MXCT& PM,<PAVA?S1'P-AJ/G>=K^T=R[.]BD$^_2 "N
MI)="PCCMSX]Q+Y5 SSNDXV>91.%/.3*GCW!(P]0R_A80P.%[&Q5H%HO7@#S"
MBJ?EUR'NRYYEXM,1R"P_=U,LN$9$U55JL>E]S#PKYORS66L3.'0'EC['YVU!
MA7,3DQ[K@YXPW82=(E;X^5<*0M@79UY;Y(A%9^7G?%LV<IF\?3);!ZY*)%>Z
M0*,^NX\<ZD^Q6R$1L#9"PY#:/"<,['NR-#B,.0XKH\,75U\2715]A*?GGZXO
M8=Q1-.K>LU3Y>L@F&FD=\XT6@KH*&0%S GS&JQ#&&:C/<=H3/P]L'X27!2\
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
M==HS*!OTK*:I-]H]9FK_KE<Z=USV>@-RA@HYUPUHYM&^A!J"Y;X\I5K)T+N
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
MF>*A+. >D:-O8X^/+4M?7KN1#Y_UR P>%#(T2=K(O*X0(,5G\%TL>]1EWE^
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
MH VBDFJ?4<&#;?]?PW/HM+UJW[7>&Q#%(Q.767OY4OYQS?LW_P)02P,$%
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
M#5'(P*I*ZF[U,@1O. ^O<E:(2@*U!]XN]!"H@*/\#F$;K0LF0[?3JV%[NQE
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
MR5U-:KTV!'E4 'T-Z8G;5-^":<)'0>>UXS+'?!4Z3$Q6KYB8)2B6G)FZ]OL
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
M%,NNMW78X\:A=(^$\BJ7KYQCK--NIH.WY$H,JNPTS"+&MQ33S)R2IJ6_0-^
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
M[\3G=]3!57<9  ZF43V?QF#AK#!I.PBWG[)DOL;8JN>TQ,;'6R;7E%I_\+O
M67ZCNGU6E/F(.[I$Q]EJ);<G?NHG7ABI-VCS4/K*"X$1@#W.'9XI36W9S"Y.
M^UP;;!L)IC:%0YTW_.W*QGG179"V,$[IZ$%[;#OL=L<64H5FD]AYB<[:P[MM
M?N-B(Y^^:QNLZU,^'%.>'JZ%711I3TX6S.NC09YFB#V0NU[=G)L]*6W[[R8J
M4-=I637<#,!Q9(.YOAIW@F_6W+./+,@O?'/X!U2?V5J3!%D[6>=+P?SRNGEY
M-X\IW2_(D[QJ9()#G9H=N"U-O/WJ@D:%1I*6W/X>R0EFH,,\TLYLY1\4WQ;8
MOCYF*I8=+C'YY.6B##%-CXBY ^DK657-$]"]*.>Q PH2TTGES_L^:!AMJCUD
MRS2"_),/F"##7L$ 6&&Y^'QG+/OGH1A>I8Y?W'>4]>AX]L5N5DKI9@Q>;=UJ
M%K&.#.*N4JB[.I37/;07*U +QS=*0 LAG_!<W*N5,8_*XFKJ?.GRH/P*,> >
M-3+$>2J0^;L;D^AMTX/*@2RT]R#1%7IO'B>VHS!K$X0(K;M,_&B,K5.H'N6_
MQ@!DW=L(A1T[#^,D'\('-B%Q0=0;^%O?+[Z,,'X<(9\1?NL*DU0F..R\0FM/
M3RC'%$JUB^W TXA202.3+B."E"ZZ)@/@Q$1Q]!/0\0,P5UZB(:@*- 0N7&'Q
MB?H/"TW7BKVQC$>LBZ%PWGVVQ3J>91 NE*J(6XP%.XP;/8B$HW]R@_;[Y ;
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
MV+/%?BK#?*J1VV"X;Q65?0 %((9#N+V$'PTO!5U.>E82/C,;&OG#V.U](K;
M=,8ZJ)_.0WPZ%&?5G&F2&P[;CZZNHBQ6)5(19])Y!YZ-;4[%@=)QNLD_2S(-
MIIZ*TLL.,F-+"B>=>;R@B@8S2C9J41>=\X7*#Q/$/[$0.=AG(/%Z#PC;-;K7
MU<\&%Z5^#3^&&C*A+A#Q,PP 4559RNM;&_BEHR=&!# M_E4#0+B()X)7%"]^
M+EFSQ.IGU)F NH"!7BD?%S,#6@K"FJE[D*C;HDPFIPL"_'$<E"6"[O#I?!SX
M<5B2VZBF4C$PPS\:QK8*8B/RUC73/GOHR7_T4\F*0A9#\J9]O"/\&8 Q WRR
ML>:8=0VV0Y !T!ZD*336J!5V#X&6/L4M2/62GP9KF%#-Z-_8-$PT %0Z[7OI
MQSP_!TS=B[XQDF%.ZKB5>2.=+&&A9\[:I 6FN+5."0X>:I^TE^= 4;)4+\.,
M"F#H=!?9V@"N&*F%8,A[JGK2"^7R>#"*.A!%&6<[J%*)B"U+C>1J<8,X]C1;
MS/(+XF>>WI51OP#\:D\BU.70 O+<A$.E'B^HY(EZ;2W&TC4A"DUR2JE@8Y+0
M?@FB=+I=>5RY4:W8>3,$GK;G(2$D 3L)-_]7 /I'(>H\(%JW[]YQS7^R&+GX
MJ[$O..^U"9<"_#Y27"%JPD$UTB_9M]**8U\!UZO?@8S&ZFQ0]XCXN4%B&%[>
M8$@"V_DSS#\_W5-:^%!@,1_34?V% J&6Q9'LXM?^"N/9C$4KP9E115#ASTX9
M/]5K235F>37]&M>I&RY,KC:J_/(_X_HJ4$ 5F+#4!#JYLO!6HB73^2*"\"2D
M>K?+1M<^64B^""R?IH[)Y=69TI*J'>G%8>I1%[VJ[084Y;YKGH..9H:T?:;Q
MX;)W4,:XGG6]65,:(G^-B_>)311?A4,0:R%0E &8:ZGK^(:^S/1A=PNB=3]0
ML'/9TW#UZ9K;[2X$KP2-W+T%R!L, W!-4:815+CTWMT\TOXHQ3SZC4HGW<R;
M8$1 _HJR*)S!LGCY-HAPJ_2)RS:&<I>5ZWN2?_* @O*K3$A^JI8A3-K+GQO7
MHUUMM>5B?,L\#E[U+!3H'D.G,>GP==MO-3NCS!,D<DAL86LL:OI47J(')I1Z
MQ_:G66."A]AM\(FK;Q/N+3?F^H2F?EU:%0WWLJH(>)RI$GG]?&[ZR8##SS\H
MB?5WX/?>K#]RZ(?E5JU[>7?K!';_C&R8Y:(H%T)YZ:4FP!AWL!Y>LT'@%_I,
MZ<;Q0V?&S'X&OH5<_XE?PEI)O!FB'=?(<- +,W(43"0A6[R"SS4:IK"%3(78
MD;-?,2FDO=N?,P/%4T1:^JCL?3P!+!UO.C85]X&=O$1^M K<INO&"N@(5?BX
M>>8ZE6H%7./)Z*&#(,=;.#19CNU'4A/(6P'1$\4FI7=%G?'1\.G40"8VSRWM
MQNNHJP D.-N\DF9;/U+Y@11(DP\T(VCX[(U("(50Z=Q?@V2B9MRGDJZ5])6Q
M@%*1Y?4C-5K$,E,&@ ^EQQXSYPJOSQC;<I"J7?:Z/4$1ZR@H-/K<3*C%3A0P
MP7%9X\2+.@&\_$;,G):ICYWA&"SP+"4OPGL;D:NLSP!@Y1;XA8@1L\@+,O#7
M:_O[RY.6D9[;Z,,7=(AL9#_0,2M1!Q/[$UOP!2*2)0PO+)[NX9\MBF  #D%\
MJQF -FTT50N/K.=G/RD'XAA1$\4]#]"^J[/WJ(.]"1Q%C"-@<$,!NWVROC23
M^[\BI_-KU": "6A\'X17YT]V^I2$@[S\OE0CY$]VFE1V=>W4A7Z+Y)XM'_A\
M=B4QBM"$GRJLE&4 ?B[K\ >,L=]\XEO"]!9'O+4_4SUFI;A_FYH,;^W=>.II
M]K3SXW+E+^H12QV(=F '+EY[6E<'NH'"5N)N3ZQ)=\*G<MLUBYVPGMAW!V6H
MU(,,'<"  6!?WB9^M!APKSAJ4U<9/BI-6WJ>3AIB(R!&9>KS9YV#"9CM:VM*
MO-=JWJCQ6UZT IJE8'$L9K?7-1HL?X#AUO([*\34 KT/L5;AZ9^"B?-Q[61T
M9+7R>GEY^/"4R%7S"-6TLU# A;\RO@73WTS0Q]2%7C)/$@L;$4T8[CV":#HE
M8* R%D?@-P6"PWX+TTGNU-P--A*:,-&GTO/!G4]?1,H.]KS'I4A5G2K#08_9
MI<J9CBRZ4S36MB!+5M,5<R?VDH/K$AOZ(==0Q%M^S@?9Q\#MYP??!AX _=S\
M9H4'!K]V:QK^TH/8YPND#Z(2<B?A5J8]153S1!")-' M)#N]A0&@"'GQ["IE
M&9M[0S;MZ($C+O[.5JDSUK0UZ IJD!(<&QF+9@']_.O[6N*[?G<'RN(OKK+M
M)V_=2?K(%7!N&+$-2DO"93</;(YA1]\>RT^V3+SYE?;&P><\+=](;[.?,MH6
MDK_GIZ2![>"B+[CMV,57<[TP#FH3SCE8EFA0P$'I_:\#[^/X@"C5!%::'^12
M1DZ&\J-Q=XFK=6.T$,L;5&'T"U6AH457!'GA&#UF^Y*!I%F19C4D@:P=V+O8
M\YRBJHTK7_7=.Z\#"4(.SOP['0I_'B$U5S?.C)O:BCDGI<-Z!$,Y]4]G1/7J
MU'W6RBAHDX'<H@^!^%[T[HXCCBZ_O5BJF3'Z79N' 4!X?5Y49 "@@1 59:H>
M<9QB8FK<J!PV[>W?->X7N09X=;OVT3W:'!US?UQ)K4VF1VBP7TLV3+9?^FW$
M2+',N4AU)74YLAH[;GUB+J1%M<W^VS[,F8K68@#.S/'+9O+J=A2U[:BO7,^/
M7/U&+A]:KW(H/M!L/*'#_RD(W .-!FK>S6[!GOY0&3[1Y3(U_N(-"+]1NA"S
M*[RNEPG-G57-]>N(+ATPOK_[-@) X\QMZ1:E7*JK05=AL-FK4/F3O>1N-_]L
M&A%=B=U5'LAD[@845/3AGY,!D>^4.6D_7_>/SPGV2\JX6AW.1SQC<R.*H#A0
MIK0?I?J#]%L.&I]NFK0>J9M9O:J+C7@!8MO6H']JOSH7UZM+-R !6_S417KN
M-%<X;@B1_/_1<7DX=GC;?$+EL*B%L=E5D56CY$.0[XE'8Q-/^V>M%%IU%)>%
M3[H.'$M3VT8Q7:<_.3SJ&Y'R:'"OC5?I9L.T>=M"FJ<;O_F9TPOQ(DLLJ5XH
M4V((Y8572-,I"52 (Z:1(/S>Y9>Z>^,J3)]Z2( RA)M0B9O=,1G\_LQB7<^Q
MMI0!"%B9H-E\V,FK#L2-A!I*@I/'=(*'#4W0@BG#^?DERK5X8$@)Y)@Q+==D
MR%&VXJEGZ> /_\+1^PN(GUT'X\5?(X[8+J3WI]5A,OEX16KBT5Q^\O2[#K.U
M>H:UPZB7-8-2PNCJ+PM+E1$9GN3".W*&A0TX&%>B]CEY^85O![,)ECL5-5J'
MG6Z+NF95HWT@!ZEC().I KE6?0?4!MQI7 +[QN\K8N#36DP.UNK0KJB%MVI1
MOCDA!S^+G6R:M.2(GV4 T';^-+&H;W4H]ICIG\CZC*@#5?HJS#>L9^=)P]JY
MS]%1*[Y2E<8PYF$'?_?Z'TT XD?O!)TRG=EOC,^J^=2<:S]O/B%V\J:D]"6;
MY>S;2B=^HE+1K]@_.,]ASV1_]C "S:8,6+?G?0S):;TB/0G^,%5S>@GHBEF@
M&B=>-SVDOI'W=]/%4J ?2/1M%_YLZ5#:RC#D&XET1.(\>#%P\_W!_[30H>C8
MP<>0AZGW2UYI6IUJ8 !^66MAB2OV>SX+===7T./ 4WX&KXXN)CVI/ 8:VQY!
MK05O_M(GW*XR4% '-6V[^0"-.PK/PQ,Y(#XV![$DI"\;+_(']O+H[?L0:^+"
MS)[@D00G :%PT,*G3["O,(_YH65T<=,B=D[;_]*IILGS#$!=1!P9DY2@EL1B
M 9J,F^]QNXHL[G(IWM %DG5!CY:9UN )*OVKII$05WT+SD+5NSPA<UZ'BM[H
MX67&U;MD/&IL;/HA3D_O8?4^YM:R- -@SN)V,*<A)Z85";P/AX$2%4]?1A:W
M2[]A +*9?^DWQEDS7[5W">_RYU4GD(4U6L"&HZ\N<-CKW:3=^DI_CFGTV >O
M0Z^BZRL>E&E GN:OO\D&1G#B_9B^_NH6Q1N6O:I\*6,GFWX<9DL8,Q%!M;"O
MX/[W_+@&P$0T-B?/:-DSW^W[U/B(*<JX(-.H%R9^#R6-!VUHX?8;3?L\;(:%
M#Z:A/7C9T]=]ALD(##"!];/23P>O5_H(=+6\,A*OA7";W-BS@UTL'EX1FT>=
M@TUP1SHA&J<N!AP:@VI870'A#K> MM(M-&>=Q\1FV8/+,UL_;XI/.Y.LLM^_
M!NRV6WXF1T%T F84&\I*)8XL;C( )^@V]58U#]M^ENO?^8$6LMYOQWZPP=YE
M $)*M-D:%]=X:\/CXW_+@T_P@.YI@_R]M8/0#CV';$TCVWV[/"U;Q*=%$_;M
M;N$W92 GS<PTW\IT*:)D"][T/VY.0.1<2T?E-+K N%)+5^^ )+@/--33TE-"
M<VOFEB(MB9M;PF2I>N1CKW3""/X(@;@KP=&A&8H3JO*LB%J5+KU/_F@A-R<5
MG"I.?-?D4#4YM'[G=]D$QQG?L[PS;ENAF.LJT*?<HO7/Q]RO"U(VZ?LY)()E
M$T_!JV17HR!UY;@B2DS<]($&J+7G7P(+J /EU(JJDE1S8H2%4.+4I#8E>!V^
M*T?-G?]!22(H]#, Q73VD-#G6$@7:)X+1,N&7&DV4$HU%F$ 9#3QZ&58Q P=
M.&[S$[G-]'4+#, XPO5 YO*$_OV?O$)^COT9N[O0H;W!#V*F1HEV+Y4XSW-9
M$0'V77Y,1P^A/H:<(@HIRCA(RO$YT&SUVDVODQ#48^_JYN"9;Z=O1+6^L P,
M'(._6:4_QN_XM:3JO<\-RR%PI3I_(]6RAU,-4)JSJ'/V54V-'-A)]3=@2O5(
M&>CD'"ZO2@2U'-_\0%1Z%-CL(:J1-ZE>7;9)9P*]0<+_&FK]XS'$?J*>*R#.
M/>,RX8ISS3'CK].@YFQVP@SXYX.#NF5GE^1?5A6;Z/\P3,S6D-3U%2S _FY"
M08@7*8JK2$XI 70=QTH=3UB=;XWEY@WOQ\68WO+[FUXH*Z(>A7_$=N-HYMR=
M]"')N--5+P_34M@A*57H7DOX%.=N6&V-X4^UD]*"-UK2.&X/BOX(!P#<.4E3
MSLW/0LTOL533G4(&T 53V1N*\C,TD\AP,7FSPLF'N0P M_4"VI>S1(NKM;%*
M*RLA:UPH,RSOA8@EXMMWNLU@JOK\T*H(JD-(^-J"L&?/\K&6&\&?."-'F=_Z
M^(]DZ+O31O_VL(/WG7!]Z?+>4-[$R)!Q'=G$8I#H8E#^8J3P!?<7>4KUS3?+
M:ASMQ?WL4..GOZQRGPV7[E?E4W#/,Z''94MZ77\+\K=O'!V,5KCUX:#X]*$:
M_GY;%LY=<_G9AK"NO]>NQ$?R.3,53_1A!F"^@ BB-[C EU]4X-&;I7 FW H,
MM#,M?1D>#F)BW>,#K',!E3^HD2&TI*01026 1XFAQ]Q6 IV7Q2;6&D"O>TB"
MSQB D:= VE\:A"((Z4(O \"A# GF*WH"(?+@#FA7KS"^XF]8 Q:F 7'?EYBD
M/0-+/NR!HT$S*>>>7)Q)+3RM;#TT&42XT0 BZ$'XFNU)#M ,Q("B8IRD-^?4
M31K/KASSAX*1@^__V4D%O..*K( ' 7G\I'%E@V7%?KQ[<>XF'F7\L]H/RT%,
M^[#[? G<87&']K,&,GN<7X+MMJ*\=>^%7XEN>YX7@#C.PSX8=-R\UT2SFVY8
M^N1RG3FD#0A,=GT%CD3;6/@-T(U6Z5#NKO2-I)#XO!GO[)@K04=-#JY:V!?.
M],8$H6U[ J>X)HJ)P5.$@_DY=UWD!2G6-]/Q5^N.8FJ,\XE9EI*%N1:KD2Q?
MG);L;M$.*<(X8R . =-C.IAS!FC!?&(U_3&UG&_6P]OBMOA=1'(* W#$N0MI
MXI5$F"X)+8'QXR8&& !/J(8E\V4/=\.WTBS49^%C4;/ ('G1U96,>]CMCB>?
M54AW.A"4U9K$8'+H+94X2P]_0>Q;U*+?:860XCSHT).'FB70(:(Q.LFZ5MNH
M;K@@<4FGM@)=X51LKM%_AVH492#RK78PVB!B^V9TUD3&Y@@S#'KTSY9I&!A(
M!7TGYAJ5]>\FW7%&;5Y\[=)0*8P=.9V1"N"1NQGYX4U4D4H#1X[0,;'R(O,G
M9+$J8CFNK>Z\?94APLVSW"=Y6.SMVP7$9-/ZYF%[G^3#:UBYAF%]AX=GM0RR
MMK@+Z\1.@%E-C'Q6!\+7R@\:+RK;_S2)D"4H(#O("/:HG[!SJ',Q-W!_+Q1-
M48*Y_XA]#FA3!(CM 1M]C'JI2IDKOYX;CS4[2=,;CM!C2%B>H5(VV>HR.A,,
M#]-R&WDOC=0\%2"]B*,?WF( RA)E=51@S^ /__,##7PI%*ADMV]UY5Q9Z?N3
MD5UB1_2?W507_MHLF^3YP%'%?-V&6-YL O]0HP#-MX_RYC)T3;BT[ZRB,QGT
MBV40LP1LTN:#4-7PL#24/2N'F;) X!TCJTN"5B.G:=W:>N;8C1/X=N=@\G31
MP-AC/[D72^OXU%.-VXJ+0.TJ]GM0==1EU"C1[9HW5,K9'+8-^;"QAMT$Q1''
M@X;=S"UOH/9EIQB +DEZB/4.]$&P"*H8=.-_UKYFJUW4NIIAW[WNPJFJKOSA
M_8@C)Y9H,RV%J#$N7:^1\SXOT?\?J7(!@97$/?A)>I-/5Y\:II2B<'CU16%8
M-CS+U)9U!P4\F_S\!KHY#S5JSPS+5ES,Y))?<7GYR29"318@?GF(1%%37V^G
MQ<?/@Q83NKEN#Q:?6P:@JFKD* )44&^9TE#^5+GH3A5YVK^'4KAQ@7 '9=!;
M(Y;N]0(HIM;_NJ0"_Z',<X4+5GVO9PXB]7GNDKALFE8'ALD.?U$FN /BR65>
M57T?UE%,=]R,/$2T(7@2/\ZF()QG.I(>7Z2;VE\H _C,_'ZA_ Z3YV5#N(*.
MSB5^;/(D= PV9C_JC]JH)<S127)[70>%$?%.,;NGO18:6WCT/)1PHK$FZ90-
M)#%WQQ/B[D@L\]H/@%M+!=;QBVRO%*_)H*YJJ;YII!/-?\#/. RYU_*W/BS2
M5+K;/M70#ZH\DJ?)*]5WK]DT$Q7?9"5].]MG[U*M\7Z\8O&1N%PF?> /$M[Q
M+;QN^ZVBY\D_C=V\;B?"L@.9.RSAC(>TB#9Q>/AFS_5EO@ ]-//WQ%Z\3:QF
MDG7*\1X&("UQUH$,.KH5D,4 5*$%B($WS2I65^"*?T;=>O+;@AUPVG2-I4^@
M=6%6>H!8< $#,'WRJG-HZCG=I%^UABTRO>>0C3P%E]S*N'+IZ^AK/I4:BYTW
MUFKF&(!,@=U7S'.S)$!Y+?;?,'O?!\<D#!R<2=-KA8(74-.N"$B\&_&<Q;#&
M1OQ_0#GW+?4031(/KO:_8CD&\G-A&LK>[%FY*!8OU *O*;@+_R4V;T)V(/ -
M*J+/>F6U@M;RKR1=8@!8?C( 8S$[E]1/^Q6@8I#T)XB::9^Z#E C%G63POQZ
MO;4Q$PT3JCB]Y#]/<L;7PZ_&C@L#WJAO0"2I[K2\4Z&8N^P?A-02U,/GC'Y9
MZ_5^5GL 'U?T\91+H>C[^?D&;5+/SJR%_;PBO1KGFFH>:'0^O)%8"]NR0L:)
M[4X!9T;:I9OG#+9^()BLKV,+Q#K'+Y?#%ME15&DRIN'@NZ>SX82JFVQ#.1?(
MB54Z%2Q%KBZ^DA(<N//64TE=.-*>5P0UH*MN#/QT:WYSG_F&\1_^QQIY[;=E
M'T20W+%UV=R+80^VM2N/E%B/4*8]]U<@6E016KAY(I]FJ\P1"QYW7^,[ROV_
M[\*KD/L8^^W"T51NR<!;5SVAW.!E= ;TJ-Z719ZAIT_X% J*?%1\T'WF)'X^
M7./T_N<Z,7N+IU&."R,MO\SLSWVX'#AH0TP"-MQ9^KE8-T?4PSG?(VIFD'A?
M0VP'A9Y)>EQ_M_-*&;F.^H9H%4Y<=T^YVO%PX&OA0/Z5HN+WGJV'CYT]XWO(
M<&W[$A;4],IY%.6)=*+7TFZ!,KS</N*\V0PR*>W83C+<WWUODB3!_@YN#P53
M].9>5?T83R\U<HS#!6FR4U82:Q*KD,&)V01,4\_YJ8")R-6W1]@I?ZF>(!\R
M*X6UO<M>=XG.(1SD[SN2P>1AJ\\'^7NJ$1/EI[S_C*-YB-O2H$_@]P-VMV^6
MFX35:-%7(N[39"!90Z0=RLT5^!CZ8LVMO.IT_X4*9\>(.WH, -21NK;+BQ::
M$ZT9^:%?K<H ^#( [^"J7M8/XPY9H'>>8HELV@R TT%310]B]*_@ZR*';+]G
M5X0/<\?:<8E\<;+Q9/NAI*XDU@2[!ANVX,+9)@X\LIPU-_!B -3\3*\P /:0
M6?(UMX&KU2X5XJIW83WLK,(T)X):7/RK>/$?<64M!L\L?-$JU23^VEGG\W86
M['U+0QY)RR648VH]LMGHYZR&5B,GHR#L?IZTM#U@<)Q4ULJLEGRC=)GA1++Z
MF_LS"ZV+W%_W;[>>PK/,.G^&75M%.V&<$Z&5VX[I%RW?\?].J79KNSV?N)"[
MEQ<7>'UA ]SD.P0ZLC))HK7N9)_#U_K-*%X[=5MGC=J_MUY3M]][,/^_!"3Y
MS]Z@8&T&68\XYV=0)?"XY.Q(R[CUH&308P'EA!8CBHAP1+)'GIAA9N#'7!,-
M:7/C(?\&3,N0_HU>MZ11(4^7$A'Q>RQ,]P=%33.1 M-P5U&$O-$UA?:@.M2,
MUQ-%4[!),(,U^D7BVQG$,=&PB_=_#J2H*HX\U[E"KI,'-F&:7WBA6=5+'YR&
M?V  0+]HVBPS9=:?-8RJ(C*J_;0W#2$D:1SK08_J4C/%5 LWM/-H4KA"^^I-
MI8?J)<"&6D@CJ!#T&56F7)EOM**3^L2S'<,!99]\!ON$&94%=\S>KN8#:UR_
M[V-.OPMCQ3ZON?,?Y8@=O]Q-$[IPH)<S01G''U*Z-4PQBWX#&W*Q0BAW\ \@
M7FCYH -KSLTP ,=;N%7[7LMVWS 9GM1!#+UKHSK8Q]9!SL:_P,-;?RSL#&R.
M4":XM..LL9LE JR30G TO.G@B@Z6D?]CWNG#>\!D.%\V1:T%R'UKLF)04)LR
MO]&S8B;DB>1-@,PNA;)]::3H3KNX_7YSC+H6@EI>YRCCBJ2O4A&SBGT[5GAV
MRC8#T!_/-(\Q;TN+=(JT:1(RW.*"V1?.I3?W>B;+OS  3V!R"T,;D").Y%B=
MC$D; Z!,>,NQM_<,29'S-BZIO$G>HA11$6DS8["!VPUJ]-2'N$B;R9*2Z%+J
M-MS&WYMU ^),0+PGC\]H1TF4)._QI' +8!?I'FM[2\ 2 ^0XG8U8(%%=-BY>
M,5Z]^1B%I+[%K5G$&DL^\3@.]P$E*HJ3D:7MKBY;3^%D39#"=V:$$ 0*^0.
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
MJ3:M:9&J0,H3<#<G!76JGV!L+J6 KD7WTC7F@NE8Y293VU%H'_C/L :H-.Y
MF\>2'I85H7-TZ07GO4TM6!*1M=&JGG[\__'VGF%-M=O6<*PH540$08B/-!4!
M$4$42$0%1!Y$% @](B(E M);2&ST$@$!*1*E]P#22T)'I(3>(1!Z3ZB!M ^>
M?<H^9Y^SW_W^>+\?]Z]U7;GNM3+7G&/<:\PQN[94/PPH1-2NU%RH#YLGOT$W
MXU1 W!0X)87HX>_:5=5C0HE78P+2;48)3("0 :8GGH8+75[6X*P>I<4N(7:G
MPCF<B4YA[L$TPL+AS<8#*_^A_!EA+Y/6T,2.\YN/^NUCUNH7E2LL$-/YJBNJ
M=<>=3YTL7KR6<O7^8UUWFZ!Z^<M3\JY;MML:M3@!G+6O]91]7]D 3#QG*OV.
M5M,%3SG:S?>]]+6 \$_$ZF"<?FJ8E;K&TX6_9E4LP!H0EQFMPN?(GR+'%U8F
M!/HNSM#CCHT6[H:( $EG60HQO478ZZAK:2AC)N F';+GVS(YS 0$N,Q'P[^-
M@PO&\QCGF0 )1P/X;34?B6#D*T*@L) US$32UWG,9<YVDV-H5V-D>/^8N5.V
M)UOCB"!W)@6I5S3:-V;TZ^/F9>R&/Y@M")*B#XZGE8$O-UE=\#]1$O3CRGZ&
M(\Z2-=@UHOCFS;M%=TGZ_J=R2D' ?C=Q_9^],M)M@'O^+,XNO=_S!Z\TF?UL
M#[O3L=%D]N4*YEX7 T"[3SX"_>GYC'&)T.29/&0YN.L'ZU.6H_)X?J"^B9^K
ML$K[8Z;%+LQ%HHO>S[*@[:482CCBQY"RH7TCC.7CO]>1)IS"D>4-FOFKSABL
M 31HT_?NE5=):N&BMJ*6?@\OB.X?@;IX6N^HDLX'<Z\GUPR^OH@NZ=0]A*_3
M0U'FF"DFX.0"B#?D-2K%<#$DE ?F$!&U?>D50WZ3/_Q&?6^/WVT9,[Z_.GG?
MF@O,\>:2W2RUO<QUMJ A8/ 6\!WR#%R3/Q)?7]8FZ"RP(E4@TN>5YGR-44B]
M17O4_<(VC=0W*'NE5<%%0PEQ*M20H;_/HRY9"[<,G:O,$(0S 4J,@"&-!N6?
MPR/ZZ;.$\;+QMGUT=.SYC6&\*$\CJ4.0UW/F66ZJVW%A_Q1,#<[&\8,"\"Q<
MWB/+:%04)%X4V':B$>9?SGKS)=QWY;T?_D'X,,MD/)WE:D?67)_9(TE-FT%'
M"LNTJ49#/\7C7&8?O"NF,&;0S'5A$'I83]?0XG\=7/Z<S!1>;C9FO[H[@RM3
MPV=%W,NUVY(9WE6W=YF6\;O$5J[F*8TJ"+S@<H"J(.+2R6D!6;I;VO1?6\Y+
M,MQA*>I*OW6A/H_HO&FI:9BY32K\OZK/8&$4W+3J)%> P%HQIFA.T#FFA9$
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
M6U=MLE/9C_S)8".H)@HN5_D@\X'M+8P'_R;_T&N80K/;5A")&R9AN.V.HTS
MZC^H/^#_H/ZHPA^G<9 QJ/C;O;<TIW\Z[OE6"S_DWV8G^#".GL:,+T/2 E J
MME<PMRWW!#D^-5I>NV9HY^"\$N5(4KR[+?,1]Y-10S9>4OH6ED;Q-=F-#VW=
M)7D9!I#1B(\5JU!5N!S]\RTN]E;>W: ,X<M8TYNC]E?M L:]#Q[>T=IMX_VC
M_)9E?I>#Y8-%C^B?L=#C?'>D"S(_G''^_M6>6CLF(&YUPPR!#*)*JTZ-&_U6
M#!W?:-GCZ6<"@O)JSF-M&D@:[UT= RJ/"Z@'V90.%&ZT>T4:K*T1&EL&2?P
MUH4KR3B9K&?ZK^9ON^^C:[I3GO@I]J3Q\N>=-3F<:ZB:^4^/%33_C'GU02$2
M8CBM&_-:$> ==>^-IIK7;A (1#E67Q6SV3C@W([;:&X-:YOOVOO+-^HY46?4
M0ZUD+)XO8%W^Y()83<0+:#Z?D\@&QI(K:IH,K4]>'5_ [EK.%59K1<W^91NU
M@I:CIKC[2FE'JODK>%@]U(UL?PO8%L?RD256?:=779R-M"Q_-'HR 0_*V"F[
MMFPN:P#,=3)+6+4JL95M^6[_3D;G_7%3N<S]JXK =YCT!A+B6GK)TA6,%'0!
MQS,EBQ6;W7(H^)*FNS<BN8U\OW^,*!/..$K*)_L2?<Y'>#?9S$W5;35:%"!*
M9D$2]-)BP1N+WQ<\*A,_OI>:SJM&ZH:U:Q0>Q=Y)PV0TD&*.QI28)&RZ_^4<
MY?G?G:/N4R+(HTT$GMT'600V^]MW!-P^RS8,BKSMA)9-2 @5FONH\6[W77G6
MH/H\A9<_/Y!&X UMM,RN'(JK:-UVF%([!U%M_HLZKA!^WJX;H$009_M*3MWV
M]'GL%NG;,)MDGL-5OC8QACR# 5/<2$S <THL,4>;2TMGXK&'MM+5J\?OA?7<
M+OBU'\GB33]' G_8(@0P^ J[MC)+C4?%V6Y/1.,GW%6&DI"JM;SD1,W$ZR>
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
MATU/P\0U.CVQ,IF*_+ !G7=9>XL SGB:V:GV(2=B%P5EL/-?_BJ)'E,=*'H
M/>-OB=\@ :PW!2:/;.7):19VYZEAT5:.E@YWU>S/-G\D/3UADH9)Q(0TOORV
MW.>\;8]V_-16X,G[1HJ_H5OLL$?"-"#Y7Y$.\880U_EM02>Z\N7#[%;?K%@L
M=;2^5N&]-_MUG_4'F8>H'D1JN1>E/Y"O7$PM&$UG_XG;U75IW59A\:9($%N:
M5AV) ^6.\GP;UY-%C1?)LAO?H="=K[L.C : K[I61'^'!%[&/7Y\=P,Z$%#G
M!.:=VF!%=)[_YE'LX]76UN9!B47<@MOT@V1@V%=5>;=,W"_C=3CJPQ,(_;_6
M1[^OZ21VJR$& QIZZGO"!&2+=6D_0YLA+8,Q$CS2MFT&3$#^M]B#D(T<&( M
M?\U;G8HD$@U.7]2]:NTN 0#<$4WJKVB.<OCUZ%+DDLV4OT*\+?]E#8&8UR_?
M HYEB6/[Z0=HW%J1QL(.$B%?E+P=.&/695)ZX<T7U,#]NTGC+"X:*_/4.RV3
MBA9D8. /HVJ-RW-L[@U2D1'[OS2>'^P-1EC>"/^#",R%GOZ$F(<06KT0B 0F
MX.%;QY.Y0&FK.(W=A&:9E3W<NKN9BOO5@R*F#+9F?6S<0&[JBP&Q#:Z]5(P1
M A$?@H@*(GOZ]<H;NF9_9O?I9?U.64B@H@+D-?-Q-DC4Q/UVPBML]8W[TPPC
MHY:HSTI"P1WA*Q/;.]#P-Y=(F#HF@'MD\30=S>$?X%I:/Q8M:_]^)UKDL[I<
M4L4<UH@>XKI=24G+-"UG6:DT#8U;NI :YK)WGK:\M!X"W'A<;<4$O# AT,]L
M[U;0G_SI#CS&]0$MG80C74>HU6WYIC\/[;!;-OB9X-@JLXF;&J)\G&*@R;>)
MKH.%%!^3?NF)#OWTLW9XX:[A8^N*^''YGF7S4Q0":5T[P:R\S\USU5Y][U6
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
M=<":(8K^DL,/Y.$U8V[4=60C!<'%2M.C)Y<\DG:,62)V 2/7]A!X:]:DM),
M%>R"*#E^OVURO<Y79(HSF#1R>]1-ZQUH,//1]UM?%[+!?BP9<]K>8F)>>_Y>
M)D+:%E.\3R*ILG1D*LI:?,I46M]H^EK'0#YCK&Q/RGYI%.'.:GP%DP@:^C^=
MS_T_7ZD2POTS:&ZP+?ZD)UM[6? ZU>>Y*:IHL5U(;U\9[>8U?4S4&V( 9(/R
M@:WO<^JT[7=MDBO\>:325@O=SHG,,0'2F!GO<2^))JX1DWHD)WST409C? ""
M*C12O!;0HWF';>N"H]V>)1&R*C;-%8BU+QO!%;K&3J\HL$.<]Y7H<[L7N>PV
MLND\TE-"V9:S3( #II\)B)U R'SSC*BYF [<H>$>':#8,6^^QO7PI*N4-,F6
MS'%ZE-;XEU[[FY]#A=D\7-8([WCG#R(WN:NAI^&Y7F:3NF0RF*=I6I9_*1\K
M[N#B:X+;JOX0+.E2#V(9A'MEY?E_3-?)/."%?#$W E7,\+]3QB*,.YTR^.Y4
MB?5_?9;RK+K_KJYSU+"8.T-=R%NB'O\>)$[)>5MD.$H/T>0(DE?Z;O#'$D]5
M60'M$>8'EI?1LO_D_<R2L$RT?-7VGM\GH_.%Z)V@NBAR[>I'J)K):!/L^-N&
MLP_8[;A%PNYG9TX"6%2A27.)1D^^+;[@DV-8E[6ZT6ITAHN G,L&)?#A#8T]
MOD8Z5$<-\V.>"6 #L5!@4RK9I6C'G0[]V+-+'I<NF/3)O():4*(&:CB#C6GU
MV,OYXBDYQD^>^1I1.WE8 FJ[]6YT/?TP++-\^)VK0.E?/P+]_W,]3LN!&2,^
MV@T:1V^7HM_4O*Z,ME2E%!Y-?!Y59!QU5?WT[R>M?%F237 +JHDG7X/%=$%Y
M.?E$UT*,+/&&[\P;=I_\)1+^ F,(>V.P\?-"ES'%?;SRU@,\6CAAR)[V16#_
M3PG..<4J>9UHCYA#COJ>? $E\*K"K3=O5;3RP00- 6RDRIF1Q6.G?,Y7]V\+
MVBOT(V?S^G($HA9N>H$:XDDH8<1PDE#WPQB&0%&">>5%MB#5#V- <_4Y6L
M%CQ00M=IC,WSRE[BNQO=ZQ:_9!"!C9/(*'F**:][&RX0EA8<E;!:Q 3<WDW9
M".UM#'6_3*I]KA?KL:Y%BQVC/V$"B"PMCA?@ZILO^[8A'^HH#'Q1^PW+KG?.
M3 #I,NS=087QOG758C*K.SAXI1@L>8#]^$?"2\53$M$&:P?<2><#EH^20CQ'
M5&'1**]&*1G/._QZOBQBH=%[9R?[D,A7]$5JNGE?Z&H8:.S3RU3]K9,,03K?
ML>LG$?S<4/QVFA;)BX,"T:/(-B57J6+OPH64L4E('XX+^7)4$"R]W"P0@8O-
MZEWA3WTPG$KM8 *.L&UCDJN5IGPEZKV=#6U&W+ )-M]$RD*O@.;[J$DPHBS-
MR/^'IP6?<M4J<!,YD+%4 0XP7#'+?GUVY^EJ-:X5OD9#Q6$%&,W )0P<YLL8
MW#'[R$#);$&I2]@XTKJ_*_KT8I9%BNW.OGV\:_#$C>_HYTN^>/&2*Y@.I^%T
M&=EH,D_E:A%49A%=877GI%ED0RS+$WQN4A$"LV5@?O]9MYJ71M?_'9?^?[T@
MB31#RN(4X9/M<6/4-Y\L4VE*KM3;5Z.]/F?OZ>,O++U]R\GA^K2AOTE/+[,E
M7B=9D>S9#CH:TO@R_<>)*NL47>A5.W39'WNQVJ3/PI%F4&LFX" ?(WF=*LM6
MXZ9S)MML'5,7<X9_E%DC.\90/=B86+8Y-]"5*_LE^Z:4-QK 5[<0 N&("&0>
MJBP[/R7'R/;,WN!@S,Y3)@"O%60@3VO%X(5@T_.-4O ;E63S[\%CO,46;V07
MJ04E#1.$L27(29^J((=TAZ(_9X<8XC7QRA<.0)IPD7D0KK.EC5BMT]#RI[3
MLP.*K44R)<3MGR9RC3R8(@1XG(9K.OI<VT+I&)2/;[TZ@90SAQ)U1I%: <XV
MH(N550X?S.Y;?>+RS<&)D'DWQ'BW%!$\;8NP9YL(AS92(?DKGELN4:U?V!AV
MV&V FT%9D#56S<@LC3Z1'/<):N_+-[:&CB8BL=2OP+=J7N9Y>4MWM[LK^];7
MW 1CEN7[.B3134'RCX/WX?^AB 6RA';(#G_$2A=G+(U"W7\]-I9T;$AB(7.%
MS)Q.7B@;02O*V#NTAS V+8^1Y?O_[3N/XM6>+./'YY)G" _SVQ\_WD6S(EI
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
MXX#P*K<$ST004$:71;1UI70[<GSXH<8-_+[=$KPN2T+\KZKU R8JT5_?56W
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
ME&<==D-H/4(W S!S(0C<- L#&,,PU5J9U:@[,E<]5+5GPH"_%*FH156 ;%0
MJKT0ZX6<%P9]ED!>[+#)5E[5[-2<.5&C!6^<)"-KK<@!GA-%GA^C$"8J+A<;
MU\"$T].3KF=9I:@,C1J45"VK3!:8F;?\0LNJ916.F8=)=%FEJNSS-C7V^A[?
M5?M3]>;\$D-ZC;'ON0 &H8.SP(%9SL0S,W(TL\DN;1K>8WJ9U\-!,%\H_!A*
MT^RAT'8!CMC93L1:=Y7U0;7M?.'_"C"0"/L7P(([YG_&PKE8_['7C<;XS]AP
M&ML_][C:RH"DXS'M__<YPZ;YZ+(PBWP <UHG,'-<[&*$'%M%]KR@>B;6BGO5
MJ*_ ?)ZF?@TIVH-2/IJ!?A$@9YU=HJR(H!QRAJH)"BJY!.]0$F#6^H*24G21
M^(02@_=H!X2XX\C+09+B,/3S.'*@BA+4'"H9)^M9/E!YJ39'UZAB9)6 R[*P
M+-8::)<5'N-4.ZO8PNB5%4A^2F5NV6B5[%'OUR7\F091"H@;'#G(=^PLM T4
MR#;K[[(59%;NWC)WBAQ]ZH!:A#S5H6RJ[/6E?%1FM19!F[P@*JISK=GS/)3(
MI-=4?Z*W5 ]43_% E-@)I4@7>'&:NCASO<A5L4$PJH!F2OSTX9-%96+RZS9&
M]J>CJ[J54-\XN%)4IP0R 6K;R;VR.LE6*UIA\4U9N\WPUK@:2^"I69 8>6F^
M';&3%<)LU>JQ;&#]3(N>;')<WU77_^L1KHJ\P*B+C5L79^D9E'I(@S%PPQAC
MGUYA IEJJ/$*ULP[/36L9JL'/82!UK]VJE@/].!R197A.Y-@QI;M@$8'8@*T
MTT=LIP<]KKBV]JJT1[WTBA=]D/&=Z^B 3N*@1Q6$W*<_O#C,'0<QMV?T?(C7
MRM,#(^[WC:Z:&>]&421E&<LSA=>N*,9E&6LSLQ>_*(90T<I,[R4SUUE6$4HH
MROOM!7-#F_^A[X,D="'P\PBY>>1%3@ 5+,H&A9O8HSH(MK:W*:K<RQ_&5(K6
MI)$2X#!^D%21U:2U9IAI6(4ET- D.(R<,]W&I5+JS\)K_1 D:6P#.T0. 3 )
M4SLP6_V1BXQ$RST>BJI8D-8#*YKG-O(=(E1<I 2DL2QWS0PFD+V^I&QTLXS'
MH]@2>%  2/59X1?GS%Z9E"X7_;10RGY9=4*N>9*#. L=$.=![&=A@E/,<UF
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
MRRJWGC&L3<,;>3Z($_(E=SPW<>,P0##;PONF1,L!=Z<,.^&35:<I4.5.X-3
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
M1VT&CN"6RMK3;+?7WL'2-RH6IZPD*4*5"A&F(U<#3W2'!<UR@>Z&;S5GM@X
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
M8GKME:W=P)@O3<^_?@Z+=7BD<\A12'UR("0W-*U80L2!38##@M8B*#UE@G8
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
MFZ7[HV07H @92H& &*FITM*YW?NUASM:O2-K3M1KSY5C#TJW 2[O[1NABO+
M0@*EA'(D/!&&5G#N-+9ONEL4VZHXX]T;QXKR[X$!T]32*%Q03+:BQB1V;ZKA
MJKE[4ZF[#&)<Y37_/09%K "$<6!(\N!5[4W_S'=OJD&I?2M"E8;RM4)VI[S2
M@)SP!DQ$$K04T1$?J70C^^YY[]UT[F'U"V$N%+6?W\W6?YPM_+\6+JPV:;QN
MOCU;+HI-@Y6Y"1S?FWUG]Q?U72[O:N6N*_88J '%#8.(M+ *4\M#K\?M.^W-
M) ()#=EWB.KC42&7P=!S86B&=8+$)EP"P40Z[CEGP\[I_1<*']N)Z'! C$F'
MXX>$OAD2B[#I=0_L^[!_%<SZ>A6*R6!]?^+O?H8P]S.$6?C79[^WV!=KWVA7
M>V4==[_?_;/2"W9+-S>L TLU!^:$U"X:HH:V.A^5>92+I_>N=G,<+%8,N">>
M4\4"IU4!F\'OF\[2>.F6CYW<,GT4L./;*1^^]^'7;]]__&T65DFH3]]>AB]A
M?BB:@D0 HV0 RV51+C4P6N_FM2,V3NI)-BU>-J#(LG>\<F+APU5POW\EZ;N1
M@6$" U,82<%CM,[T1<8Z HZ[J]('0\I(V#E<.7'Q8O'Y>K/>:@R3-'[IX<AA
MI RT,CR1!EFK(D[>0&_T*Y$I$\9U3X<RXG6!3:Y<.]P5[!%8B2TXY(C%7%GO
M&\2^CJ=95@SK!/<ZI&H 0J9\(H>[0EB$-,]+L!H1R@/RV'>=3%4ASJBQG^'Y
MU 2$3/E4HB)L-1@KBJ,L7//@HA"T0<GTH_ETS K8UQ[2\'QJ D).?+JU%/S9
MYB[TN7WY;5B]_Y0T7I+]0Q%HC2A$'CTGE%'F&V12'67H5TN8R2PVG-W5/6X9
ML/+Q%,@8-6A&DK+2> T*2<OJW3[=?^;QT/LC/<8V6N*0'9/J9#0JCL!0%<%;
M);@*W'+1];(Y_13D:MQ;IR!7@C ^K5IGLE(N04?-(&JL!'6(Z$".)]E?*<B/
M<J7C%.1*X,8GYH=7UYMK,W]QO? EU9.X R4%!8&3[TP1(]%VO6[NRC"N3=8O
MH=HI/ /"/$]#8!'\PQ2([1AXMIS/@]O,OH3+U?5Z4](Y1\%$IP$9I;V01G'6
M]7&=HP0<U^GLF6K]097WV0D3,-C@+7@E=41$84*JXOG]G)T8.MVU![.^K:XS
M/D2A&06K$KV#81(Y+R*K/--U(H<HJN&J>8BB4G<Y'Z)0#H-"Q(-#V),H@I1B
MI_[19 ]15(-2]Q!%I8;&MSZ.GOM>EN=^6K"<$6 X#0<M"!-VX/+UCPM=BVE#
MWPW27_AH('2G0./SKVY^[8L4YNW+J>7TAXO%*[-./VZMMN^JV(O5LC2$M3-
MTZ\$*R6,'OBT<J-^3"L/K"'UCB5\7SS(N*12<5G9M]GWSFZSYXTK'MRFCE*-
MIW9V!<Z1'>@WX_M=F">_TF^%2M3=?K\X*%Q9RBU%$0S7!A!VRALNB:X\BM[#
MA')\)WJ:H>L+<G U-,6U[%QQ$,@&S ,*I-_C;ZU[D.6LW#.G:\[2?7)A?!NE
MQIZ.TPP4%AJ2$YE6/!VH]OT6W\DV7[Q7+AR]R5H)3';4JA/WU$R#-82#8H:I
MHKHSP54U+_Y[;K)6X]YZD[42A/%IU7JO3B(+VCD*Q:W>+M!(!*XJB__7)FM3
MKG2\R5H)7.9[%;0X\IO&K9?.8J,0-=Q7<.XTZCP-L5RV57[&FQ>84]#;]#\5
M1?1>4TZJLD%.9?.B$JZZ]W=4Z2[GS0MF+"B'D]^27N51219"[>NH,]^\J :E
M[N9%I8;RM4_J3X:E04<G$6B;E$A"^ME8&2T9V')IT(LLM]$'].3&(D2^0^'>
MSGQ]78SP-W&;E+[7/99\'"U4FNR8Y":9?)&1@>OFE(DZ\?!$0T8=NZ_1 MXI
ML+?%MHU/]HU5W$!T6FJ.%?:[=Q!/=_LN7S]C(-[W18S&@^)+6-EESSMZ+Y:K
M*\X1NBN*]%N!P\7OA<K9[+Y2TDW!N-_"W)O-^<(OXW\&LVI3(JJ#9CLK$M6U
M"OK=-+R3Z,V-1(5 J0</:OV5;*LD9H**R@(Q,7*,&/%RX*R:NJ+WM 8\UOQ!
MHU%+ UJ3 )YC++ .AI$&2?9]JBW?S<!>N%IS8N\>[;RCE;&XIHL;"I[:XKRI
M<,ES'SQ:F1O#&J!</T99J?*,8Y34QF2N! Z.(U*D($E56=KT1&*4U7#5C%%6
MZB[G&&5A)UOD31)<RR("PDG]&Q8SCU%6@U(W1EFIH3&A76T^O"M*V1XL+>8\
M&"<B$$$9$YQ[1FLE>J2G/MAY3[_=C^@?&LS2>>QOVF^N[!P84K+A*S4H5(3P
M$>8\B1YEO8*2=3@RYKS0 JQ=N!MH;F3 7\T6LZOKJY*SS2:"L30 ,U)AS5#P
MNE92SB.0_]#HR* W@6S9A?[&!MY\+1><,0O6.0TX"L>8Y%&J6AG!CP'_L-%Q
MUH3.@&^LO_'CVS4RS3128!GF:?*SQ&HIK91=EP]NF/HY](9A?V9"1W!D1ZAZ
M^6,85'"H.,ZH1>21$M7O3;%33/BLQKV#A,\*$#*@5:L"!P&%Y(D5ET,&$[W#
MUK.(.F98][4HLDKQK&)'E[4H*J'*@(>/U7012703E &/N*:(4"&Q[IAJ4R^B
M<Q2;6BD\ \+<J^?"IR^S. NK0_,[1LG<Q,B#$$90++0,LK]C#S_*DN7A\R&-
MK1;0C$^QI@I\698'@:@'@[T"[[%Q!'D:T,"G0&O+7HNZ_-2H.RSD66P]79JO
M=Z/4;?&]R2O;/^WIP<K(P3G#6>3&51=_K;L75=+\)#<Q&[)@;T>K"TCRG3Z+
M_P]W*!9WS6ML@!I.C5<NVB;5T]O,C_?"37(_I1T#^P$N7R8>UN$QF8;/KE<%
MF@>3#2628(NC-DH1;2F+S(F!$[FZ[> D0X>]CH@1"93OJ"K2,F=N]MDDY2_O
MN_TN.;![00F%P'+.@2MA#8TF$#/PF9L*:2?IO?6[ G0$;;[D/:S4G7Z?Q23'
M\Q"N@G\^6V]6,WM=L&(O3P4EQ\-)"E8S'UP:PEX/;,ZTZ<XD/< 1IOL>R)%!
M?EJMOCY;KO=R@BU6H%@4P*6VQ#$5G-LQ>\KSUVJW6HN<XJ3(V2\R4YN2]UR0
MHDBF%0YTI$)3Z;DG64RVM9@J3XJI_0/:G*W+C9G7.:EU^X?BBS7K\,^__7]0
M2P$"% ,4    "  PI=U<8R:38BT#  #7"@  '@              @ $
M97AH:6)I=#(S,2UW:7!F;&EC;VYS96YT,C N:'1M4$L! A0#%     @ ,*7=
M7+2?L$LJ4P  6Y8$ !$              ( !:0,  '-P<V,M,C R-C V,CDN
M:'1M4$L! A0#%     @ ,*7=7'NAS&-A!P  6CL  !$              ( !
MPE8  '-P<V,M,C R-C V,CDN>'-D4$L! A0#%     @ ,*7=7,,<ER\.!P
MB$@  !4              ( !4EX  '-P<V,M,C R-C V,CE?8V%L+GAM;%!+
M 0(4 Q0    ( #"EW5S/)^)B0"4  '8_ @ 5              "  9-E  !S
M<'-C+3(P,C8P-C(Y7V1E9BYX;6Q02P$"% ,4    "  PI=U<+MT^O.[(  #K
MX@  %               @ $&BP  <W!S8RTR,#(V,#8R.5]G,2YJ<&=02P$"
M% ,4    "  PI=U<^8"#/R N  !H4 ( %0              @ $F5 $ <W!S
M8RTR,#(V,#8R.5]L86(N>&UL4$L! A0#%     @ ,*7=7"\<P=[6)0  T#$"
M !4              ( !>8(! '-P<V,M,C R-C V,CE?<')E+GAM;%!+!08
1    "  ( !@"  ""J $    !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<FILENAME>spsc-20260629_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2026"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:spsc="http://www.spscommerce.com/20260629"
  xmlns:srt="http://fasb.org/srt/2026"
  xmlns:us-gaap="http://fasb.org/us-gaap/2026"
  xmlns:us-gaap-ebp="http://fasb.org/us-gaap-ebp/2026"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="spsc-20260629.xsd" xlink:type="simple"/>
    <context id="c-1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-12-31</endDate>
        </period>
    </context>
    <context id="c-2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-12-31</endDate>
        </period>
    </context>
    <context id="c-3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-5">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-6">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-7">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-8">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-9">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:DefinedBenefitPlanCommonCollectiveTrustMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-10">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:DefinedBenefitPlanCommonCollectiveTrustMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-11">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-12-31</endDate>
        </period>
    </context>
    <context id="c-12">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="spsc:EBPEmployerContributionVestingAxis">spsc:EBPVestingScheduleTrancheOneMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-13">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="spsc:EBPEmployerContributionVestingAxis">spsc:EBPVestingScheduleTrancheTwoMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-12-31</endDate>
        </period>
    </context>
    <context id="c-14">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="spsc:EBPEmployerContributionVestingAxis">spsc:EBPVestingScheduleTrancheTwoMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-15">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="spsc:EBPEmployerContributionVestingAxis">spsc:EBPVestingScheduleTrancheThreeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-12-31</endDate>
        </period>
    </context>
    <context id="c-16">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="spsc:EBPEmployerContributionVestingAxis">spsc:EBPVestingScheduleTrancheThreeMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-17">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2025-01-01</startDate>
            <endDate>2025-12-31</endDate>
        </period>
    </context>
    <context id="c-18">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-19">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-20">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-21">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel12And3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-22">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-23">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-24">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-25">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel12And3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-26">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-27">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-28">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-29">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel12And3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-30">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueMeasuredAtNetAssetValuePerShareMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:DefinedBenefitPlanCommonCollectiveTrustMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-32">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-33">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-34">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel12And3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap-ebp:EmployeeBenefitPlanEmployerCommonStockMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-35">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-36">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-37">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-38">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel12And3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:MutualFundMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-39">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel1Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-40">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel2Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-41">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-42">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueInputsLevel12And3Member</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-43">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:FairValueByFairValueHierarchyLevelAxis">us-gaap:FairValueMeasuredAtNetAssetValuePerShareMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:InvestmentTypeAxis">us-gaap:DefinedBenefitPlanCommonCollectiveTrustMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2024-12-31</instant>
        </period>
    </context>
    <context id="c-44">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2055 Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-45">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2050 Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-46">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2045 Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-47">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2060 Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-48">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2040 Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-49">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2035 Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-50">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2030 Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-51">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2065 Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-52">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2025 Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-53">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Collective trust funds| Prudential| Total Return Bond Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-54">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Collective trust funds| Union Bank and Trust Company| Morley Stable Value Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-55">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement Income Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-56">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2020 Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-57">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Collective trust funds| Vanguard| Target Retirement 2070 Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-58">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Mutual funds| Fidelity| Institutional 500 Index Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-59">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Mutual funds| J.P. Morgan| Large Cap Growth Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-60">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Mutual funds| Fidelity| Mid-Cap Index Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-61">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Mutual funds| Fidelity| MFS Research International Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-62">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Mutual funds| Fidelity| MFS Value Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-63">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Mutual funds| Fidelity| Small Cap Growth Index Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-64">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Mutual funds| Fidelity| Small Cap Value Index Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-65">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Mutual funds| Fidelity| US Bond Index Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-66">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Mutual funds| Fidelity| Total International Index Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-67">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Mutual funds| Fidelity| Small Cap Index Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-68">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Mutual funds| PIMCO| Income Institutional Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-69">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Mutual funds| Principal| Mid-Cap Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-70">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>Mutual funds| John Hancock| Disciplined Value Mid-Cap Fund</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <context id="c-71">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001092699</identifier>
            <segment>
                <xbrldi:typedMember dimension="us-gaap:InvestmentIdentifierAxis">
                    <us-gaap:limitedToken.domain>SPS Commerce, Inc.| Common Stock</us-gaap:limitedToken.domain>
                </xbrldi:typedMember>
                <xbrldi:explicitMember dimension="dei:LegalEntityAxis">spsc:EBP001Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2025-12-31</instant>
        </period>
    </context>
    <unit id="usd">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="year">
        <measure>spsc:year</measure>
    </unit>
    <unit id="number">
        <measure>pure</measure>
    </unit>
    <unit id="loan">
        <measure>spsc:loan</measure>
    </unit>
    <unit id="shares">
        <measure>shares</measure>
    </unit>
    <dei:EntityCentralIndexKey contextRef="c-2" id="f-5">0001092699</dei:EntityCentralIndexKey>
    <dei:EntityCentralIndexKey contextRef="c-1" id="f-6">0001092699</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag contextRef="c-1" id="f-7">false</dei:AmendmentFlag>
    <dei:AmendmentFlag contextRef="c-2" id="f-8">false</dei:AmendmentFlag>
    <spsc:EBPNoteReceivableFromParticipantBorrowingTerm contextRef="c-11" id="f-58">P1Y</spsc:EBPNoteReceivableFromParticipantBorrowingTerm>
    <us-gaap-ebp:EmployeeBenefitPlanEmployerContributionMatchingPercentage contextRef="c-2" decimals="INF" id="f-65" unitRef="number">0.50</us-gaap-ebp:EmployeeBenefitPlanEmployerContributionMatchingPercentage>
    <dei:DocumentType contextRef="c-1" id="f-1">11-K</dei:DocumentType>
    <dei:DocumentType contextRef="c-2" id="f-2">11-K</dei:DocumentType>
    <dei:EntityRegistrantName contextRef="c-2" id="f-3">SPS COMMERCE, INC.</dei:EntityRegistrantName>
    <dei:EntityRegistrantName contextRef="c-1" id="f-4">SPS COMMERCE, INC.</dei:EntityRegistrantName>
    <us-gaap-ebp:EmployeeBenefitPlanCash contextRef="c-3" decimals="0" id="f-9" unitRef="usd">1920</us-gaap-ebp:EmployeeBenefitPlanCash>
    <us-gaap-ebp:EmployeeBenefitPlanCash contextRef="c-4" decimals="0" id="f-10" unitRef="usd">2142</us-gaap-ebp:EmployeeBenefitPlanCash>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-5" decimals="0" id="f-11" unitRef="usd">74651689</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-6" decimals="0" id="f-12" unitRef="usd">62109137</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-7" decimals="0" id="f-13" unitRef="usd">10714050</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-8" decimals="0" id="f-14" unitRef="usd">19378857</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-9" decimals="0" id="f-15" unitRef="usd">170546549</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-10" decimals="0" id="f-16" unitRef="usd">129601053</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-3" decimals="0" id="f-17" unitRef="usd">255912288</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-4" decimals="0" id="f-18" unitRef="usd">211089047</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanOtherReceivable contextRef="c-3" decimals="0" id="f-19" unitRef="usd">4721</us-gaap-ebp:EmployeeBenefitPlanOtherReceivable>
    <us-gaap-ebp:EmployeeBenefitPlanOtherReceivable contextRef="c-4" decimals="0" id="f-20" unitRef="usd">0</us-gaap-ebp:EmployeeBenefitPlanOtherReceivable>
    <us-gaap-ebp:EmployeeBenefitPlanNoteReceivableFromParticipant contextRef="c-3" decimals="0" id="f-21" unitRef="usd">1611115</us-gaap-ebp:EmployeeBenefitPlanNoteReceivableFromParticipant>
    <us-gaap-ebp:EmployeeBenefitPlanNoteReceivableFromParticipant contextRef="c-4" decimals="0" id="f-22" unitRef="usd">1261443</us-gaap-ebp:EmployeeBenefitPlanNoteReceivableFromParticipant>
    <us-gaap-ebp:EmployeeBenefitPlanReceivable contextRef="c-3" decimals="0" id="f-23" unitRef="usd">1615836</us-gaap-ebp:EmployeeBenefitPlanReceivable>
    <us-gaap-ebp:EmployeeBenefitPlanReceivable contextRef="c-4" decimals="0" id="f-24" unitRef="usd">1261443</us-gaap-ebp:EmployeeBenefitPlanReceivable>
    <us-gaap-ebp:EmployeeBenefitPlanNetAssetAvailableForBenefit contextRef="c-3" decimals="0" id="f-25" unitRef="usd">257530044</us-gaap-ebp:EmployeeBenefitPlanNetAssetAvailableForBenefit>
    <us-gaap-ebp:EmployeeBenefitPlanNetAssetAvailableForBenefit contextRef="c-4" decimals="0" id="f-26" unitRef="usd">212352632</us-gaap-ebp:EmployeeBenefitPlanNetAssetAvailableForBenefit>
    <us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment contextRef="c-2" decimals="0" id="f-27" unitRef="usd">23867828</us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForGainLossOnInvestment>
    <us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment contextRef="c-2" decimals="0" id="f-28" unitRef="usd">2656724</us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestAndDividendIncomeOnInvestment>
    <us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment contextRef="c-2" decimals="0" id="f-29" unitRef="usd">26524552</us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecreaseForIncomeLossOnInvestment>
    <us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant contextRef="c-2" decimals="0" id="f-30" unitRef="usd">118377</us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForInterestIncomeOnNoteReceivableFromParticipant>
    <us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover contextRef="c-2" decimals="0" id="f-31" unitRef="usd">21422325</us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionExcludingRollover>
    <us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash contextRef="c-2" decimals="0" id="f-32" unitRef="usd">6099464</us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForEmployerContributionCash>
    <us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover contextRef="c-2" decimals="0" id="f-33" unitRef="usd">3694989</us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForParticipantContributionRollover>
    <us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution contextRef="c-2" decimals="0" id="f-34" unitRef="usd">31216778</us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseForContribution>
    <us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease contextRef="c-2" decimals="0" id="f-35" unitRef="usd">57859707</us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncrease>
    <us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant contextRef="c-2" decimals="0" id="f-36" unitRef="usd">18327587</us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForPaymentToParticipant>
    <us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense contextRef="c-2" decimals="0" id="f-37" unitRef="usd">249299</us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecreaseForAdministrativeExpense>
    <us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease contextRef="c-2" decimals="0" id="f-38" unitRef="usd">18576886</us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitDecrease>
    <us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease contextRef="c-2" decimals="0" id="f-39" unitRef="usd">39282821</us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitIncreaseDecrease>
    <us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan contextRef="c-2" decimals="0" id="f-40" unitRef="usd">5894591</us-gaap-ebp:EmployeeBenefitPlanChangeInNetAssetAvailableForBenefitTransferToFromExternalPlan>
    <us-gaap-ebp:EmployeeBenefitPlanNetAssetAvailableForBenefit contextRef="c-4" decimals="0" id="f-41" unitRef="usd">212352632</us-gaap-ebp:EmployeeBenefitPlanNetAssetAvailableForBenefit>
    <us-gaap-ebp:EmployeeBenefitPlanNetAssetAvailableForBenefit contextRef="c-3" decimals="0" id="f-42" unitRef="usd">257530044</us-gaap-ebp:EmployeeBenefitPlanNetAssetAvailableForBenefit>
    <us-gaap-ebp:EmployeeBenefitPlanDescriptionOfPlanTextBlock contextRef="c-2" id="f-43">Plan Description &lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The following description of the SPS Commerce, Inc. 401(k) Retirement Savings Plan (the &#x201c;Plan&#x201d;) is provided for general informational purposes only. Participants should refer to the Plan document for a more complete description of the Plan&#x2019;s provisions.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;General &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The Plan, established on December 20, 1995, is a defined contribution plan subject to the provisions of ERISA and was most recently restated on May 1, 2024 when the Plan adopted the Fidelity Pre-Approved Defined Contribution Plan document. SPS Commerce, Inc. is the Plan administrator and sponsor (further referred to herein as the &#x201c;Company,&#x201d; &#x201c;Plan Administrator,&#x201d; or &#x201c;Plan Sponsor&#x201d;).&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;In May 2025, and in connection with the Company&#x2019;s prior acquisition of all of the outstanding equity ownership interests of SupplyPike, Inc. (&#x201c;SupplyPike&#x201d;), the Company transferred the net assets from the defined contribution retirement plan that SupplyPike's eligible employees were participating in (the &#x201c;SupplyPike Plan&#x201d;) into the Plan. Total net assets transferred into the Plan were $5.9 million. Participants in the SupplyPike Plan became eligible in the Plan in January 2025. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Eligibility&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;All regular employees, upon attaining age 21, may become participants in the Plan on the first day of each Plan month for both participant deferrals and Company matching contributions. Additionally, participants are eligible to receive Company discretionary nonelective contributions on the first day of the month following one year of eligible service if they are employed as of the last day of the plan year.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Funding Policy &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Pretax and Roth contributions made pursuant to participant election deferrals are permitted in whole percentages from 1% to 80% of the participant&#x2019;s compensation, subject to limits established by law. Participants who will be age 50 or older by the end of the Plan year are permitted to make catch-up contributions. Participants may also make rollover contributions to the Plan from other qualified plans.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The Company matches half of the participant&#x2019;s elective deferrals, up to the first 6% of the participant&#x2019;s pre-tax compensation for each pay period. Half of the match is in Company stock, which is purchased in the open market by Fidelity Management Trust Company (&#x201c;Fidelity&#x201d;) and immediately deposited into the participant&#x2019;s 401(k) account. The other half of the match is allocated in the same manner as the participant investment election(s).&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The Company may make discretionary nonelective contributions at the discretion of the Company&#x2019;s Board of Directors. No discretionary employer contributions were made during the year ended December&#160;31, 2025.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Participants&#x2019; 401(k) Accounts &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Participants&#x2019; accounts are credited with their contributions, employer matching contributions, discretionary employer contributions, earnings or losses thereon, and charged with an allocation of administrative expenses. Expense allocations are either pro-rata to each participant or based on each participant&#x2019;s account balance, as defined by the Plan. The benefit to which a participant is entitled is the benefit which can be provided from the participant&#x2019;s vested account.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Vesting &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Each participant is fully vested in the portion of the participant&#x2019;s account that relates to participant contributions and earnings thereon. Vesting in the employer matching and discretionary nonelective contribution portions of participant accounts, plus actual earnings thereon, is based on hire date and years of vesting service, as defined in the Plan document as follows: &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:0.07pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.951%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:77.267%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.296%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.015%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.015%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.707%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%"&gt;Hire Date and Years of Service&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%"&gt;Vesting Percentage&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Hire date prior to January 1, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;immediately&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;100&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Hire date January 1, 2018 or after&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-left:6.85pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;less than two years of service&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;0&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-left:6.85pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;two years or more of service&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;100&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Plan participants from defined contribution retirement plans merged into the Plan are generally fully vested in all balances transferred into the Plan. All contributions made after entering the Plan follow normal Plan vesting terms, as noted above. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Forfeitures&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Upon a participant&#x2019;s termination, the unvested portion of the participant&#x2019;s employer account is forfeited. Forfeitures remain in the Plan and are used to pay administrative expenses. Any remaining amounts are used to reduce future employer contributions payable under the Plan.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Notes Receivable from Participants &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Participants may borrow from their accounts a minimum of $1,000 and a maximum equal to the lesser of $50,000 or 50% of their vested account balance. Note terms range from &lt;span style="-sec-ix-hidden:f-58"&gt;one&lt;/span&gt; to five years and are secured by the balance in the participant&#x2019;s account. A participant may have longer payment terms as determined by the Plan Administrator if the note is for the purchase of a principal residence. Participant notes receivable bear fixed interest based on the prevailing interest rates charged by other lending institutions for loans which would be made under similar circumstances. Principal and interest are paid ratably through payroll deductions for active participants. A participant may only have one outstanding loan at one time.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Plan Termination &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Although it has not expressed any intent to do so, the Company has the right under the Plan to discontinue its contributions at any time and terminate the Plan subject to the provisions of ERISA. In the event of Plan termination, participants shall be 100% vested in their accounts.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Benefits Paid to Participants&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Upon termination of service due to death, disability, retirement, termination of employment, or other reasons as defined in the Plan, the participant may elect to receive an amount equal to the value of the participant&#x2019;s vested interest in his or her account in the form of a lump-sum amount, in approximately equal installment payments, or rollover the entire vested portion to a qualified plan, depending on the participant&#x2019;s account balance.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;If the vested account balance does not exceed $1,000, a lump-sum distribution will be made. If the value of a separated participant&#x2019;s vested balance is between $1,000 and $5,000, the Plan requires the vested balance to be transferred to an individual qualified retirement account. If the vested balance exceeds $5,000, a participant may elect to keep the vested account balance in the Plan, receive a lump-sum distribution, or rollover the entire vested portion to a qualified plan. &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Participants are permitted withdrawals from their Plan accounts for financial hardships or upon attainment of age 59 1/2. Hardship withdrawals must be approved by the Plan Administrator.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Investment Options&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Except for the Company stock portion of the Company matching contribution, all Plan investments are participant directed. Participants may direct the investment of their account balance into various funds and may transfer assets in their accounts between funds on a daily basis, including the Company stock portion of the Company matching contribution.&lt;/span&gt;&lt;/div&gt;</us-gaap-ebp:EmployeeBenefitPlanDescriptionOfPlanTextBlock>
    <spsc:EBPMinimumAgeToParticipate contextRef="c-3" decimals="INF" id="f-44" unitRef="year">21</spsc:EBPMinimumAgeToParticipate>
    <spsc:EBPRequisiteServicePeriod contextRef="c-2" id="f-45">P1Y</spsc:EBPRequisiteServicePeriod>
    <us-gaap-ebp:EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate contextRef="c-11" decimals="INF" id="f-46" unitRef="number">0.01</us-gaap-ebp:EmployeeBenefitPlanParticipantContributionAutomaticDeferralRate>
    <us-gaap-ebp:EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage contextRef="c-2" decimals="INF" id="f-47" unitRef="number">0.80</us-gaap-ebp:EmployeeBenefitPlanParticipantContributionPretaxMaximumAnnualCompensationToTotalCompensationPercentage>
    <us-gaap-ebp:EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage contextRef="c-2" decimals="INF" id="f-48" unitRef="number">0.06</us-gaap-ebp:EmployeeBenefitPlanEmployerContributionParticipantCompensationMatchedPercentage>
    <spsc:EBPEmployerContributionVestingScheduleTableTextBlock contextRef="c-2" id="f-49">Vesting in the employer matching and discretionary nonelective contribution portions of participant accounts, plus actual earnings thereon, is based on hire date and years of vesting service, as defined in the Plan document as follows: &lt;div style="padding-left:0.07pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.951%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:77.267%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.296%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.015%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:8.015%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.707%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%"&gt;Hire Date and Years of Service&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%"&gt;Vesting Percentage&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Hire date prior to January 1, 2018&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;immediately&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;100&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Hire date January 1, 2018 or after&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-left:6.85pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;less than two years of service&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;0&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-left:6.85pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;two years or more of service&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;100&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;%&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</spsc:EBPEmployerContributionVestingScheduleTableTextBlock>
    <spsc:EBPEmployerContributionVestingPercentage contextRef="c-12" decimals="INF" id="f-50" unitRef="number">1</spsc:EBPEmployerContributionVestingPercentage>
    <spsc:EBPEmployerContributionVestingRequisiteServicePeriod contextRef="c-13" id="f-51">P2Y</spsc:EBPEmployerContributionVestingRequisiteServicePeriod>
    <spsc:EBPEmployerContributionVestingPercentage contextRef="c-14" decimals="INF" id="f-52" unitRef="number">0</spsc:EBPEmployerContributionVestingPercentage>
    <spsc:EBPEmployerContributionVestingRequisiteServicePeriod contextRef="c-15" id="f-53">P2Y</spsc:EBPEmployerContributionVestingRequisiteServicePeriod>
    <spsc:EBPEmployerContributionVestingPercentage contextRef="c-16" decimals="INF" id="f-54" unitRef="number">1</spsc:EBPEmployerContributionVestingPercentage>
    <us-gaap-ebp:EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount contextRef="c-3" decimals="INF" id="f-55" unitRef="usd">1000</us-gaap-ebp:EmployeeBenefitPlanNoteReceivableFromParticipantAccountMinimumBorrowingAmount>
    <us-gaap-ebp:EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount contextRef="c-3" decimals="INF" id="f-56" unitRef="usd">50000</us-gaap-ebp:EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingAmount>
    <us-gaap-ebp:EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage contextRef="c-3" decimals="2" id="f-57" unitRef="number">0.50</us-gaap-ebp:EmployeeBenefitPlanNoteReceivableFromParticipantAccountMaximumBorrowingToTotalAccountPercentage>
    <spsc:EBPNoteReceivableFromParticipantBorrowingTerm contextRef="c-17" id="f-59">P5Y</spsc:EBPNoteReceivableFromParticipantBorrowingTerm>
    <spsc:EBPNoteReceivableFromParticipantNumberOfLoansAllowed contextRef="c-3" decimals="INF" id="f-60" unitRef="loan">1</spsc:EBPNoteReceivableFromParticipantNumberOfLoansAllowed>
    <spsc:EBPInvoluntaryCashOutLimit contextRef="c-2" decimals="0" id="f-61" unitRef="usd">1000</spsc:EBPInvoluntaryCashOutLimit>
    <spsc:EBPInvoluntaryCashOutLimit contextRef="c-2" decimals="0" id="f-62" unitRef="usd">1000</spsc:EBPInvoluntaryCashOutLimit>
    <spsc:EBPInvoluntaryTransferToAQualifiedPlanLimit contextRef="c-2" decimals="0" id="f-63" unitRef="usd">5000</spsc:EBPInvoluntaryTransferToAQualifiedPlanLimit>
    <spsc:EBPInvoluntaryTransferToAQualifiedPlanLimit contextRef="c-2" decimals="0" id="f-64" unitRef="usd">5000</spsc:EBPInvoluntaryTransferToAQualifiedPlanLimit>
    <us-gaap-ebp:EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock contextRef="c-2" id="f-66">Summary of Significant Accounting Policies&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Basis of Accounting&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The accompanying financial statements have been prepared using the accrual method of accounting in accordance with accounting principles generally accepted in the United States of America (&#x201c;GAAP&#x201d;).&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Investment Valuation and Income (Loss) Recognition&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The Plan&#x2019;s investments are reported at fair value. Fair value is the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. See Note C for discussion of fair value measurements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Purchases and sales of securities are recorded on a trade-date basis. Interest income is recorded on the accrual basis of accounting. Dividends are recorded on the ex-dividend date.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net appreciation (depreciation) includes the Plan&#x2019;s gains and losses on investments bought and sold, as well as held during the year.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Administrative Expenses&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Plan administrative expenses, including investment fees, transaction fees, and investment management services, are charged to participant accounts as a percentage of assets invested. Plan administration fees, including audit and legal fees, are paid by the Plan Sponsor.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-indent:36pt"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Benefits Paid to Participants &amp;amp; Contributions&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Benefits paid to participants are recorded by the Plan when paid. Contributions are recorded by the Plan when paid. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Risks and Uncertainties&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The Plan invests in various investment securities that are exposed to various risks, such as interest rate, market, and credit risks. Due to the level of risk associated with certain investment securities, it is reasonably possible that changes in the values of investment securities will occur in the near term and that such changes could materially affect participants&#x2019; balances and the amounts reported in the Statements of Net Assets Available for Benefits.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Concentration of Market Risk&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;At December&#160;31, 2025 and 2024, 4% and 9% of the Plan&#x2019;s net assets, respectively, were invested in the common stock of the Company. The underlying value of the Company&#x2019;s common stock is entirely dependent upon the performance of the Company and the market&#x2019;s evaluation of such performance. It is possible that changes in the fair value of the Company&#x2019;s common stock in the near term could materially affect participants&#x2019; account balances and the amounts reported in the Statements of Net Assets Available for Benefits and the Statement of Changes in Net Assets Available for Benefits. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Use of Estimates&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The preparation of financial statements in conformity with GAAP requires Plan management to make estimates and assumptions that affect the reported amounts of assets and liabilities, and changes therein, and disclosure of contingent assets and liabilities. Actual results may differ from those estimates.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Notes Receivable from Participants&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Notes receivable from participants are measured at their unpaid balance plus any accrued but unpaid interest. Delinquent notes are reclassified as distributions in the quarter subsequent to when a participant misses a scheduled repayment. No allowance for credit losses has been recorded as of December&#160;31, 2025 and 2024.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Accounting Pronouncements Recently Adopted&lt;/span&gt;&lt;/div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;&#160;&#160;&#160;&#160;&lt;/span&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;For the year ended December 31,&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt; 2025&lt;/span&gt; there were no new accounting pronouncements that were adopted.</us-gaap-ebp:EmployeeBenefitPlanSummaryOfAccountingPolicyTextBlock>
    <us-gaap-ebp:EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock contextRef="c-2" id="f-67">&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Basis of Accounting&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The accompanying financial statements have been prepared using the accrual method of accounting in accordance with accounting principles generally accepted in the United States of America (&#x201c;GAAP&#x201d;).&lt;/span&gt;&lt;/div&gt;</us-gaap-ebp:EmployeeBenefitPlanBasisOfAccountingPolicyTextBlock>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentPolicyTextBlock contextRef="c-2" id="f-68">&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Investment Valuation and Income (Loss) Recognition&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The Plan&#x2019;s investments are reported at fair value. Fair value is the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. See Note C for discussion of fair value measurements.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Purchases and sales of securities are recorded on a trade-date basis. Interest income is recorded on the accrual basis of accounting. Dividends are recorded on the ex-dividend date.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net appreciation (depreciation) includes the Plan&#x2019;s gains and losses on investments bought and sold, as well as held during the year.&lt;/span&gt;&lt;/div&gt;</us-gaap-ebp:EmployeeBenefitPlanInvestmentPolicyTextBlock>
    <us-gaap-ebp:EmployeeBenefitPlanExpensePolicyTextBlock contextRef="c-2" id="f-69">&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Administrative Expenses&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Plan administrative expenses, including investment fees, transaction fees, and investment management services, are charged to participant accounts as a percentage of assets invested. Plan administration fees, including audit and legal fees, are paid by the Plan Sponsor.&lt;/span&gt;&lt;/div&gt;</us-gaap-ebp:EmployeeBenefitPlanExpensePolicyTextBlock>
    <us-gaap-ebp:EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock contextRef="c-2" id="f-70">&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Benefits Paid to Participants &amp;amp; Contributions&lt;/span&gt;&lt;/div&gt;Benefits paid to participants are recorded by the Plan when paid. Contributions are recorded by the Plan when paid.</us-gaap-ebp:EmployeeBenefitPlanPaymentToParticipantPolicyTextBlock>
    <us-gaap-ebp:EbpRiskAndUncertaintyPolicyTextBlock contextRef="c-2" id="f-71">&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Risks and Uncertainties&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The Plan invests in various investment securities that are exposed to various risks, such as interest rate, market, and credit risks. Due to the level of risk associated with certain investment securities, it is reasonably possible that changes in the values of investment securities will occur in the near term and that such changes could materially affect participants&#x2019; balances and the amounts reported in the Statements of Net Assets Available for Benefits.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Concentration of Market Risk&lt;/span&gt;&lt;/div&gt;At December&#160;31, 2025 and 2024, 4% and 9% of the Plan&#x2019;s net assets, respectively, were invested in the common stock of the Company. The underlying value of the Company&#x2019;s common stock is entirely dependent upon the performance of the Company and the market&#x2019;s evaluation of such performance. It is possible that changes in the fair value of the Company&#x2019;s common stock in the near term could materially affect participants&#x2019; account balances and the amounts reported in the Statements of Net Assets Available for Benefits and the Statement of Changes in Net Assets Available for Benefits.</us-gaap-ebp:EbpRiskAndUncertaintyPolicyTextBlock>
    <us-gaap-ebp:EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage contextRef="c-7" decimals="2" id="f-72" unitRef="number">0.04</us-gaap-ebp:EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage>
    <us-gaap-ebp:EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage contextRef="c-8" decimals="2" id="f-73" unitRef="number">0.09</us-gaap-ebp:EbpRiskAndUncertaintyConcentrationOfInvestmentAtFairValueToNetAssetsPercentage>
    <us-gaap-ebp:EmployeeBenefitPlanUseOfEstimatePolicyTextBlock contextRef="c-2" id="f-74">&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Use of Estimates&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The preparation of financial statements in conformity with GAAP requires Plan management to make estimates and assumptions that affect the reported amounts of assets and liabilities, and changes therein, and disclosure of contingent assets and liabilities. Actual results may differ from those estimates.&lt;/span&gt;&lt;/div&gt;</us-gaap-ebp:EmployeeBenefitPlanUseOfEstimatePolicyTextBlock>
    <us-gaap-ebp:EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock contextRef="c-2" id="f-75">&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Notes Receivable from Participants&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Notes receivable from participants are measured at their unpaid balance plus any accrued but unpaid interest. Delinquent notes are reclassified as distributions in the quarter subsequent to when a participant misses a scheduled repayment. No allowance for credit losses has been recorded as of December&#160;31, 2025 and 2024.&lt;/span&gt;&lt;/div&gt;</us-gaap-ebp:EmployeeBenefitPlanNoteReceivableFromParticipantPolicyTextBlock>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock contextRef="c-2" id="f-76">Fair Value Measurements&lt;div&gt;&lt;span style="color:#1f282c;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:700;line-height:100%"&gt;Fair Value Measurements&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The Plan measures certain financial assets at fair value on a recurring basis based on a fair value hierarchy that requires the Plan to maximize the use of observable inputs and minimize the use of unobservable inputs when measuring fair value. A financial instrument&#x2019;s categorization within the fair value hierarchy is based upon the lowest level of input that is significant to the fair value measurement. The three levels of inputs that may be used to measure fair value are:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:96.5pt;text-indent:-42.5pt"&gt;&lt;span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:100%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;padding-left:37.03pt"&gt;Level 1 &#x2013; quoted prices in active markets for identical assets or liabilities.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:96.5pt;text-indent:-42.5pt"&gt;&lt;span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:100%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;padding-left:37.03pt"&gt;Level 2 &#x2013; observable inputs other than Level 1 prices, such as: (a) quoted prices for similar assets or liabilities, (b) quoted prices in markets with insufficient volume or infrequent transactions (less active markets), or (c) model-derived valuations in which all significant inputs are observable or can be derived principally from or corroborated by observable market data for substantially the full term of the assets or liabilities.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:96.5pt;text-indent:-42.5pt"&gt;&lt;span style="color:#000000;font-family:'Calibri',sans-serif;font-size:11pt;font-weight:400;line-height:100%"&gt;&#x2022;&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%;padding-left:37.03pt"&gt;Level 3 &#x2013; unobservable inputs to the valuation methodology that are significant to the measurement of fair value of assets or liabilities.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Following is a description of the valuation methodologies used for assets measured at fair value. There have been no changes in the methodologies used at December&#160;31, 2025 and 2024.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"&gt;Common Stock:&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt; Valued at quoted market prices, as they are actively traded.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"&gt;Mutual funds&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;: Valued at the daily closing price as reported by the fund. Mutual funds held by the Plan are open-end mutual funds that are registered with the Securities and Exchange Commission. These funds are required to publish their daily net asset value (&#x201c;NAV&#x201d;) and to transact at that price. The mutual funds held by the Plan are deemed to be actively traded.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;padding-left:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%"&gt;Common collective trust funds&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;: Valued at the NAV of shares held by the Plan based on the fair value of its underlying assets reported in the fund&#x2019;s audited financial statements. The NAV is used as a practical expedient to estimate fair value. This practical expedient would not be used if it was determined to be probable that the funds will sell the underlying investments for an amount different from the reported NAV. Participant transactions (purchases and sales) may occur daily. If the Plan initiates a full redemption of the collective trust, the issuer reserves the right to require 12 months&#x2019; notification in order to ensure that securities liquidations will be carried out in an orderly business manner.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The preceding methods described above may produce a fair value calculation that may not be indicative of net realizable value or reflective of future fair values. Furthermore, while the Plan believes its valuation methods are appropriate and consistent with other market participants, the use of different methodologies or assumptions to determine the fair value of certain financial instruments could result in a different fair value measurement at the reporting date.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The following table sets forth by level, within the fair value hierarchy, the Plan&#x2019;s investments at fair value:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:0.15pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.863%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:41.953%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.037%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.967%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.900%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.967%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.900%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.967%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.900%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.109%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%"&gt;December 31, 2025&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%"&gt;Level 1&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%"&gt;Level 2&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%"&gt;Level 3&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Common stock&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;10,714,050&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;10,714,050&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Mutual funds&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;74,651,689&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;74,651,689&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Total assets in the fair value hierarchy&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;85,365,739&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;85,365,739&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Common collective trust funds, measured at NAV&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;170,546,549&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 14.7pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Investments at fair value&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;255,912,288&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%"&gt;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Common stock&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;19,378,857&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;19,378,857&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Mutual funds&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;62,109,137&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;62,109,137&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Total assets in the fair value hierarchy&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;81,487,994&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;81,487,994&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Common collective trust funds, measured at NAV&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;129,601,053&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 14.7pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Investments at fair value&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;211,089,047&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap-ebp:EmployeeBenefitPlanInvestmentFairValueAndNavTextBlock>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock contextRef="c-2" id="f-77">&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The following table sets forth by level, within the fair value hierarchy, the Plan&#x2019;s investments at fair value:&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:0.15pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.863%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:41.953%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.037%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.967%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.900%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.967%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.900%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.967%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.900%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:12.109%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%"&gt;December 31, 2025&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%"&gt;Level 1&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%"&gt;Level 2&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%"&gt;Level 3&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%"&gt;Total&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Common stock&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;10,714,050&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;10,714,050&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Mutual funds&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;74,651,689&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;74,651,689&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Total assets in the fair value hierarchy&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;85,365,739&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;85,365,739&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Common collective trust funds, measured at NAV&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;170,546,549&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 14.7pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Investments at fair value&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;255,912,288&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="21" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%"&gt;December 31, 2024&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%"&gt;Level 1&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%"&gt;Level 2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%"&gt;Level 3&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:0.25pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:120%"&gt;Total&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Common stock&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;19,378,857&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;19,378,857&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:0.25pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Mutual funds&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;62,109,137&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;62,109,137&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 7.85pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Total assets in the fair value hierarchy&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;81,487,994&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#x2014;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;81,487,994&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Common collective trust funds, measured at NAV&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;129,601,053&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:2px 1pt 2px 14.7pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Investments at fair value&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-2.63pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cff0fc;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;211,089,047&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cff0fc;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap-ebp:EmployeeBenefitPlanInvestmentFairValueAndNavTableTextBlock>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-18" decimals="0" id="f-78" unitRef="usd">10714050</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-19" decimals="0" id="f-79" unitRef="usd">0</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-20" decimals="0" id="f-80" unitRef="usd">0</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-21" decimals="0" id="f-81" unitRef="usd">10714050</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-22" decimals="0" id="f-82" unitRef="usd">74651689</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-23" decimals="0" id="f-83" unitRef="usd">0</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-24" decimals="0" id="f-84" unitRef="usd">0</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-25" decimals="0" id="f-85" unitRef="usd">74651689</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-26" decimals="0" id="f-86" unitRef="usd">85365739</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-27" decimals="0" id="f-87" unitRef="usd">0</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-28" decimals="0" id="f-88" unitRef="usd">0</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-29" decimals="0" id="f-89" unitRef="usd">85365739</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-30" decimals="0" id="f-90" unitRef="usd">170546549</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-3" decimals="0" id="f-91" unitRef="usd">255912288</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-31" decimals="0" id="f-92" unitRef="usd">19378857</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-32" decimals="0" id="f-93" unitRef="usd">0</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-33" decimals="0" id="f-94" unitRef="usd">0</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-34" decimals="0" id="f-95" unitRef="usd">19378857</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-35" decimals="0" id="f-96" unitRef="usd">62109137</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-36" decimals="0" id="f-97" unitRef="usd">0</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-37" decimals="0" id="f-98" unitRef="usd">0</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-38" decimals="0" id="f-99" unitRef="usd">62109137</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-39" decimals="0" id="f-100" unitRef="usd">81487994</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-40" decimals="0" id="f-101" unitRef="usd">0</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-41" decimals="0" id="f-102" unitRef="usd">0</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-42" decimals="0" id="f-103" unitRef="usd">81487994</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-43" decimals="0" id="f-104" unitRef="usd">129601053</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-4" decimals="0" id="f-105" unitRef="usd">211089047</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanTaxStatusTextBlock contextRef="c-2" id="f-106">Income Tax Status&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The Plan uses a volume submitter plan document created by Fidelity Management &amp;amp; Research Co. (&#x201c;FMR&#x201d;), an affiliate of the Plan&#x2019;s recordkeeper, Fidelity. The Internal Revenue Service (&#x201c;IRS&#x201d;) has determined and informed FMR by a letter dated June 30, 2020, that the volume submitter plan is designed in accordance with applicable sections of the Internal Revenue Code (&#x201c;IRC&#x201d;). Although the Plan has been restated since receiving the FMR opinion letter, the Plan&#x2019;s management believes that the Plan is designed and is currently being operated in compliance with the applicable requirements of the IRC.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;GAAP requires plan management to evaluate tax positions taken by the Plan and recognize a tax liability (or asset) if the organization has taken an uncertain position that more likely than not would not be sustained upon examination by the IRS. The Plan Administrator has analyzed the tax positions taken by the Plan, and has concluded that as of December&#160;31, 2025 and 2024, there are no uncertain positions taken or expected to be taken that would require recognition of a liability (or asset) or disclosure in the financial statements. The Plan is subject to routine audits by taxing jurisdictions; however, there are currently no audits for any tax periods in progress.&lt;/span&gt;&lt;/div&gt;</us-gaap-ebp:EmployeeBenefitPlanTaxStatusTextBlock>
    <us-gaap-ebp:EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock contextRef="c-2" id="f-107">Party-in-Interest Transactions&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;The Plan held 120,207 shares and 105,326 shares of common stock of the Company, the sponsoring employer, valued at $10.7 million and $19.4 million at December&#160;31, 2025 and 2024, respectively. The investment and transactions in this investment qualify as party-in-interest transactions which are exempt from the prohibited transaction rules of ERISA.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Plan investments include shares of mutual funds managed by Fidelity, the custodian as defined by the Plan; therefore, transactions in these investments qualify as exempt party-in-interest transactions.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Certain employees of the Plan Sponsor provide administrative services to the Plan. These services are provided at no cost to the Plan.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt;text-indent:36pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Party-in-interest transactions also include loans made to participants.&lt;/span&gt;&lt;/div&gt;</us-gaap-ebp:EmployeeBenefitPlanRelatedPartyAndPartyInInterestTransactionsTextBlock>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentNumberOfShares contextRef="c-7" decimals="0" id="f-108" unitRef="shares">120207</us-gaap-ebp:EmployeeBenefitPlanInvestmentNumberOfShares>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentNumberOfShares contextRef="c-8" decimals="0" id="f-109" unitRef="shares">105326</us-gaap-ebp:EmployeeBenefitPlanInvestmentNumberOfShares>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-7" decimals="-5" id="f-110" unitRef="usd">10700000</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue contextRef="c-8" decimals="-5" id="f-111" unitRef="usd">19400000</us-gaap-ebp:EmployeeBenefitPlanInvestmentExcludingPlanInterestInMasterTrustFairValue>
    <us-gaap-ebp:EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock contextRef="c-2" id="f-112">&lt;div style="text-align:center"&gt;&lt;span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%"&gt;SPS COMMERCE, INC.&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#00aae5;font-family:'Times New Roman',serif;font-size:10pt;font-weight:700;line-height:100%"&gt;401(K) RETIREMENT SAVINGS PLAN&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;EIN: 41-2015217, Plan: 001&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Form 5500, Schedule H, Part IV, Line 4(i)&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Schedule of Assets (Held at End of Year) &lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;As of December&#160;31, 2025&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:0.12pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.951%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:3.389%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:2.521%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:23.661%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.296%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:39.716%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.296%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:9.648%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:0.888%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;td style="width:1.0%"&gt;&lt;/td&gt;&lt;td style="width:11.285%"&gt;&lt;/td&gt;&lt;td style="width:0.1%"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%"&gt;Identity of issuer, borrower, lessor, or similar party&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%"&gt;Description of investment including maturity date, rate of interest, collateral, par, or maturity value&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%"&gt;Cost&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:8pt;font-weight:700;line-height:133%"&gt;Current value&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%;text-decoration:underline"&gt;Collective trust funds&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Vanguard &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Target Retirement 2055 Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;37,114,282&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Vanguard &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Target Retirement 2050 Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;33,428,634&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Vanguard &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Target Retirement 2045 Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;30,463,895&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Vanguard &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Target Retirement 2060 Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;18,064,883&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Vanguard &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Target Retirement 2040 Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;13,314,586&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Vanguard &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Target Retirement 2035 Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;12,269,543&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Vanguard&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Target Retirement 2030 Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;10,395,498&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Vanguard &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Target Retirement 2065 Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;6,469,746&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Vanguard &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Target Retirement 2025 Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;2,953,520&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Prudential&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Total Return Bond Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;2,059,033&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Union Bank and Trust Company&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Morley Stable Value Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;1,978,692&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Vanguard&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Target Retirement Income Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;1,275,476&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Vanguard&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Target Retirement 2020 Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;568,917&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Vanguard&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Target Retirement 2070 Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;189,844&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;170,546,549&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%;text-decoration:underline"&gt;Mutual funds&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;*&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Fidelity&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Institutional 500 Index Fund &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;31,661,967&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;J.P. Morgan&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Large Cap Growth Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;12,657,101&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;*&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Fidelity&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Mid-Cap Index Fund &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;7,262,551&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;*&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Fidelity &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;MFS Research International Fund &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;6,054,830&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;*&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Fidelity &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;MFS Value Fund &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;4,633,621&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;*&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Fidelity&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Small Cap Growth Index Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;3,534,899&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;*&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Fidelity&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Small Cap Value Index Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;3,140,478&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;*&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Fidelity&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;US Bond Index Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;2,444,609&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;*&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Fidelity&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Total International Index Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;2,289,161&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;*&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Fidelity&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Small Cap Index Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;405,166&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;PIMCO&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Income Institutional Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:9pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;359,156&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Principal&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Mid-Cap Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;154,919&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;John Hancock&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;Disciplined Value Mid-Cap Fund&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;53,231&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;74,651,689&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%;text-decoration:underline"&gt;SPS Commerce Stock&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;span style="background-color:#cceeff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;*&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;SPS Commerce, Inc.&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Common Stock&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;**&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;10,714,050&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%;text-decoration:underline"&gt;Participant loans&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;*&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Participant loans&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;&#160;Interest from 4.25% to 9.50% maturing through 2031&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$0&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;1,611,115&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;div style="margin-bottom:0.1pt;padding-right:-1.31pt;text-align:center"&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;$&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:133%"&gt;257,523,403&#160;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;div style="margin-bottom:0.1pt;text-align:right"&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="padding-left:18pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;*&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;Represents a party-in-interest&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;**&#160;&#160;&#160;&#160;Historical cost information not required for participant-directed investments&lt;/span&gt;&lt;/div&gt;</us-gaap-ebp:EmployeeBenefitPlanScheduleOfAssetHeldForInvestmentTableTextBlock>
    <dei:EntityTaxIdentificationNumber contextRef="c-2" id="f-113">41-2015217</dei:EntityTaxIdentificationNumber>
    <us-gaap-ebp:EmployeeBenefitPlanPlanNumber contextRef="c-2" id="f-114">001</us-gaap-ebp:EmployeeBenefitPlanPlanNumber>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-44" decimals="0" id="f-115" unitRef="usd">37114282</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-45" decimals="0" id="f-116" unitRef="usd">33428634</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-46" decimals="0" id="f-117" unitRef="usd">30463895</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-47" decimals="0" id="f-118" unitRef="usd">18064883</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-48" decimals="0" id="f-119" unitRef="usd">13314586</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-49" decimals="0" id="f-120" unitRef="usd">12269543</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-50" decimals="0" id="f-121" unitRef="usd">10395498</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-51" decimals="0" id="f-122" unitRef="usd">6469746</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-52" decimals="0" id="f-123" unitRef="usd">2953520</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-53" decimals="0" id="f-124" unitRef="usd">2059033</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-54" decimals="0" id="f-125" unitRef="usd">1978692</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-55" decimals="0" id="f-126" unitRef="usd">1275476</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-56" decimals="0" id="f-127" unitRef="usd">568917</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-57" decimals="0" id="f-128" unitRef="usd">189844</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-9" decimals="0" id="f-129" unitRef="usd">170546549</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-58" decimals="0" id="f-130" unitRef="usd">31661967</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-59" decimals="0" id="f-131" unitRef="usd">12657101</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-60" decimals="0" id="f-132" unitRef="usd">7262551</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-61" decimals="0" id="f-133" unitRef="usd">6054830</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-62" decimals="0" id="f-134" unitRef="usd">4633621</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-63" decimals="0" id="f-135" unitRef="usd">3534899</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-64" decimals="0" id="f-136" unitRef="usd">3140478</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-65" decimals="0" id="f-137" unitRef="usd">2444609</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-66" decimals="0" id="f-138" unitRef="usd">2289161</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-67" decimals="0" id="f-139" unitRef="usd">405166</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-68" decimals="0" id="f-140" unitRef="usd">359156</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-69" decimals="0" id="f-141" unitRef="usd">154919</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-70" decimals="0" id="f-142" unitRef="usd">53231</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-5" decimals="0" id="f-143" unitRef="usd">74651689</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue contextRef="c-71" decimals="0" id="f-144" unitRef="usd">10714050</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentInvestmentExcludingPlanInterestInMasterTrustCurrentValue>
    <us-gaap-ebp:EmployeeBenefitPlanParticipantLoanInterestRate contextRef="c-11" decimals="4" id="f-145" unitRef="number">0.0425</us-gaap-ebp:EmployeeBenefitPlanParticipantLoanInterestRate>
    <us-gaap-ebp:EmployeeBenefitPlanParticipantLoanInterestRate contextRef="c-17" decimals="4" id="f-146" unitRef="number">0.0950</us-gaap-ebp:EmployeeBenefitPlanParticipantLoanInterestRate>
    <spsc:EBPAssetHeldForInvestmentParticipantLoanCost contextRef="c-3" decimals="0" id="f-147" unitRef="usd">0</spsc:EBPAssetHeldForInvestmentParticipantLoanCost>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution contextRef="c-3" decimals="0" id="f-148" unitRef="usd">1611115</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestmentParticipantLoanAfterDeemedDistribution>
    <us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestment contextRef="c-3" decimals="0" id="f-149" unitRef="usd">257523403</us-gaap-ebp:EmployeeBenefitPlanAssetHeldForInvestment>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
</SEC-DOCUMENT>
