Consent Object Error Codes
This document provides a comprehensive reference for validation errors related to the consent object in the Convenient Checkout API. These errors help identify issues with consent data in API requests and guide you in resolving them.
Error Codes Summary
Error Code Summary
| Error Title Reference | Error Title | HTTP Status | Detail Message | Scenario | Resolution |
|---|---|---|---|---|---|
| Merchant Consent Text Validation | INVALID_REQUEST | 400 BAD REQUEST | Consent is Invalid! | Merchant consent text is invalid or contains unsupported characters | Remove special characters from consent text |
| Merchant Consent Id Validation | INVALID_REQUEST | 400 BAD REQUEST | merchantConsentId is required | Merchant consent id is missing or invalid | Provide a valid merchant consent ID in the request |
| Consent Collection Timestamp Validation | INVALID_REQUEST | 400 BAD REQUEST | collectionTimestamp is required | Consent collection timestamp is missing or invalid | Include a valid collection timestamp in ISO 8601 format |
| Consent Collection Details Validation | INVALID_REQUEST | 400 BAD REQUEST | collectionDetails are not valid | Consent collection details are missing or invalid | Provide complete and valid collection details |
| Agent Object Requirement with PPD Consent | INVALID_REQUEST | 400 BAD REQUEST | agent object is required with PPD consent | PPD consent requires agent object information | Include agent object with all required fields when using PPD consent |
Error Codes Details
Merchant Consent Text Validation
Consent is Invalid
Merchant consent text must be valid and is mandatory for BankAccount payments performed through CCG UI. The text supports alphanumeric characters and a few special characters, but must not contain {, }, +, =, *, ^, %, #, ~, `, <, >, ?, |, \\, [, or ].
Sample Request:
{
"merchantConsentText": "Invalid{Text}"
}
Sample Response:
{
"title": "INVALID_REQUEST",
"status": 400,
"detail": "Consent is Invalid!"
}
Merchant Consent Id Validation
merchantConsentId is required
Merchant consent id must be provided and is mandatory for BankAccount payments performed through CCG API. It supports alphanumeric characters and special characters.
Sample Request:
{
"merchantConsentId": null
}
Sample Response:
{
"title": "INVALID_REQUEST",
"status": 400,
"detail": "merchantConsentId is required"
}
Consent Collection Timestamp Validation
collectionTimestamp is required
Consent collection timestamp must be provided in ISO date time format (e.g., 2025-06-03T10:15:30.100+01:00) and is mandatory for BankAccount payments performed through CCG API.
Sample Request:
{
"collectionTimestamp": "2025-06-03T10:15:30.100+01:00"
}
Sample Response:
{
"title": "INVALID_REQUEST",
"status": 400,
"detail": "collectionTimestamp is required"
}
Consent Collection Details Validation
collectionDetails are not valid
Consent collection details must be provided and valid for BankAccount payments performed through CCG API. Supported types: WEB , TEL and PPD
WEB Type:
WEB - Sample Valid Requests
- Used for bank account payments performed through CCG UI
- Requires IP address and user agent
{
"consent": {
"merchantConsentId": "consent-123",
"merchantConsentText":"string",
"collectionTimestamp": "2025-06-16T10:15:30.100+01:00",
"collectionDetails": {
"type": "WEB",
"web": {
"ipAddress": "192.168.1.1",
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"
}
}
}
}
TEL Type:
TEL - Sample Valid Requests
- Used for bank account payments through both CCG UI & API for agent-based interactions
- Requires inbound phone number with country code and number
{
"consent": {
"merchantConsentId": "consent-456",
"merchantConsentText":"string",
"collectionTimestamp": "2025-06-16T11:30:45.200+01:00",
"collectionDetails": {
"type": "TEL",
"tel": {
"inboundPhoneNumber": {
"countryCode": "1",
"number": "8005551234"
}
}
}
}
}
PPD Type:
PPD - Sample Valid Requests
- Used for bank account payments through CCG API only for agent-based interactions
- No additional fields required PPD Example:
{
"consent": {
"merchantConsentId": "consent-789",
"merchantConsentText":"string",
"collectionTimestamp": "2025-06-16T14:22:15.300+01:00",
"collectionDetails": {
"type": "PPD"
}
}
}
Sample Request:
{
"consent": {
"merchantConsentId": "consent-invalid",
"collectionTimestamp": "2025-06-16T09:45:10.500+01:00",
"collectionDetails": {
"type": "INVALID_TYPE"
}
}
}
Sample Error Response:
{
"title": "INVALID_REQUEST",
"status": 400,
"detail": "collectionDetails are not valid"
}
Agent Object Requirement with PPD Consent
agent object is required with PPD consent
When using PPD consent, an agent object must be provided with the necessary information for the consent to be valid.
Sample Request:
{
{
"consent": {
"merchantConsentId": "consent",
"collectionDetails": {
"type": "PPD"
}
}
}
"agent": null
}
Sample Response:
{
"title": "INVALID_REQUEST",
"status": 400,
"detail": "agent object is required with PPD consent"
}