Approve Customer
Overview
The Approve Customer API allows authorized personnel to approve customer records that have been submitted for review. This command completes the customer onboarding approval workflow, enabling the customer to access full banking services.
Command Details
Command Name: ApproveCustomerCommand
Operation Type: Command (Write Operation)
Use Cases
- Customer Activation: Approve new customers to activate their accounts
- Compliance Verification: Confirm customers meet all regulatory requirements
- Maker-Checker Workflow: Provide checker approval in dual-control processes
- Risk Assessment: Authorize customers after risk review completion
API Endpoint
POST /api/bpm/cmd
Content-Type: application/json
Authorization: Bearer {access_token}
Request Structure
Request Body
{
"commandName": "ApproveCustomerCommand",
"data": {
"contactEncodedKey": "string",
"approvalNotes": "string"
}
}
Request Fields
| Field Name | Type | Mandatory | Description |
|---|---|---|---|
contactEncodedKey | String | Yes | Unique identifier of the customer |
approvalNotes | String | No | Approval notes or comments |
Sample Requests
1. Approve Customer
{
"commandName": "ApproveCustomerCommand",
"data": {
"contactEncodedKey": "8a8e87e87d1234567890abcd",
"approvalNotes": "All documentation verified. Customer cleared for activation."
}
}
Response Structure
Success Response
{
"isSuccessful": true,
"statusCode": "00",
"message": "Customer approved successfully.",
"data": {
"contactEncodedKey": "8a8e87e87d1234567890abcd",
"approvalStatus": "Approved",
"approvedBy": "user@bank.com",
"approvalDate": "2025-12-18T10:30:00Z"
}
}
Error Handling
| Status Code | Message | Cause |
|---|---|---|
CBS_400 | Validation error | Invalid request data |
CBS_403 | Forbidden | Insufficient approval permissions |
CBS_404 | Customer not found | Invalid contact encoded key |
CBS_409 | Invalid status | Customer not in pending approval status |
CBS_500 | Internal server error | System error |
Code Examples
cURL
curl -X POST https://api.example.com/api/bpm/cmd \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-d '{
"commandName": "ApproveCustomerCommand",
"data": {
"contactEncodedKey": "8a8e87e87d1234567890abcd",
"approvalNotes": "Approved after verification"
}
}'
C# Example
var client = new HttpClient();
client.DefaultRequestHeaders.Authorization =
new AuthenticationHeaderValue("Bearer", accessToken);
var request = new
{
commandName = "ApproveCustomerCommand",
data = new
{
contactEncodedKey = "8a8e87e87d1234567890abcd",
approvalNotes = "Approved after verification"
}
};
var response = await client.PostAsJsonAsync(
"https://api.example.com/api/bpm/cmd",
request
);
Notes
- Requires approval permissions
- Customer must be in pending approval status
- Approval is logged with user details for audit
- Customer gains access to full banking services
- Approval workflow is completed