XML 80 R20.htm IDEA: XBRL DOCUMENT v3.26.1
Accounting policies (Tables)
6 Months Ended
Jun. 30, 2026
Accounting policies  
Schedule of Disaggregation of revenue

The following table presents the Company’s revenue disaggregated by revenue source.

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

Three Months Ended June 30, 

 

Six Months Ended June 30, 

​

  ​ ​ ​

2026

  ​ ​ ​

2025

  ​ ​ ​

2026

  ​ ​ ​

2025

Retail revenue

​

$

8,660,947

​

$

8,638,026

​

$

17,238,005

​

$

18,049,368

Bulk revenue

​

 

9,934,060

​

 

8,274,816

​

 

18,678,829

​

 

16,686,532

Services revenue

​

 

11,585,573

​

 

11,448,202

​

 

22,836,917

​

 

21,526,470

Manufacturing revenue

​

 

2,689,782

​

 

5,230,035

​

 

4,090,311

​

 

11,044,094

Total revenue

​

$

32,870,362

​

$

33,591,079

​

$

62,844,062

​

$

67,306,464

​

Services revenue consists of the following:

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

Three Months Ended June 30, 

 

Six Months Ended June 30, 

​

  ​ ​ ​

2026

  ​ ​ ​

2025

  ​ ​ ​

2026

  ​ ​ ​

2025

Construction revenue

​

$

5,338,043

​

$

2,825,935

​

$

7,439,180

​

$

5,044,167

Operations and maintenance revenue

​

 

6,044,002

​

 

8,255,408

​

 

14,932,460

​

 

15,980,704

Design and consulting revenue

​

 

203,528

​

 

366,859

​

 

465,277

​

 

501,599

Total services revenue

​

$

11,585,573

​

$

11,448,202

​

$

22,836,917

​

$

21,526,470

​

Schedule of services revenue recognized from the transfer of goods or services to customers over time and when invoiced

​

​

​

​

​

​

​

​

​

​

​

​

​

​

​

Three Months Ended June 30, 

 

Six Months Ended June 30, 

​

  ​ ​ ​

2026

  ​ ​ ​

2025

  ​ ​ ​

2026

  ​ ​ ​

2025

Revenue recognized over time

​

$

5,373,750

​

$

3,104,731

​

$

7,583,913

​

$

5,284,992

Revenue recognized when invoiced

​

 

6,211,823

​

 

8,343,471

​

 

15,253,004

​

 

16,241,478

Total services revenue

​

$

11,585,573

​

$

11,448,202

​

$

22,836,917

​

$

21,526,470

Summary of revenue recognized and amounts billed on contracts in progress

Revenue recognized and amounts billed on contracts in progress are summarized as follows:

​

​

​

​

​

​

​

​

​

June 30, 

​

December 31, 

​

​

2026

​

2025

Revenue recognized to date on contracts in progress

  ​ ​ ​

$

117,595,070

​

$

127,237,229

Amounts billed to date on contracts in progress

​

 

(128,609,583)

​

 

(138,121,977)

Retainage

​

​

1,818,170

​

​

2,646,929

Net contract liability

​

$

(9,196,343)

​

$

(8,237,819)

Summary of net balances of billings reflected in the accompanying consolidated balance sheet

The above net balances are reflected in the accompanying condensed consolidated balance sheets as follows:

​

​

​

​

​

​

​

​

​

June 30, 

​

December 31, 

​

​

2026

​

2025

Contract assets

  ​ ​ ​

$

3,210,683

  ​ ​ ​

$

3,290,815

Contract liabilities

​

 

(12,407,026)

​

 

(11,528,634)

Net contract liability

​

$

(9,196,343)

​

$

(8,237,819)