XML 83 R60.htm IDEA: XBRL DOCUMENT
v3.24.0.1

Product Warranty Provisions (Tables) | 12 Months Ended
--- | ---
Dec. 31, 2023
Product Warranty Provisions [Abstract] |
Schedule of Accrued Warranty Activity | Warranty expense is recorded as a component of sales and marketing expenses. Accrued warranty activity consisted of the following:
|  | December 31, 2022 |  |  | December 31, 2023 |
Balance at beginning of year |  | $ | 2,028,266 |  |  | $ | 476,828 |
Warranty costs incurred |  |  | (81,954 | ) |  |  | 16,359 |
Provision (reversal) for the year |  |  | (1,344,572 | ) |  |  | 66,182 |
Foreign exchange adjustment |  |  | (124,912 | ) |  |  | (9,925 | )
Balance at end of year |  |  | 476,828 |  |  |  | 549,444 |
Less: Current portion |  |  | (26,215 | ) |  |  | (23,870 | )
Non-current portion |  | $ | 450,613 |  |  | $ | 525,574 |

X
- References No definition available. + Details
Name: | us-gaap_ProductWarrantiesDisclosuresAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 460 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 8 -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org//1943274/2147482425/460-10-50-8 + Details
Name: | us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration