XML 55 R40.htm IDEA: XBRL DOCUMENT
v3.24.2

SUMMARY OF SIGNIFICANT ACCOUNTING POLICIES (Details Narrative) - USD ($) | 12 Months Ended
--- | ---
Dec. 31, 2023 | Dec. 31, 2022
Product Information [Line Items] |  |
Cash in excess of FDIC insured limits | $ 3,332,000 | $ 10,046,000
Allowance for doubtful accounts | $ 97 | $ 788
Building [Member] |  |
Product Information [Line Items] |  |
Estimated useful lives | 25 years |
Machinery and Equipment [Member] | Minimum [Member] |  |
Product Information [Line Items] |  |
Estimated useful lives | 5 years |
Machinery and Equipment [Member] | Maximum [Member] |  |
Product Information [Line Items] |  |
Estimated useful lives | 15 years |
Computer Equipment [Member] | Minimum [Member] |  |
Product Information [Line Items] |  |
Estimated useful lives | 3 years |
Computer Equipment [Member] | Maximum [Member] |  |
Product Information [Line Items] |  |
Estimated useful lives | 5 years |
Furniture and Fixtures [Member] | Minimum [Member] |  |
Product Information [Line Items] |  |
Estimated useful lives | 5 years |
Furniture and Fixtures [Member] | Maximum [Member] |  |
Product Information [Line Items] |  |
Estimated useful lives | 7 years |
Accounts Receivable [Member] | Customer Concentration Risk [Member] | Customer One [Member] |  |
Product Information [Line Items] |  |
Concentration percentage | 23.00% |
Accounts Receivable [Member] | Customer Concentration Risk [Member] | Customert One [Member] |  |
Product Information [Line Items] |  |
Concentration percentage |  | 52.00%
Accounts Receivable [Member] | Customer Concentration Risk [Member] | Customert Two [Member] |  |
Product Information [Line Items] |  |
Concentration percentage |  | 15.00%
Accounts Receivable [Member] | Customer Concentration Risk [Member] | Customer Three [Member] |  |
Product Information [Line Items] |  |
Concentration percentage |  | 12.00%
Revenue Benchmark [Member] | Customer Concentration Risk [Member] | Customer One [Member] |  |
Product Information [Line Items] |  |
Concentration percentage | 42.00% | 43.00%
Revenue Benchmark [Member] | Customer Concentration Risk [Member] | Customer Two [Member] |  |
Product Information [Line Items] |  |
Concentration percentage | 20.00% | 10.00%
Accounts Payable [Member] | Supplier Concentration Risk [Member] | Supplier [Member] |  |
Product Information [Line Items] |  |
Concentration percentage | 18.00% |
Accounts Payable [Member] | Supplier Concentration Risk [Member] | Three Supplier [Member] |  |
Product Information [Line Items] |  |
Concentration percentage |  | 38.00%

X
- Definition Amount of allowance for credit loss on accounts receivable. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 944 -SubTopic 210 -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.7-03(a)(5)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479440/944-210-S99-1 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 210 -SubTopic 10 -Name Accounting Standards Codification -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02(4)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480566/210-10-S99-1 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 326 -SubTopic 20 -Name Accounting Standards Codification -Section 45 -Paragraph 1 -Publisher FASB -URI https://asc.fasb.org//1943274/2147479344/326-20-45-1 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Topic 310 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 4 -Publisher FASB -URI https://asc.fasb.org//1943274/2147481962/310-10-50-4 Reference 5: http://www.xbrl.org/2003/role/disclosureRef -Topic 326 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 13 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479319/326-20-50-13 Reference 6: http://www.xbrl.org/2003/role/disclosureRef -Topic 326 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 13 -Subparagraph (f) -Publisher FASB -URI https://asc.fasb.org//1943274/2147479319/326-20-50-13 + Details
Name: | us-gaap_AllowanceForDoubtfulAccountsReceivable
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition The amount of cash as of the balance sheet date that is not insured by the Federal Deposit Insurance Corporation. + References No definition available. + Details
Name: | us-gaap_CashUninsuredAmount
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 280 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 42 -Publisher FASB -URI https://asc.fasb.org//1943274/2147482810/280-10-50-42 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 825 -SubTopic 10 -Section 50 -Paragraph 21 -Subparagraph (a) -Publisher FASB -URI https://asc.fasb.org//1943274/2147482907/825-10-50-21 Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 825 -SubTopic 10 -Section 50 -Paragraph 20 -Publisher FASB -URI https://asc.fasb.org//1943274/2147482907/825-10-50-20 Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 275 -SubTopic 10 -Section 50 -Paragraph 18 -Publisher FASB -URI https://asc.fasb.org//1943274/2147482861/275-10-50-18 Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 275 -SubTopic 10 -Section 50 -Paragraph 20 -Publisher FASB -URI https://asc.fasb.org//1943274/2147482861/275-10-50-20 + Details
Name: | us-gaap_ConcentrationRiskPercentage1
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:percentItemType
Balance Type: | na
Period Type: | duration

X
- Definition 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. + References No definition available. + Details
Name: | us-gaap_ProductInformationLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment. + References No definition available. + Details
Name: | us-gaap_PropertyPlantAndEquipmentUsefulLife
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | instant

X
- Details
Name: | us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_MachineryAndEquipmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MinimumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MaximumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_ComputerEquipmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_PropertyPlantAndEquipmentByTypeAxis=us-gaap_FurnitureAndFixturesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=PPSI_CustomerOneMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=PPSI_CustomertOneMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=PPSI_CustomertTwoMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=PPSI_CustomerThreeMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=PPSI_CustomerTwoMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsPayableMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ConcentrationRiskByTypeAxis=us-gaap_SupplierConcentrationRiskMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=PPSI_SupplierMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_MajorCustomersAxis=PPSI_ThreeSupplierMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |