# ReactivatePartnerBankAccount

## Permission Scope

partnerDetail

## Overview

reactivatePartnerBankAccount sets a bank account's `active` flag back to `true`, making it available for new CustomerAccount and SupplierAccount usages.

## Business Rules

- Bank account must exist
- Bank account must currently be inactive

## Process Flow

```mermaid
flowchart TD
    A[Receive bank account ID] --> B{Bank account exists and is inactive?}
    B -->|No| C[Return domain error]
    B -->|Yes| D[Set active to true]
    D --> E[Save BusinessPartner aggregate]
```

## External Dependencies

- None

## Error Scenarios

- **BANK_ACCOUNT_NOT_FOUND**: Specified bank account ID does not exist
- **INVALID_STATE_TRANSITION**: Requested state transition is not allowed from the current status

## Test Cases

- reactivates an inactive bank account
