XML 21 R43.htm IDEA: XBRL DOCUMENT
v2.4.1.9

Loans, Allowance For Loan Losses and OREO (Credit Quality Information-By Class) (Details) (USD $) In Thousands, unless otherwise specified | Mar. 31, 2015 | Dec. 31, 2014
--- | --- | ---
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | $ 408,318 us-gaap_NotesReceivableNet | $ 399,363 us-gaap_NotesReceivableNet
Pass [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 385,737 us-gaap_NotesReceivableNet / us-gaap_InternalCreditAssessmentAxis = us-gaap_PassMember | 376,517 us-gaap_NotesReceivableNet / us-gaap_InternalCreditAssessmentAxis = us-gaap_PassMember
Monitor [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 7,305 us-gaap_NotesReceivableNet / us-gaap_InternalCreditAssessmentAxis = botj_MonitorMember | 5,841 us-gaap_NotesReceivableNet / us-gaap_InternalCreditAssessmentAxis = botj_MonitorMember
Special Mention [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 6,238 us-gaap_NotesReceivableNet / us-gaap_InternalCreditAssessmentAxis = us-gaap_SpecialMentionMember | 5,667 us-gaap_NotesReceivableNet / us-gaap_InternalCreditAssessmentAxis = us-gaap_SpecialMentionMember
Substandard [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 9,038 us-gaap_NotesReceivableNet / us-gaap_InternalCreditAssessmentAxis = us-gaap_SubstandardMember | 11,338 us-gaap_NotesReceivableNet / us-gaap_InternalCreditAssessmentAxis = us-gaap_SubstandardMember
Doubtful [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables |  |
Commercial [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 63,396 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember | 63,259 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember
Commercial [Member] | Pass [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 60,888 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_PassMember | 58,745 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_PassMember
Commercial [Member] | Monitor [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 676 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / us-gaap_InternalCreditAssessmentAxis = botj_MonitorMember | 725 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / us-gaap_InternalCreditAssessmentAxis = botj_MonitorMember
Commercial [Member] | Special Mention [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 737 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SpecialMentionMember | 224 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SpecialMentionMember
Commercial [Member] | Substandard [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 1,095 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SubstandardMember | 3,565 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialLoanMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SubstandardMember
Commercial [Member] | Doubtful [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables |  |
Commercial Mortgages-Owner Occupied [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 79,025 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesOwnerOccupiedMember | 77,708 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesOwnerOccupiedMember
Commercial Mortgages-Owner Occupied [Member] | Pass [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 72,558 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesOwnerOccupiedMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_PassMember | 71,087 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesOwnerOccupiedMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_PassMember
Commercial Mortgages-Owner Occupied [Member] | Monitor [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 1,732 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesOwnerOccupiedMember / us-gaap_InternalCreditAssessmentAxis = botj_MonitorMember | 1,718 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesOwnerOccupiedMember / us-gaap_InternalCreditAssessmentAxis = botj_MonitorMember
Commercial Mortgages-Owner Occupied [Member] | Special Mention [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 1,209 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesOwnerOccupiedMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SpecialMentionMember | 1,216 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesOwnerOccupiedMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SpecialMentionMember
Commercial Mortgages-Owner Occupied [Member] | Substandard [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 3,526 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesOwnerOccupiedMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SubstandardMember | 3,687 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesOwnerOccupiedMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SubstandardMember
Commercial Mortgages-Owner Occupied [Member] | Doubtful [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables |  |
Commercial Mortgages-Non-Owner Occupied [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 121,667 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesNonOwnerOccupiedMember | 119,175 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesNonOwnerOccupiedMember
Commercial Mortgages-Non-Owner Occupied [Member] | Pass [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 113,064 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesNonOwnerOccupiedMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_PassMember | 112,560 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesNonOwnerOccupiedMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_PassMember
Commercial Mortgages-Non-Owner Occupied [Member] | Monitor [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 3,095 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesNonOwnerOccupiedMember / us-gaap_InternalCreditAssessmentAxis = botj_MonitorMember | 1,586 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesNonOwnerOccupiedMember / us-gaap_InternalCreditAssessmentAxis = botj_MonitorMember
Commercial Mortgages-Non-Owner Occupied [Member] | Special Mention [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 4,059 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesNonOwnerOccupiedMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SpecialMentionMember | 3,971 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesNonOwnerOccupiedMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SpecialMentionMember
Commercial Mortgages-Non-Owner Occupied [Member] | Substandard [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 1,449 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesNonOwnerOccupiedMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SubstandardMember | 1,058 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_CommercialMortgagesNonOwnerOccupiedMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SubstandardMember
Commercial Mortgages-Non-Owner Occupied [Member] | Doubtful [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables |  |
Commercial Construction [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 13,734 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstateConstructionFinancingReceivableMember | 10,379 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstateConstructionFinancingReceivableMember
Commercial Construction [Member] | Pass [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 13,274 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstateConstructionFinancingReceivableMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_PassMember | 9,919 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstateConstructionFinancingReceivableMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_PassMember
Commercial Construction [Member] | Substandard [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 460 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstateConstructionFinancingReceivableMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SubstandardMember | 460 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_CommercialRealEstateConstructionFinancingReceivableMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SubstandardMember
Commercial Construction [Member] | Doubtful [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables |  |
Consumer Unsecured [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 5,087 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ConsumerUnsecuredMember | 5,760 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ConsumerUnsecuredMember
Consumer Unsecured [Member] | Pass [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 5,087 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ConsumerUnsecuredMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_PassMember | 5,673 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ConsumerUnsecuredMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_PassMember
Consumer Unsecured [Member] | Substandard [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables |  | 87 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ConsumerUnsecuredMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SubstandardMember
Consumer Unsecured [Member] | Doubtful [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables |  |
Consumer Secured [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 72,637 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ConsumerSecuredMember | 70,620 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ConsumerSecuredMember
Consumer Secured [Member] | Pass [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 71,433 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ConsumerSecuredMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_PassMember | 69,527 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ConsumerSecuredMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_PassMember
Consumer Secured [Member] | Monitor [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 550 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ConsumerSecuredMember / us-gaap_InternalCreditAssessmentAxis = botj_MonitorMember | 554 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ConsumerSecuredMember / us-gaap_InternalCreditAssessmentAxis = botj_MonitorMember
Consumer Secured [Member] | Special Mention [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 127 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ConsumerSecuredMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SpecialMentionMember | 136 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ConsumerSecuredMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SpecialMentionMember
Consumer Secured [Member] | Substandard [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 527 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ConsumerSecuredMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SubstandardMember | 403 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ConsumerSecuredMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SubstandardMember
Consumer Secured [Member] | Doubtful [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables |  |
Residential Mortgages [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 45,750 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialMortgageMember | 44,944 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialMortgageMember
Residential Mortgages [Member] | Pass [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 42,500 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialMortgageMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_PassMember | 41,578 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialMortgageMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_PassMember
Residential Mortgages [Member] | Monitor [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 1,252 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialMortgageMember / us-gaap_InternalCreditAssessmentAxis = botj_MonitorMember | 1,258 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialMortgageMember / us-gaap_InternalCreditAssessmentAxis = botj_MonitorMember
Residential Mortgages [Member] | Special Mention [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 106 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialMortgageMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SpecialMentionMember | 120 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialMortgageMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SpecialMentionMember
Residential Mortgages [Member] | Substandard [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 1,892 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialMortgageMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SubstandardMember | 1,988 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = us-gaap_ResidentialMortgageMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SubstandardMember
Residential Mortgages [Member] | Doubtful [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables |  |
Residential Consumer Construction [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 7,022 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ResidentialConsumerConstructionMember | 7,518 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ResidentialConsumerConstructionMember
Residential Consumer Construction [Member] | Pass [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 6,933 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ResidentialConsumerConstructionMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_PassMember | 7,428 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ResidentialConsumerConstructionMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_PassMember
Residential Consumer Construction [Member] | Substandard [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables | 89 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ResidentialConsumerConstructionMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SubstandardMember | 90 us-gaap_NotesReceivableNet / us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis = botj_ResidentialConsumerConstructionMember / us-gaap_InternalCreditAssessmentAxis = us-gaap_SubstandardMember
Residential Consumer Construction [Member] | Doubtful [Member] |  |
Financing Receivable, Recorded Investment [Line Items] |  |
Financing receivables |  |

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

X
- Definition Net amount of the investment in a contractual right to receive money on demand or on fixed or determinable dates that is recognized as an asset in the creditor's statement of financial position. Examples include, but are not limited to, credit card receivables, notes receivable and receivables relating to lessor's rights to payments from leases other than operating leases that have been recorded as assets. Excludes trade accounts receivable with contractual maturity of one year or less and arose from the sale of goods or services. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02.3) -URI http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-X (SX) -Number 210 -Section 02 -Paragraph 3 -Article 5 + Details
Name: | us-gaap_NotesReceivableNet
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

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

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

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

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

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

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

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

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

X
- Details
Name: | us-gaap_InternalCreditAssessmentAxis=botj_MonitorMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_InternalCreditAssessmentAxis=us-gaap_DoubtfulMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_InternalCreditAssessmentAxis=us-gaap_PassMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_InternalCreditAssessmentAxis=us-gaap_SpecialMentionMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_InternalCreditAssessmentAxis=us-gaap_SubstandardMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |