Annual report pursuant to Section 13 and 15(d)

Loans - Information on Impaired Loans, Disaggregated by Loan Class (Detail)

v2.4.1.9
Loans - Information on Impaired Loans, Disaggregated by Loan Class (Detail) (USD $)
In Thousands, unless otherwise specified
12 Months Ended
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Financing Receivable, Impaired [Line Items]      
Recorded Investment $ 45,865us-gaap_ImpairedFinancingReceivableRecordedInvestment $ 53,066us-gaap_ImpairedFinancingReceivableRecordedInvestment $ 54,744us-gaap_ImpairedFinancingReceivableRecordedInvestment
Unpaid Principal Balance 49,586us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance 56,563us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance 61,561us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
With No Related Allowance Recorded 34,897us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment 33,292us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment 28,830us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
With an Allowance Recorded 10,968us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment 19,774us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment 25,914us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
Related Allowance 5,246us-gaap_ImpairedFinancingReceivableRelatedAllowance 6,468us-gaap_ImpairedFinancingReceivableRelatedAllowance 6,231us-gaap_ImpairedFinancingReceivableRelatedAllowance
Average Recorded Investment 48,790hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment 48,348hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment 60,732hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
Interest Income Recognized 3,160hafc_ImpairedFinancingReceivableInterestIncomeRecognized 3,709hafc_ImpairedFinancingReceivableInterestIncomeRecognized 4,541hafc_ImpairedFinancingReceivableInterestIncomeRecognized
Real estate loans [Member] | Retail [Member]      
Financing Receivable, Impaired [Line Items]      
Recorded Investment 4,436us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
6,244us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
5,438us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
Unpaid Principal Balance 4,546us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
6,332us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
5,919us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
With No Related Allowance Recorded 1,938us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
3,767us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
4,948us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
With an Allowance Recorded 2,498us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
2,477us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
490us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
Related Allowance 220us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
305us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
94us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
Average Recorded Investment 5,373hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
4,342hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
5,186hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
Interest Income Recognized 251hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
166hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
309hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateRetailMember
Real estate loans [Member] | Hotel/motel [Member]      
Financing Receivable, Impaired [Line Items]      
Recorded Investment 5,835us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
6,200us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
6,056us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
Unpaid Principal Balance 6,426us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
6,940us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
6,790us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
With No Related Allowance Recorded 4,581us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
4,668us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
1,943us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
With an Allowance Recorded 1,254us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
1,532us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
4,113us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
Related Allowance 1,828us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
1,183us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
1,115us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
Average Recorded Investment 4,583hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
5,125hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
5,384hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
Interest Income Recognized 398hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
530hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
566hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_HotelAndMotelMember
Real estate loans [Member] | Gas station [Member]      
Financing Receivable, Impaired [Line Items]      
Recorded Investment 8,974us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
9,389us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
8,844us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
Unpaid Principal Balance 9,594us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
9,884us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
9,239us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
With No Related Allowance Recorded 8,526us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
8,592us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
4,079us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
With an Allowance Recorded 448us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
797us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
4,765us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
Related Allowance 150us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
209us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
413us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
Average Recorded Investment 11,281hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
8,939hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
9,807hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
Interest Income Recognized 787hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
756hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
768hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_GasolineStationMember
Real estate loans [Member] | Other [Member]      
Financing Receivable, Impaired [Line Items]      
Recorded Investment 10,125us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
11,451us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
12,690us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
Unpaid Principal Balance 11,591us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
12,882us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
15,487us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
With No Related Allowance Recorded 8,890us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
9,555us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
7,801us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
With an Allowance Recorded 1,235us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
1,896us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
4,889us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
Related Allowance 319us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
351us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
1,141us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
Average Recorded Investment 10,579hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
10,014hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
13,172hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
Interest Income Recognized 885hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
1,047hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
1,348hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialRealEstateOtherMember
Real estate loans [Member] | Residential property [Member]      
Financing Receivable, Impaired [Line Items]      
Recorded Investment 3,127us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_ResidentialPropertyRealEstateLoanMember
2,678us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_ResidentialPropertyRealEstateLoanMember
3,265us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_ResidentialPropertyRealEstateLoanMember
Unpaid Principal Balance 3,268us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_ResidentialPropertyRealEstateLoanMember
2,773us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_ResidentialPropertyRealEstateLoanMember
3,308us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_ResidentialPropertyRealEstateLoanMember
With No Related Allowance Recorded 3,127us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_ResidentialPropertyRealEstateLoanMember
2,678us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_ResidentialPropertyRealEstateLoanMember
1,866us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_ResidentialPropertyRealEstateLoanMember
With an Allowance Recorded     1,399us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_ResidentialPropertyRealEstateLoanMember
Related Allowance     94us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_ResidentialPropertyRealEstateLoanMember
Average Recorded Investment 2,924hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_ResidentialPropertyRealEstateLoanMember
2,941hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_ResidentialPropertyRealEstateLoanMember
3,268hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_ResidentialPropertyRealEstateLoanMember
Interest Income Recognized 115hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_ResidentialPropertyRealEstateLoanMember
117hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_ResidentialPropertyRealEstateLoanMember
164hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_ResidentialPropertyRealEstateLoanMember
Real estate loans [Member] | Construction [Member]      
Financing Receivable, Impaired [Line Items]      
Average Recorded Investment     6,012hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_ConstructionMember
Interest Income Recognized     209hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_RealEstateLoanMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_ConstructionMember
Commercial and industrial loans [Member] | Commercial term [Member]      
Financing Receivable, Impaired [Line Items]      
Recorded Investment 7,614us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
13,834us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
15,278us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
Unpaid Principal Balance 8,133us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
14,308us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
17,403us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
With No Related Allowance Recorded 2,999us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
2,929us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
6,896us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
With an Allowance Recorded 4,615us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
10,905us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
8,382us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
Related Allowance 2,443us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
3,806us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
2,529us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
Average Recorded Investment 9,458hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
13,083hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
15,010hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
Interest Income Recognized 566hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
968hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
1,039hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialTermLoansUnsecuredMember
Commercial and industrial loans [Member] | Commercial lines of credit [Member]      
Financing Receivable, Impaired [Line Items]      
Recorded Investment 466us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialLinesOfCreditMember
614us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialLinesOfCreditMember
1,521us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialLinesOfCreditMember
Unpaid Principal Balance 575us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialLinesOfCreditMember
686us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialLinesOfCreditMember
1,704us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialLinesOfCreditMember
With No Related Allowance Recorded 466us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialLinesOfCreditMember
173us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialLinesOfCreditMember
848us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialLinesOfCreditMember
With an Allowance Recorded   441us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialLinesOfCreditMember
673us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialLinesOfCreditMember
Related Allowance   252us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialLinesOfCreditMember
230us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialLinesOfCreditMember
Average Recorded Investment 1,205hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialLinesOfCreditMember
1,008hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialLinesOfCreditMember
1,688hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialLinesOfCreditMember
Interest Income Recognized 66hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialLinesOfCreditMember
54hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialLinesOfCreditMember
65hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_CommercialLinesOfCreditMember
Commercial and industrial loans [Member] | International loans [Member]      
Financing Receivable, Impaired [Line Items]      
Recorded Investment 3,546us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_InternationalLoansMember
1,087us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_InternationalLoansMember
 
Unpaid Principal Balance 3,546us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_InternationalLoansMember
1,087us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_InternationalLoansMember
 
With No Related Allowance Recorded 2,628us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_InternationalLoansMember
286us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_InternationalLoansMember
 
With an Allowance Recorded 918us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_InternationalLoansMember
801us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_InternationalLoansMember
 
Related Allowance 286us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_InternationalLoansMember
78us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_InternationalLoansMember
 
Average Recorded Investment 1,736hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_InternationalLoansMember
1,284hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_InternationalLoansMember
 
Interest Income Recognized 33hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= hafc_CommercialAndIndustrialLoansMember
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= hafc_InternationalLoansMember
   
Consumer loans [Member]      
Financing Receivable, Impaired [Line Items]      
Recorded Investment 1,742us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= us-gaap_ConsumerLoanMember
1,569us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= us-gaap_ConsumerLoanMember
1,652us-gaap_ImpairedFinancingReceivableRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= us-gaap_ConsumerLoanMember
Unpaid Principal Balance 1,907us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= us-gaap_ConsumerLoanMember
1,671us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= us-gaap_ConsumerLoanMember
1,711us-gaap_ImpairedFinancingReceivableUnpaidPrincipalBalance
/ us-gaap_FinancialInstrumentAxis
= us-gaap_ConsumerLoanMember
With No Related Allowance Recorded 1,742us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= us-gaap_ConsumerLoanMember
644us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= us-gaap_ConsumerLoanMember
449us-gaap_ImpairedFinancingReceivableWithNoRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= us-gaap_ConsumerLoanMember
With an Allowance Recorded   925us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= us-gaap_ConsumerLoanMember
1,203us-gaap_ImpairedFinancingReceivableWithRelatedAllowanceRecordedInvestment
/ us-gaap_FinancialInstrumentAxis
= us-gaap_ConsumerLoanMember
Related Allowance   284us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= us-gaap_ConsumerLoanMember
615us-gaap_ImpairedFinancingReceivableRelatedAllowance
/ us-gaap_FinancialInstrumentAxis
= us-gaap_ConsumerLoanMember
Average Recorded Investment 1,651hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= us-gaap_ConsumerLoanMember
1,612hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= us-gaap_ConsumerLoanMember
1,205hafc_ImpairedFinancingReceivableAverageRecordedValueOfInvestment
/ us-gaap_FinancialInstrumentAxis
= us-gaap_ConsumerLoanMember
Interest Income Recognized $ 59hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= us-gaap_ConsumerLoanMember
$ 71hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= us-gaap_ConsumerLoanMember
$ 73hafc_ImpairedFinancingReceivableInterestIncomeRecognized
/ us-gaap_FinancialInstrumentAxis
= us-gaap_ConsumerLoanMember