curl -X POST "https://demo.api.vultlocal.com/api/v1/subscribers/sub_abc123/verify-pin" \
-H "Authorization: Bearer olive_live_xxx" \
-H "Content-Type: application/json" \
-d '{
"pin": "1234"
}'
{
"success": true,
"message": "PIN verified successfully"
}
{
"success": false,
"message": "Invalid PIN",
"attempts_remaining": 2
}
{
"success": false,
"message": "Account locked due to too many failed attempts",
"locked_until": "2025-01-20T16:00:00Z"
}
Subscribers
Verify PIN
Verify a subscriber’s 4-digit PIN
POST
/
subscribers
/
{id}
/
verify-pin
curl -X POST "https://demo.api.vultlocal.com/api/v1/subscribers/sub_abc123/verify-pin" \
-H "Authorization: Bearer olive_live_xxx" \
-H "Content-Type: application/json" \
-d '{
"pin": "1234"
}'
{
"success": true,
"message": "PIN verified successfully"
}
{
"success": false,
"message": "Invalid PIN",
"attempts_remaining": 2
}
{
"success": false,
"message": "Account locked due to too many failed attempts",
"locked_until": "2025-01-20T16:00:00Z"
}
Use this endpoint to verify a subscriber’s PIN before processing sensitive operations.
Request
string
required
Bearer olive_live_xxx or Bearer eyJ... (JWT)Path Parameters
string
required
Subscriber UUID (e.g.,
sub_abc123)Body Parameters
string
required
4-digit PIN to verify
Response
boolean
Whether PIN is valid
string
Result message
Examples
curl -X POST "https://demo.api.vultlocal.com/api/v1/subscribers/sub_abc123/verify-pin" \
-H "Authorization: Bearer olive_live_xxx" \
-H "Content-Type: application/json" \
-d '{
"pin": "1234"
}'
{
"success": true,
"message": "PIN verified successfully"
}
{
"success": false,
"message": "Invalid PIN",
"attempts_remaining": 2
}
{
"success": false,
"message": "Account locked due to too many failed attempts",
"locked_until": "2025-01-20T16:00:00Z"
}
PIN Security
Attempt Limits
- 3 failed attempts allowed
- Account locked for 30 minutes
- Counter resets on success
Audit Logging
- All attempts logged
- IP address recorded
- Used for fraud detection
Use Cases
| Use Case | Description |
|---|---|
| POS Payment | Verify before deducting funds |
| P2P Transfer | Confirm sender identity |
| Cash-Out | Authenticate withdrawal |
| Profile Change | Verify before sensitive updates |
Errors
| Status | Code | Description |
|---|---|---|
| 400 | INVALID_PIN_FORMAT | PIN must be 4 digits |
| 401 | UNAUTHORIZED | Invalid or missing API key |
| 401 | INVALID_PIN | PIN does not match |
| 403 | ACCOUNT_LOCKED | Too many failed attempts |
| 404 | NOT_FOUND | Subscriber not found |
| 500 | INTERNAL_ERROR | Server error |
Related
Change PIN
Change subscriber’s PIN to a new value
Authorizations
ApiKeyAuthBearerAuth
API Key for third-party integrations (WhatsApp, Smart PAY, VULT). Format: 'Bearer olive_live_xxxxxxxxxxxxx'
Path Parameters
Subscriber ID
Body
application/json
PIN to verify
Example:
"1234"
Response
PIN verification result
The response is of type object.
⌘I