Release PND (Post No Debit)
Release Post No Debit restriction from a deposit account to restore full debit transaction capabilities.
Overviewโ
The ReleasePNDFromDepositAccountCommand removes the Post No Debit (PND) restriction from an account, allowing withdrawals, transfers, and all debit operations to resume. This command reverses the effect of ActivatePNDOnAccountCommand and is used when the reason for the restriction has been resolved.
Key Capabilitiesโ
- PND Removal: Releases Post No Debit restriction
- Full Access Restoration: Re-enables all debit operations
- Audit Trail: Records release reason and user
- Validation: Ensures account is actually on PND before releasing
- Activity Notification: Logs release for compliance
API Endpointโ
POST /api/bpm/cmd
Request Structureโ
{
"commandName": "ReleasePNDFromDepositAccountCommand",
"data": {
"accountEncodedKey": "string",
"notes": "string"
}
}
Request Fieldsโ
| Field | Type | Required | Description |
|---|---|---|---|
accountEncodedKey | string | Yes | Account number or encoded key |
notes | string | No | Optional notes/reason for releasing PND |
Response Structureโ
Success Responseโ
{
"isSuccessful": true,
"message": "The deposit account PND (POST NO DEBIT) has been released successfully.",
"statusCode": "00"
}
Error Responseโ
{
"isSuccessful": false,
"message": "The deposit account is not presently on PND (POST NO DEBIT).",
"statusCode": "INVALID_REQUEST"
}
Sample Requestsโ
1. Release After Limit Resetโ
{
"commandName": "ReleasePNDFromDepositAccountCommand",
"data": {
"accountEncodedKey": "ACC001234567",
"notes": "New day - Daily limits reset, PND released"
}
}
2. Release After Investigationโ
{
"commandName": "ReleasePNDFromDepositAccountCommand",
"data": {
"accountEncodedKey": "SAV987654321",
"notes": "Suspicious activity investigation completed - No issues found"
}
}
Business Logicโ
Processing Workflowโ
Validation Stepsโ
- Extract Fields: Get accountEncodedKey and optional notes
- Account Query: Load account with related entities
- Existence Check: Verify account exists
- PND Check: Verify IsOnPND is currently true
- PND Release: Set IsOnPND flag to false
- Database Update: Persist change
- Notification: Send activity notification
- Success Response: Return confirmation
Impact of Releaseโ
Operations Restoredโ
- รขลโฆ Withdrawals (cash, ATM, teller)
- รขลโฆ Transfers out of the account
- รขลโฆ Bill payments from account
- รขลโฆ Standing orders (debits)
- รขลโฆ Card transactions (debit)
- รขลโฆ Check payments
Error Responsesโ
| Error Code | Message | Resolution |
|---|---|---|
Client_Not_Found | "The deposit account does not exist." | Verify account identifier |
INVALID_REQUEST | "Account not on PND" | Check IsOnPND status first |
Code Examplesโ
C# Implementationโ
Code Removed
Implementation details removed for security.
Contact support for implementation guidance.
JavaScript Implementationโ
async releasePND(accountEncodedKey, notes = null) {
const request = {
commandName: 'ReleasePNDFromDepositAccountCommand',
data: { accountEncodedKey, notes }
};
const response = await fetch(`${this.baseUrl}/api/bpm/cmd`, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': `Bearer ${this.accessToken}`,
'X-Tenant-ID': this.tenantId
},
body: JSON.stringify(request)
});
return await response.json();
}
Python Implementationโ
def release_pnd(
self,
account_encoded_key: str,
notes: Optional[str] = None
) -> PNDReleaseResponse:
request_data = {
'commandName': 'ReleasePNDFromDepositAccountCommand',
'data': {
'accountEncodedKey': account_encoded_key,
'notes': notes
}
}
response = requests.post(
f'{self.base_url}/api/bpm/cmd',
headers=self.headers,
json=request_data
)
result = response.json()
return PNDReleaseResponse(
is_successful=result.get('isSuccessful', False),
message=result.get('message', ''),
status_code=result.get('statusCode', '')
)
Business Rulesโ
Validation Rulesโ
- Account Required: accountEncodedKey must be provided
- Account Must Exist: Account must be in system
- Must Be On PND: Account must have IsOnPND = true
- Notes Optional: Release notes are optional
Operational Rulesโ
- Flag Cleared: IsOnPND boolean flag set to false
- Immediate Effect: Debits can resume immediately
- Activity Logged: Release logged with ReleasePND action
- Notification Sent: Activity notification published
- User Recorded: User who released PND is logged
- Balance Unchanged: Account balance unaffected
Related Operationsโ
- ActivatePNDOnAccountCommand: Activate PND restriction
- UnlockDepositAccountCommand: Remove full account lock
- InitiateWithdrawalCommand: Can proceed after PND release
Supportโ
For technical assistance: api-support@banklingo.com