Skip to main content

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 NameTypeMandatoryDescription
contactEncodedKeyStringYesUnique identifier of the customer
approvalNotesStringNoApproval 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 CodeMessageCause
CBS_400Validation errorInvalid request data
CBS_403ForbiddenInsufficient approval permissions
CBS_404Customer not foundInvalid contact encoded key
CBS_409Invalid statusCustomer not in pending approval status
CBS_500Internal server errorSystem 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