XML 54 R40.htm IDEA: XBRL DOCUMENT
v3.24.1.u1

ALLOWANCE FOR CREDIT LOSSES (Tables) | 12 Months Ended
--- | ---
Dec. 31, 2023
Accounts, Notes, Loans and Financing Receivable [Line Items] |
Schedule of allowances for credit losses | ​
​ | ​ | ​ | ​ | ​
​ | ​ | ​ | ​ | Advances to
​ | ​ | ​ | ​ | Suppliers, Warranty
​ | ​ | Accounts Receivable | ​ | Insurance Receivable and
​ |  | Trade |  | Other Receivable
​ |  | $ |  | $
Balance as of December 31, 2020 | ​ | 40,293 | ​ | 28,502
Provision for credit losses, net | ​ | 7,171 | ​ | 444
Write-offs | ​ | (197) | ​ | (53)
Foreign exchange effect | ​ | (141) | ​ | 186
Balance as of December 31, 2021 | ​ | 47,126 | ​ | 29,079
Provision for credit losses, net | ​ | 4,349 | ​ | 1,424
Write-offs | ​ | (109) | ​ | (18,295)
Foreign exchange effect | ​ | (1,436) | ​ | (834)
Balance as of December 31, 2022 | ​ | 49,930 | ​ | 11,374
Provision for credit losses, net | ​ | 7,381 | ​ | 4,633
Write-offs | ​ | (2,073) | ​ | (242)
Foreign exchange effect | ​ | 1,564 | ​ | (163)
Balance as of December 31, 2023 | ​ | 56,802 | ​ | 15,602
​
Allowances for accounts receivable |
Accounts, Notes, Loans and Financing Receivable [Line Items] |
Schedule of allowances | ​
​ | ​ | ​ | ​ | ​
​ | ​ | At December 31, | ​ | At December 31,
​ |  | 2022 |  | 2023
​ | ​ | $ | ​ | $
Accounts receivable trade, gross |  | 1,020,880 | ​ | 961,745
Allowance for credit losses |  | (49,930) | ​ | (56,802)
Accounts receivable trade, net |  | 970,950 | ​ | 904,943
Allowances for advances to suppliers |
Accounts, Notes, Loans and Financing Receivable [Line Items] |
Schedule of allowances | ​
​ | ​ | ​ | ​ | ​
​ | ​ | At December 31, | ​ | At December 31,
​ |  | 2022 |  | 2023
​ | ​ | $ | ​ | $
Advances to suppliers, gross |  | 320,211 | ​ | 328,460
Allowance for credit losses |  | (1,375) | ​ | (2,424)
Advances to suppliers, net |  | 318,836 | ​ | 326,036
Warranty insurance receivable net |
Accounts, Notes, Loans and Financing Receivable [Line Items] |
Schedule of allowances | ​
​ | ​ | ​ | ​ | ​
​ | ​ | At December 31, | ​ | At December 31,
​ |  | 2022 |  | 2023
​ | ​ | $ | ​ | $
Warranty insurance receivable, gross |  | 84,474 |  | 84,035
Allowance for credit losses |  | — | ​ | (1,300)
Warranty insurance receivable, net |  | 84,474 | ​ | 82,735
Allowances for other receivables |
Accounts, Notes, Loans and Financing Receivable [Line Items] |
Schedule of allowances | ​
​ | ​ | ​ | ​ | ​
​ | ​ | At December 31, | ​ | At December 31,
​ |  | 2022 |  | 2023
​ | ​ | $ | ​ | $
Other receivable, gross |  | 129,195 | ​ | 145,376
Allowance for credit losses |  | (9,999) | ​ | (11,878)
Other receivable, net |  | 119,196 | ​ | 133,498

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_AccountsNotesAndLoansReceivableLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of allowance for credit loss on accounts receivable. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 326 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 13 -Publisher FASB -URI https://asc.fasb.org//1943274/2147479319/326-20-50-13 + Details
Name: | us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition Tabular disclosure of allowance for credit loss on financing receivable. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 326 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 13 -Publisher FASB -URI https://asc.fasb.org//1943274/2147479319/326-20-50-13 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section 50 -Paragraph 11B -Publisher FASB -URI https://asc.fasb.org//1943274/2147481962/310-10-50-11B + Details
Name: | us-gaap_AllowanceForCreditLossesOnFinancingReceivablesTableTextBlock
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_ValuationAllowancesAndReservesTypeAxis=us-gaap_AllowanceForCreditLossMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ValuationAllowancesAndReservesTypeAxis=csiq_AllowanceForAdvancesToSuppliersMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ValuationAllowancesAndReservesTypeAxis=csiq_AllowanceForWarrantyInsuranceReceivableMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ValuationAllowancesAndReservesTypeAxis=csiq_AllowanceForOtherReceivablesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |