XML 29 R31.htm IDEA: XBRL DOCUMENT
v2.4.1.9

Loans Receivable (excluding Covered Loans) - Loans Receivable, Analysis of Age of Loans in Past Due Status (Details) (USD $) In Thousands, unless otherwise specified | Mar. 31, 2015 | Sep. 30, 2014
--- | --- | ---
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | $ 8,587,919 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess | $ 8,323,544 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess
Current | 8,490,210 wfsl_LoansAndLeasesReceivableCurrentStatus | 8,203,280 wfsl_LoansAndLeasesReceivableCurrentStatus
30 days | 25,861 wfsl_LoansAndLeasesReceivable1To30DaysPastDue | 19,762 wfsl_LoansAndLeasesReceivable1To30DaysPastDue
60 days | 11,778 wfsl_LoansAndLeasesReceivable31To60DaysPastDue | 27,907 wfsl_LoansAndLeasesReceivable31To60DaysPastDue
90 days | 60,070 wfsl_LoansAndLeasesReceivable61To90DaysPastDue | 72,595 wfsl_LoansAndLeasesReceivable61To90DaysPastDue
Total | 97,709 wfsl_LoansAndLeasesReceivablePastDue | 120,264 wfsl_LoansAndLeasesReceivablePastDue
Ratio of past due loans to total loans, net of charge-offs and LIPs | 1.14%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess | 1.44%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess
Non-Acquired Loans [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 8,348,895 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember | 8,063,364 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember
Current | 8,257,291 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember | 7,947,551 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember
30 days | 24,302 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember | 19,477 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember
60 days | 9,701 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember | 26,449 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember
90 days | 57,601 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember | 69,887 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember
Total | 91,604 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember | 115,813 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 1.10%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember | 1.44%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember
Non-Acquired Loans [Member] | Single-Family Residential [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 5,532,553 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 5,557,753 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Current | 5,450,820 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 5,467,239 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
30 days | 19,822 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 15,926 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
60 days | 8,082 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 9,139 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
90 days | 53,829 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 65,449 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Total | 81,733 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 90,514 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 1.48%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 1.63%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Non-Acquired Loans [Member] | Construction - Speculative [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 105,392 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionSpeculativeMember | 87,035 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionSpeculativeMember
Current | 103,044 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionSpeculativeMember | 87,035 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionSpeculativeMember
30 days | 2,348 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionSpeculativeMember | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionSpeculativeMember
60 days | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionSpeculativeMember | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionSpeculativeMember
90 days | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionSpeculativeMember | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionSpeculativeMember
Total | 2,348 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionSpeculativeMember | 0 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionSpeculativeMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 2.23%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionSpeculativeMember | 0.00%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionSpeculativeMember
Non-Acquired Loans [Member] | Construction - Custom [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 201,777 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionCustomMember | 192,098 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionCustomMember
Current | 200,608 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionCustomMember | 191,262 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionCustomMember
30 days | 355 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionCustomMember | 836 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionCustomMember
60 days | 814 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionCustomMember | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionCustomMember
90 days | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionCustomMember | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionCustomMember
Total | 1,169 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionCustomMember | 836 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionCustomMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 0.58%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionCustomMember | 0.44%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_ConstructionCustomMember
Non-Acquired Loans [Member] | Land - Acquisition & Development [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 90,838 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 68,066 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
Current | 90,838 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 67,911 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
30 days | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 155 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
60 days | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
90 days | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
Total | 0 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 155 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 0.00%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 0.23%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
Non-Acquired Loans [Member] | Land - Consumer Lot Loans [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 102,003 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember | 108,589 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember
Current | 98,717 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember | 104,571 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember
30 days | 466 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember | 1,246 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember
60 days | 478 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember | 304 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember
90 days | 2,342 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember | 2,468 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember
Total | 3,286 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember | 4,018 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 3.22%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember | 3.70%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember
Non-Acquired Loans [Member] | Multi-Family [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 941,122 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember | 892,196 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember
Current | 940,175 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember | 891,372 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember
30 days | 620 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember | 205 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember
60 days | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember | 16 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember
90 days | 327 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember | 603 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember
Total | 947 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember | 824 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 0.10%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember | 0.09%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember
Non-Acquired Loans [Member] | Commercial Real Estate [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 627,843 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 529,453 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Current | 627,209 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 513,409 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
30 days | 62 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 67 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
60 days | 93 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 15,118 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
90 days | 479 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 859 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Total | 634 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 16,044 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 0.10%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 3.03%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Non-Acquired Loans [Member] | Commercial & Industrial [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 407,763 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 379,226 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
Current | 407,698 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 377,848 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
30 days | 65 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 53 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
60 days | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 1,318 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
90 days | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 7 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
Total | 65 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 1,378 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 0.02%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 0.36%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
Non-Acquired Loans [Member] | HELOC [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 120,904 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 116,262 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
Current | 120,098 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 115,262 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
30 days | 150 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 335 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
60 days | 74 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 292 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
90 days | 582 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 373 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
Total | 806 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 1,000 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 0.67%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 0.86%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
Non-Acquired Loans [Member] | Consumer [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 218,700 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 132,686 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Current | 218,084 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 131,642 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
30 days | 414 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 654 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
60 days | 160 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 262 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
90 days | 42 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 128 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Total | 616 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 1,044 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 0.28%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 0.79%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_NonAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Acquired Non-Impaired Loans [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 169,524 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember | 180,892 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember
Current | 165,858 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember | 178,945 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember
30 days | 1,172 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember | 126 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember
60 days | 1,561 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember | 474 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember
90 days | 933 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember | 1,347 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember
Total | 3,666 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember | 1,947 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 2.16%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember | 1.08%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember
Acquired Non-Impaired Loans [Member] | Single-Family Residential [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 10,976 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 11,716 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Current | 10,819 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 11,693 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
30 days | 133 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
60 days | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
90 days | 24 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 23 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Total | 157 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 23 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 1.43%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 0.20%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Acquired Non-Impaired Loans [Member] | Land - Acquisition & Development [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 728 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 905 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
Current | 728 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 905 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
30 days | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
60 days | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
90 days | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
Total | 0 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 0 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 0.00%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 0.00%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
Acquired Non-Impaired Loans [Member] | Land - Consumer Lot Loans [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 2,474 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember | 2,502 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember
Current | 2,139 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember | 2,132 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember
30 days | 218 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember
60 days | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember | 370 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember
90 days | 117 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember
Total | 335 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember | 370 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 13.54%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember | 14.79%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandConsumerLotLoansMember
Acquired Non-Impaired Loans [Member] | Multi-Family [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 2,912 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember | 2,999 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember
Current | 2,912 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember | 2,999 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember
30 days | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember
60 days | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember
90 days | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember
Total | 0 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember | 0 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 0.00%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember | 0.00%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_MultiFamilyHousingPortfolioSegmentMember
Acquired Non-Impaired Loans [Member] | Commercial Real Estate [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 87,290 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 97,715 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Current | 85,063 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 96,948 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
30 days | 492 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 104 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
60 days | 1,561 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
90 days | 174 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 663 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Total | 2,227 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 767 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 2.55%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 0.78%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Acquired Non-Impaired Loans [Member] | Commercial & Industrial [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 55,670 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 51,329 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
Current | 55,670 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 51,229 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
30 days | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
60 days | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 100 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
90 days | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
Total | 0 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 100 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 0.00%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 0.19%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
Acquired Non-Impaired Loans [Member] | HELOC [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 6,700 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 8,056 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
Current | 6,201 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 8,056 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
30 days | 275 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
60 days | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
90 days | 224 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
Total | 499 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 0 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 7.45%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 0.00%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
Acquired Non-Impaired Loans [Member] | Consumer [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 2,774 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 5,670 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Current | 2,326 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 4,983 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
30 days | 54 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 22 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
60 days | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 4 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
90 days | 394 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 661 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Total | 448 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 687 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 16.15%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 12.12%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_AcquiredNonImpairedLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Credit Impaired Acquired Loans [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 69,500 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember | 79,288 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember
Current | 67,061 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember | 76,784 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember
30 days | 387 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember | 159 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember
60 days | 516 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember | 984 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember
90 days | 1,536 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember | 1,361 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember
Total | 2,439 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember | 2,504 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 3.51%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember | 3.16%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember
Credit Impaired Acquired Loans [Member] | Single-Family Residential [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 322 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 325 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Current | 322 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 325 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
30 days | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
60 days | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
90 days | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Total | 0 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 0 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 0.00%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember | 0.00%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialPortfolioSegmentMember
Credit Impaired Acquired Loans [Member] | Land - Acquisition & Development [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 1,395 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 1,581 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
Current | 1,395 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 1,581 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
30 days | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
60 days | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
90 days | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
Total | 0 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 0 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 0.00%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember | 0.00%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_LandAcquisitionAndDevelopmentMember
Credit Impaired Acquired Loans [Member] | Commercial Real Estate [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 56,717 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 63,713 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Current | 54,366 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 61,713 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
30 days | 387 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 152 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
60 days | 516 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 909 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
90 days | 1,448 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 939 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Total | 2,351 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 2,000 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 4.15%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember | 3.14%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstatePortfolioSegmentMember
Credit Impaired Acquired Loans [Member] | Commercial & Industrial [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 2,179 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 3,477 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
Current | 2,179 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 3,470 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
30 days | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 7 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
60 days | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
90 days | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
Total | 0 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 7 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 0.00%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember | 0.20%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_CommercialAndIndustrialLoansMember
Credit Impaired Acquired Loans [Member] | HELOC [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 8,836 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 10,138 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
Current | 8,748 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 9,641 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
30 days | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
60 days | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 75 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
90 days | 88 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 422 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
Total | 88 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 497 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 1.00%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember | 4.90%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = wfsl_HomeEquityLineOfCreditMember
Credit Impaired Acquired Loans [Member] | Consumer [Member] |  |
Accounts, Notes, Loans and Financing Receivable [Line Items] |  |
Amount of loans, net of charge-offs and LIP | 51 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 54 wfsl_LoansReceivableNetofChargeOffsandLoansinProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Current | 51 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 54 wfsl_LoansAndLeasesReceivableCurrentStatus / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
30 days | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 0 wfsl_LoansAndLeasesReceivable1To30DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
60 days | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 0 wfsl_LoansAndLeasesReceivable31To60DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
90 days | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 0 wfsl_LoansAndLeasesReceivable61To90DaysPastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Total | $ 0 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | $ 0 wfsl_LoansAndLeasesReceivablePastDue / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember
Ratio of past due loans to total loans, net of charge-offs and LIPs | 0.00%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember | 0.00%wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess / us-gaap_BusinessAcquisitionAxis = wfsl_CreditImpairedAcquiredLoansMember / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ConsumerPortfolioSegmentMember

X
- Details
Name: | us-gaap_AccountsNotesAndLoansReceivableLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Loans and Leases Receivable, 1 to 30 Days Past Due + References No definition available. + Details
Name: | wfsl_LoansAndLeasesReceivable1To30DaysPastDue
Namespace Prefix: | wfsl_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Loans and Leases Receivable, 31 to 60 Days Past Due + References No definition available. + Details
Name: | wfsl_LoansAndLeasesReceivable31To60DaysPastDue
Namespace Prefix: | wfsl_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Loans and Leases Receivable, 61 to 90 Days Past Due + References No definition available. + Details
Name: | wfsl_LoansAndLeasesReceivable61To90DaysPastDue
Namespace Prefix: | wfsl_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Loans and Leases Receivable, Current Status + References No definition available. + Details
Name: | wfsl_LoansAndLeasesReceivableCurrentStatus
Namespace Prefix: | wfsl_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Loans and Leases Receivable, Past Due + References No definition available. + Details
Name: | wfsl_LoansAndLeasesReceivablePastDue
Namespace Prefix: | wfsl_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Loans and Leases Receivable, Ratio of Total Past Due Loans to Total Loans Receivable, Net of Charge Offs and Loans in Process + References No definition available. + Details
Name: | wfsl_LoansAndLeasesReceivableRatioOfTotalPastDueLoansToTotalLoansReceivableNetOfChargeOffsAndLoansInProcess
Namespace Prefix: | wfsl_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | instant

X
- Definition Loans Receivable, Net of Charge Offs and Loans in Process + References No definition available. + Details
Name: | wfsl_LoansReceivableNetofChargeOffsandLoansinProcess
Namespace Prefix: | wfsl_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Details
Name: | us-gaap_BusinessAcquisitionAxis=wfsl_AcquiredNonImpairedLoansMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_BusinessAcquisitionAxis=wfsl_CreditImpairedAcquiredLoansMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_BusinessAcquisitionAxis=wfsl_NonAcquiredLoansMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |