# releaseAccountPayableDocumentHold

## Overview

Releases an active `AccountPayableDocumentHold` so that posting is no longer blocked by it. The input `id` is the hold's ID, not the document's. An optional `releaseReason` can be recorded. Holds are raised either by 3-way matching during registration (source SYSTEM) or manually (source MANUAL); this resolver releases whichever active hold is referenced. Releasing a hold does not change the document's status.

## Modules Commands Used

- [account-payable] releaseAccountPayableDocumentHold

## Exception Handling

| Error Code | Description |
| --- | --- |
| ACCOUNT_PAYABLE_AP_HOLD_NOT_FOUND | No account payable document hold exists for the given ID. |
| ACCOUNT_PAYABLE_AP_HOLD_ALREADY_RELEASED | The hold has already been released. |
