XML 108 R63.htm IDEA: XBRL DOCUMENT
v2.4.1.9

Loans and Allowance for Loan Losses (Details 5) (USD $) In Thousands, unless otherwise specified | 12 Months Ended
--- | ---
Dec. 31, 2014 | Dec. 31, 2013
Impaired and Restructured Loans with or with no related allowance recorded |  |
Recorded Investment With no related allowance recorded | $ 961 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment | $ 2,356 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
Unpaid Principal Balance With no related allowance recorded | 972 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance | 2,729 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance
Average Recorded Investment With no related allowance recorded | 1,018 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceAverageRecordedInvestment | 1,441 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceAverageRecordedInvestment
Interest Income Recognized With no related allowance recorded | 15 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceInterestIncomeAccrualMethod | 39 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceInterestIncomeAccrualMethod
Recorded Investment With an allowance recorded | 5,924 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment | 5,931 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
Unpaid Principal Balance With an allowance recorded | 7,000 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance | 6,522 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance
Related Allowance | 1,114 us-gaap_ImpairedFinancingReceivableRelatedAllowance | 1,063 us-gaap_ImpairedFinancingReceivableRelatedAllowance
Average Recorded Investment With an allowance recorded | 6,708 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceAverageRecordedInvestment | 6,865 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceAverageRecordedInvestment
Interest Income Recognized With an allowance recorded | 179 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceInterestIncomeAccrualMethod | 313 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceInterestIncomeAccrualMethod
Recorded Investment | 6,885 us-gaap_ImpairedFinancingReceivableRecordedInvestment | 8,287 us-gaap_ImpairedFinancingReceivableRecordedInvestment
Unpaid Principal Balance | 7,972 us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance | 9,251 us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
Average Recorded Investment | 7,726 us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment | 8,306 us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
Interest Income Recognized | 194 us-gaap_ImpairedFinancingReceivableInterestIncomeAccrualMethod | 352 us-gaap_ImpairedFinancingReceivableInterestIncomeAccrualMethod
Agricultural [Member] |  |
Impaired and Restructured Loans with or with no related allowance recorded |  |
Recorded Investment With no related allowance recorded |  | 452 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_AgriculturalMember
Unpaid Principal Balance With no related allowance recorded |  | 455 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_AgriculturalMember
Average Recorded Investment With no related allowance recorded | 90 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_AgriculturalMember | 204 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_AgriculturalMember
Interest Income Recognized With no related allowance recorded |  | 7 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_AgriculturalMember
Average Recorded Investment With an allowance recorded | 130 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_AgriculturalMember | 112 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_AgriculturalMember
Interest Income Recognized With an allowance recorded |  | 1 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_AgriculturalMember
Recorded Investment |  | 452 us-gaap_ImpairedFinancingReceivableRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_AgriculturalMember
Unpaid Principal Balance |  | 455 us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_AgriculturalMember
Average Recorded Investment | 220 us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_AgriculturalMember | 316 us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_AgriculturalMember
Interest Income Recognized |  | 8 us-gaap_ImpairedFinancingReceivableInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_AgriculturalMember
Commercial and Industrial [Member] |  |
Impaired and Restructured Loans with or with no related allowance recorded |  |
Recorded Investment With no related allowance recorded | 38 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember | 229 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember
Unpaid Principal Balance With no related allowance recorded | 43 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember | 300 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember
Average Recorded Investment With no related allowance recorded | 81 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember | 85 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember
Recorded Investment With an allowance recorded |  | 547 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember
Unpaid Principal Balance With an allowance recorded |  | 554 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember
Related Allowance |  | 53 us-gaap_ImpairedFinancingReceivableRelatedAllowance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember
Average Recorded Investment With an allowance recorded | 292 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember | 377 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember
Interest Income Recognized With an allowance recorded | 4 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember | 11 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember
Recorded Investment | 38 us-gaap_ImpairedFinancingReceivableRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember | 776 us-gaap_ImpairedFinancingReceivableRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember
Unpaid Principal Balance | 43 us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember | 854 us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember
Average Recorded Investment | 373 us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember | 462 us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember
Interest Income Recognized | 4 us-gaap_ImpairedFinancingReceivableInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember | 11 us-gaap_ImpairedFinancingReceivableInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = cofs_FinancingReceivableCommercialAndIndustrialMember
Consumer [Member] |  |
Impaired and Restructured Loans with or with no related allowance recorded |  |
Recorded Investment With no related allowance recorded | 8 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 2 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Unpaid Principal Balance With no related allowance recorded | 8 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 3 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Average Recorded Investment With no related allowance recorded | 3 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 3 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Recorded Investment With an allowance recorded | 28 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 35 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Unpaid Principal Balance With an allowance recorded | 28 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 35 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Related Allowance | 4 us-gaap_ImpairedFinancingReceivableRelatedAllowance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 3 us-gaap_ImpairedFinancingReceivableRelatedAllowance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Average Recorded Investment With an allowance recorded | 31 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 43 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Interest Income Recognized With an allowance recorded | 3 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 3 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Recorded Investment | 36 us-gaap_ImpairedFinancingReceivableRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 37 us-gaap_ImpairedFinancingReceivableRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Unpaid Principal Balance | 36 us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 38 us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Average Recorded Investment | 34 us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 46 us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Interest Income Recognized | 3 us-gaap_ImpairedFinancingReceivableInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 3 us-gaap_ImpairedFinancingReceivableInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Commercial Real Estate [Member] |  |
Impaired and Restructured Loans with or with no related allowance recorded |  |
Recorded Investment With no related allowance recorded | 413 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 782 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Unpaid Principal Balance With no related allowance recorded | 419 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 843 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Average Recorded Investment With no related allowance recorded | 352 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 693 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Interest Income Recognized With no related allowance recorded | 6 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 25 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Recorded Investment With an allowance recorded | 3,440 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 3,413 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Unpaid Principal Balance With an allowance recorded | 4,498 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 3,997 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Related Allowance | 745 us-gaap_ImpairedFinancingReceivableRelatedAllowance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 699 us-gaap_ImpairedFinancingReceivableRelatedAllowance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Average Recorded Investment With an allowance recorded | 3,932 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 4,126 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Interest Income Recognized With an allowance recorded | 81 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 217 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Recorded Investment | 3,853 us-gaap_ImpairedFinancingReceivableRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 4,195 us-gaap_ImpairedFinancingReceivableRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Unpaid Principal Balance | 4,917 us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 4,840 us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Average Recorded Investment | 4,284 us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 4,819 us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Interest Income Recognized | 87 us-gaap_ImpairedFinancingReceivableInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 242 us-gaap_ImpairedFinancingReceivableInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Residential Real Estate [Member] |  |
Impaired and Restructured Loans with or with no related allowance recorded |  |
Recorded Investment With no related allowance recorded | 502 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 891 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Unpaid Principal Balance With no related allowance recorded | 502 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 1,128 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Average Recorded Investment With no related allowance recorded | 492 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 456 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Interest Income Recognized With no related allowance recorded | 9 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 7 us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Recorded Investment With an allowance recorded | 2,456 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 1,936 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Unpaid Principal Balance With an allowance recorded | 2,474 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 1,936 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Related Allowance | 365 us-gaap_ImpairedFinancingReceivableRelatedAllowance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 308 us-gaap_ImpairedFinancingReceivableRelatedAllowance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Average Recorded Investment With an allowance recorded | 2,323 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 2,207 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Interest Income Recognized With an allowance recorded | 91 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 81 us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Recorded Investment | 2,958 us-gaap_ImpairedFinancingReceivableRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 2,827 us-gaap_ImpairedFinancingReceivableRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Unpaid Principal Balance | 2,976 us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 3,064 us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Average Recorded Investment | 2,815 us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 2,663 us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Interest Income Recognized | $ 100 us-gaap_ImpairedFinancingReceivableInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | $ 88 us-gaap_ImpairedFinancingReceivableInterestIncomeAccrualMethod / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember

X
- Details
Name: | cofs_ImpairedFinancingReceivableithWithOrWithNoRelatedAllowanceRecordedAbstract
Namespace Prefix: | cofs_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Average amount of investment of impaired financing receivables with related allowance for credit losses and without a related allowance for credit losses. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section 50 -Paragraph 15 -Subparagraph (c)(1) -URI http://asc.fasb.org/extlink&oid=35738203&loc=d3e5212-111524 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section 50 -Paragraph 17 -URI http://asc.fasb.org/extlink&oid=35738203&loc=d3e5258-111524 + Details
Name: | us-gaap_ImpairedFinancingReceivableAverageRecordedInvestment
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Amount of interest income recognized that the financing receivables (with related allowance for credit losses and without a related allowance for credit losses) were impaired. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section 50 -Paragraph 15 -Subparagraph (c)(2) -URI http://asc.fasb.org/extlink&oid=35738203&loc=d3e5212-111524 + Details
Name: | us-gaap_ImpairedFinancingReceivableInterestIncomeAccrualMethod
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of investment of impaired financing receivables with related allowance for credit losses and without a related allowance for credit losses. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section 50 -Paragraph 14A -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=35738203&loc=SL6953550-111524 + Details
Name: | us-gaap_ImpairedFinancingReceivableRecordedInvestment
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount of allowance for credit losses related to recorded investment. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section 50 -Paragraph 15 -Subparagraph (a)(3) -URI http://asc.fasb.org/extlink&oid=35738203&loc=d3e5212-111524 + Details
Name: | us-gaap_ImpairedFinancingReceivableRelatedAllowance
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of unpaid principal balance of impaired financing receivables with related allowance for credit losses and without related allowance for credit losses. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section 50 -Paragraph 15 -Subparagraph (a)(4) -URI http://asc.fasb.org/extlink&oid=35738203&loc=d3e5212-111524 + Details
Name: | us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount of average investment of impaired financing receivables for which there is no related allowance for credit losses. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section 50 -Paragraph 15 -Subparagraph (c)(1) -URI http://asc.fasb.org/extlink&oid=35738203&loc=d3e5212-111524 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section 50 -Paragraph 17 -URI http://asc.fasb.org/extlink&oid=35738203&loc=d3e5258-111524 + Details
Name: | us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceAverageRecordedInvestment
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Amount of interest income, recognized on accrual basis, on financing receivables that are recognized as impaired, for which there is no related allowance for credit losses. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section 50 -Paragraph 15 -Subparagraph (c)(2) -URI http://asc.fasb.org/extlink&oid=35738203&loc=d3e5212-111524 + Details
Name: | us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceInterestIncomeAccrualMethod
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of investment in impaired financing receivables for which there is no related allowance for credit losses. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section 50 -Paragraph 14A -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=35738203&loc=SL6953550-111524 + Details
Name: | us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount of unpaid principal balance of impaired financing receivables for which there is no related allowance for credit losses. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section 50 -Paragraph 15 -Subparagraph (a)(4) -URI http://asc.fasb.org/extlink&oid=35738203&loc=d3e5212-111524 + Details
Name: | us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceUnpaidPrincipalBalance
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Amount of average investment of impaired financing receivables for which there is a related allowance for credit losses. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section 50 -Paragraph 15 -Subparagraph (c)(1) -URI http://asc.fasb.org/extlink&oid=35738203&loc=d3e5212-111524 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section 50 -Paragraph 17 -URI http://asc.fasb.org/extlink&oid=35738203&loc=d3e5258-111524 + Details
Name: | us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceAverageRecordedInvestment
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Amount of interest income, recognized on accrual basis, on financing receivables, for which there is a related allowance for credit losses and are recognized as impaired. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section 50 -Paragraph 15 -Subparagraph (c)(2) -URI http://asc.fasb.org/extlink&oid=35738203&loc=d3e5212-111524 + Details
Name: | us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceInterestIncomeAccrualMethod
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of investment in impaired financing receivables for which there is a related allowance for credit losses. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section 50 -Paragraph 14A -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=35738203&loc=SL6953550-111524 + Details
Name: | us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Unpaid principal balance of impaired financing receivables for which there is a related allowance for credit losses. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 310 -SubTopic 10 -Section 50 -Paragraph 15 -Subparagraph (a)(4) -URI http://asc.fasb.org/extlink&oid=35738203&loc=d3e5212-111524 + Details
Name: | us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceUnpaidPrincipalBalance
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Details
Name: | us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis=cofs_AgriculturalMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis=cofs_FinancingReceivableCommercialAndIndustrialMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis=us-gaap_CommercialRealEstatePortfolioSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis=us-gaap_ConsumerPortfolioSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis=us-gaap_ResidentialPortfolioSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |