XML 59 R50.htm IDEA: XBRL DOCUMENT
v3.23.3

Derivative and Hedging Activities - Additional Information (Details) - Designated as Hedging Instrument [Member] | 3 Months Ended | 6 Months Ended | 9 Months Ended | 12 Months Ended |
--- | --- | --- | --- | --- | ---
Sep. 30, 2023 USD ($) | Dec. 31, 2022 USD ($) Interest | Jun. 30, 2022 USD ($) Interest | Sep. 30, 2023 USD ($) | Dec. 31, 2022 USD ($) Interest | Mar. 31, 2023 USD ($)
Pay Floating Swap Agreement [Member] | Cash Flow Hedging [Member] |  |  |  |  |  |
Derivative [Line Items] |  |  |  |  |  |
Derivative, Number of Instruments Held, Total | Interest |  |  | 2 |  |  |
Derivative, Notional Amount |  |  | $ 200,000,000 |  |  |
Derivative, Fixed Coupon Rate |  |  | 2.41% |  |  |
Derivative instrument cash payment |  |  |  |  |  | $ 4,200,000
Derivative Instruments, Net cash settlements received | $ 959,000 |  |  | $ 2,300,000 |  |
Pay Fixed Swap Agreement [Member] | Cash Flow Hedging [Member] |  |  |  |  |  |
Derivative [Line Items] |  |  |  |  |  |
Derivative, Number of Instruments Held, Total | Interest |  |  | 1 |  |  |
Derivative, Notional Amount |  | $ 49,100,000 | $ 200,000,000 |  | $ 49,100,000 |
Derivative, Fixed Coupon Rate |  |  | 2.75% |  |  |
Derivative, Term of Contract (Year) |  |  | 8 years |  | 9 years |
Pay Fixed Swap Agreement [Member] | Cash Flow Hedging [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] |  |  |  |  |  |
Derivative [Line Items] |  |  |  |  |  |
Derivative, Basis Spread on Variable Rate |  | 3.403% |  |  | 3.403% |
Pay Fixed Swap Agreement [Member] | Fair Value Hedging [Member] |  |  |  |  |  |
Derivative [Line Items] |  |  |  |  |  |
Derivative, Number of Instruments Held, Total | Interest |  | 4 |  |  | 4 |
Derivative, Notional Amount |  | $ 201,000,000 |  |  | $ 201,000,000 |
Derivative, Number of Instruments Sold | Interest |  | 4 |  |  | 4 |
Pay Fixed Swap Agreements Expiring in 2032 [Member] | Fair Value Hedging [Member] |  |  |  |  |  |
Derivative [Line Items] |  |  |  |  |  |
Derivative, Notional Amount |  | $ 101,900,000 |  |  | $ 101,900,000 |
Derivative, Term of Contract (Year) |  | 10 years |  |  |  |
Pay Fixed Swap Agreements Expiring in 2032 [Member] | Fair Value Hedging [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] |  |  |  |  |  |
Derivative [Line Items] |  |  |  |  |  |
Derivative, Basis Spread on Variable Rate |  | 3.39% |  |  | 3.39% |
The 3.4015 Percent Pay Fixed Swap Agreement [Member] | Fair Value Hedging [Member] |  |  |  |  |  |
Derivative [Line Items] |  |  |  |  |  |
Derivative, Notional Amount |  | $ 50,000,000 |  |  | $ 50,000,000 |
Derivative, Term of Contract (Year) |  |  |  |  | 9 years |
The 3.4015 Percent Pay Fixed Swap Agreement [Member] | Fair Value Hedging [Member] | Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] |  |  |  |  |  |
Derivative [Line Items] |  |  |  |  |  |
Derivative, Basis Spread on Variable Rate |  | 3.4015% |  |  | 3.4015% |

X
- Definition Fixed coupon rate related to the derivative. + References No definition available. + Details
Name: | cofs_DerivativeFixedCouponRate
Namespace Prefix: | cofs_
Data Type: | dtr-types:percentItemType
Balance Type: | na
Period Type: | instant

X
- Definition Derivative instrument cash payment. + References No definition available. + Details
Name: | cofs_DerivativeInstrumentCashPayment
Namespace Prefix: | cofs_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Represents net cash settlements received for derivative instruments. + References No definition available. + Details
Name: | cofs_DerivativeInstrumentsNetCashSettlementsReceived
Namespace Prefix: | cofs_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Represents the number of derivative instruments sold. + References No definition available. + Details
Name: | cofs_DerivativeNumberOfInstrumentsSold
Namespace Prefix: | cofs_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Definition The percentage points added to the reference rate to compute the variable rate on the interest rate derivative. + References No definition available. + Details
Name: | us-gaap_DerivativeBasisSpreadOnVariableRate
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:percentItemType
Balance Type: | na
Period Type: | instant

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 Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 815 -SubTopic 40 -Name Accounting Standards Codification -Section 50 -Paragraph 5 -Subparagraph (f) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480237/815-40-50-5 + Details
Name: | us-gaap_DerivativeLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Nominal or face amount used to calculate payment on derivative. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 815 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 1B -Publisher FASB -URI https://asc.fasb.org//1943274/2147480434/815-10-50-1B Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 815 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 1A -Subparagraph (d) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480434/815-10-50-1A + Details
Name: | us-gaap_DerivativeNotionalAmount
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | na
Period Type: | instant

X
- Definition The number of derivative instruments of a particular group held by the entity. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 946 -SubTopic 210 -Name Accounting Standards Codification -Section 50 -Paragraph 6 -Subparagraph (e) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480524/946-210-50-6 Reference 2: http://www.xbrl.org/2003/role/exampleRef -Topic 946 -SubTopic 210 -Name Accounting Standards Codification -Section 55 -Paragraph 1 -Publisher FASB -URI https://asc.fasb.org//1943274/2147480493/946-210-55-1 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Topic 946 -SubTopic 320 -Name Accounting Standards Codification -Section S99 -Paragraph 5 -Subparagraph (SX 210.12-13(Column A)(Footnote 3)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Topic 946 -SubTopic 320 -Name Accounting Standards Codification -Section S99 -Paragraph 5 -Subparagraph (SX 210.12-13(Column C)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5 Reference 5: http://www.xbrl.org/2003/role/disclosureRef -Topic 946 -SubTopic 320 -Name Accounting Standards Codification -Section S99 -Paragraph 5A -Subparagraph (SX 210.12-13A(Column B)) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480032/946-320-S99-5A Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 815 -SubTopic 10 -Section 50 -Paragraph 1B -Publisher FASB -URI https://asc.fasb.org//1943274/2147480434/815-10-50-1B Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef -Name Accounting Standards Codification -Topic 815 -SubTopic 10 -Section 50 -Paragraph 1A -Subparagraph (d) -Publisher FASB -URI https://asc.fasb.org//1943274/2147480434/815-10-50-1A + Details
Name: | us-gaap_DerivativeNumberOfInstrumentsHeld
Namespace Prefix: | us-gaap_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Definition Period the derivative contract is outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. + References No definition available. + Details
Name: | us-gaap_DerivativeTermOfContract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_DerivativeInstrumentRiskAxis=cofs_PayFloatingSwapAgreementMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=us-gaap_CashFlowHedgingMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DerivativeInstrumentRiskAxis=cofs_PayFixedSwapAgreementMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_VariableRateAxis=us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=us-gaap_FairValueHedgingMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DerivativeInstrumentRiskAxis=cofs_PayFixedSwapAgreementsExpiringIn2032Member
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DerivativeInstrumentRiskAxis=cofs_The34015PercentPayFixedSwapAgreementMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |