{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/citi/main/json-schema/citi-card-enrollment-partial-success-response-schema.json", "title": "CardEnrollmentPartialSuccessResponse", "x-generated": "2026-10-12", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/citi-mvca-api-openapi.yml#/components/schemas/CardEnrollmentPartialSuccessResponse", "properties": { "cardHolderUserId": { "description": "Unique ID to be generated & sent by Citi clients to identify user profile.", "type": "string", "format": "alphanumeric [a-zA-Z0-9]", "maxLength": 20, "minLength": 1 }, "countryOfIssuance": { "description": "Country in which the VCA program is issued out of.", "type": "string", "format": "alphabets [a-zA-Z]", "maxLength": 3, "minLength": 3 }, "screeningInfo": { "description": "Screening status after performing customer screening.", "type": "object", "format": "object", "$ref": "#/$defs/ScreeningInfo" }, "cardPartialSuccessInfo": { "description": "Screening status after performing customer screening.", "type": "array", "items": { "$ref": "#/$defs/ValidationErrorResponseDetails" } } }, "$defs": { "EnrollErrorMessage": { "required": [ "errorCode", "errorDescription" ], "type": "object", "description": "List of error code and description to be sent to the Client", "properties": { "errorCode": { "maxLength": 10, "minLength": 1, "type": "string", "description": "error code to be sent to the Client", "format": "alphanumeric [a-zA-Z0-9]" }, "errorDescription": { "description": "The error description that corresponds to error code when there is any error occurred while retrieving the trsansaction.
* `GRC0001` - We have encountered an error and couldnt receive your request. Please try again, or contact Citi support if you have any further questions or comments
* `GRC0002` - Client ID is missing in the request header
* `GRC0003` - Contry code is not available in the request
* `GRC0004` - Region ID is not available in the request
* `GRC0005` - We have encountered an error and couldnt receive your request. Please try again, or contact Citi support if you have any further questions or comments
* `GRC0006` - We have encountered an error and couldnt receive your request. Please try again, or contact Citi support if you have any further questions or comments
* `GRC0007` - Client requested MediaType is not supported.
* `GRC0009` - We have encountered an error and couldnt receive your request. Please try again, or contact Citi support if you have any further questions or comments
* `GRC0011` - Client ID and/or Country and/or region id is missing in Client Onboard Configuration setup. Contact Citi support.
* `GRC0012` - Necessary header value is missing
* `GRC0003` - Invalid JSON Input
* `GRC0014` - We have encountered an error and couldnt receive your request. Please try again, or contact Citi support if you have any further questions or comments
* `EVB1245` - First Name is mandatory and should not be null or empty
* `EVB1246` - Last Name is mandatory and should not be null or empty
* `EVB1247` - Line 1 of address is mandatory and should not be null or empty
* `EVB1248` - City is mandatory and should not be null or empty
* `EVB1249` - State is mandatory and should not be null or empty
* `EVB1250` - Zip code is mandatory and should not be null or empty
* `EVB1251` - Country is mandatory and should not be null or empty
* `EVB1252` - Date of Birth is mandatory and should not be null or empty
* `EVB1253` - Country is mandatory and should not be null or empty
* `EVB1254` - Nationality is mandatory and should not be null or empty
* `EVB1257` - Document(s) is mandatory and should not be null or empty and should be one of the required documents
* `EVB1258` - countryOfIssuance is mandatory
* `EVB1150` - cardHolderUserId is mandatory
* `EVB1152` cardHolderUserId must be plain text
* `EVB1151` - cardHolderUserId size must be between 1 and 20 characters
* `EVB1259` - countryOfIssuance must be exactly 3 characters
* `EVB1260` - countryOfIssuance must be only in upper case
* `EVB0017` - vcaGuid is empty or null
* `EVB0014` - vcaGuid value must be a numeric
* `EVB0010` - vcaGuid size must be between 1 and 19 digits
* `EVB0033` - fundingSourceId is mandatory
* `EVB0032` - fundingSourceId value must be numeric
* `EVB0352` - FundingSourceId is Invalid. FundingSourceId value should be a valid long value and size must be between 1 and 19 digits
* `EVB0042` - fundingSourceName is mandatory
* `EVB0041` - fundingSourceName must have minimum of 1 and maximum of 100 characters
* `EVB0271` - expiryDate is mandatory
* `EVB0061` - expiryDate length exceeds max length allowed of: 6 characters
* `EVB0259` - expiryDate must have format: MMYYYY
* `EVB0219` - expiryDate month and year cannot be a past or current date
* `EVB0626` - expiryDate cannot be more than 24 months into the future
* `EVB0265` - mccGrouping cannot be null or empty
* `EVB0254` - mccGrouping should not contain multiple values
* `EVB0062` - TimeZone is mandatory
* `EVB0063` - timeZone field has an invalid UTC offset time zone format. Valid format is UTC+/-HH:MM
* `EVB0615` - No time zone found for UTC value provided in timeZone field
* `EVB0071` - templateId is mandatory
* `EVB0014` - templateId should be numeric
* `EVB0010` - templateId should have minimum of 1 & maximum of 19 characters
* `EVB0071` - virtualCardAccountNumber is mandatory
* `EVB0010` - virtualCardAccountNumber must have exactly 16 characters
* `EVB0502` - virtualCardAccountNumber is Invalid
* `EVB0255` - customReference list should have minimum of 1 & maximum of 29 items
* `EVB504` - templateCustomField.customFieldName is mandatory
* `EVB0258` - customReferenceLabel should have minimum of 1 & maximum of 50 characters
* `EVB0505` - templateCustomField.customFieldValue is mandatory
* `EVB0353` - customReferenceValue should have minimum of 1 & maximum of 80 characters
* `EVB0136` - currencyType is mandatory
* `EVB0162` - currencyType must have value which matches regex: M|B|m|b
* `EVB0130` - currencyType length exceed max length allowed is: 1 characters
* `EVB0065` - currencyCode is mandatory
* `EVB0245` - currencyCode value must be numeric [0-9]
* `EVB0099` - currencyCode length allowed is: 3 digits
* `EVB0624` - The currencyCode value provided is invalid. Please update the currencyCode value and retry your request
* `EVB0272` - Both Aging and Spend Velocity Control cannot be enabled
* `EVB0273` - Either Aging or Spend Velocity Control should be enabled
* `EVB0903` - Atleast one Spend velocity control is required, When enableSpendVelocity is true
* `EVB503` - SpendVelocity size should not exceed 6
* `EVB0137` - spendVelocityControl-cumulativeSpendLimit is mandatory
* `EVB0625` - cumulativeSpendLimit max field length is 14 digits with 12 digits to the left of the decimal and 2 digits to the right of the decimal
* `EVB0365` - periodType is mandatory if enableSpendVelocity is true
* `EVB0140` - periodType length exceeds max length allowed of: 1 character
* `EVB0610` - Invalid periodType value. periodType can contain a value of either D, M, W, Q, Y, or C
* `EVB0904` - Invalid request. Duplicate periodType values cannot be included when setting the Spend Velocity Control
* `EVB0231` - maxAuth is mandatory if enableSpendVelocityControl is set to True
* `EVB0362` - Invalid maxAuth format. maxAuth value cannot exceed 8 digits
* `EVB0163` - authorizationHoldDays is mandatory if agingVelocityControl is true
* `EVB0621` - authorizationHoldDays must be positive long value with a maximum of 4 digits
* `EVB0369` - cumulativeSpendLimit is mandatory if Aging Velocity Control is set to true
* `EVB0625` - cumulativeSpendLimit max field length is 14 digits with 12 digits to the left of the decimal and 2 digits to the right of the decimal
* `EVB0378` - isMerchantIdAllowed is mandatory if MerchantIdControl is enabled
* `EVB0371` - isCountryallowed is mandatory if GeographyControl is enabled
* `EVB0370` - countryCodes is required if Geography Control is set to true
* `EVB0236` - Invalid countryCode, countryCode doesn't exist.
* `EVB0367` - startTime is mandatory if Time Of Day Control is true
* `EVB0233` - endTime is mandatory if Time Of Day Control is true
* `EVB0110` - startTime value must have valid format: HH:MM - H (0,1,2) | H (0-9) : M (0-5) | M (0-9)
* `EVB0112` - endTime value must have valid format: HH:MM - H (0,1,2) | H (0-9) : M (0-5) | M (0-9)
* `EVB0622` - startTime cannot be equal to endTime
* `EVB0235` - startTime value cannot exceed the requested endTime value
* `EVB0232` - weekdayEffective is mandatory if Time Of Day Control is true
* `EVB0368` - weekdayEffective must have value which matches regex: SUN|MON|TUE|WED|THU|FRI|SAT
* `EVB0623` - timeOfDayControl cannot have duplicate weekdayEffective values
* `EVB0113` - startTime is mandatory if CurfewControl is true
* `EVB0110` - startTime value must have valid format: HH:MM - H (0,1,2) | H (0-9) : M (0-5) | M (0-9)
* `EVB0114` - endTime is mandatory if CurfewControl is true
* `EVB0112` - endTime value must have valid format: HH:MM - H (0,1,2) | H (0-9) : M (0-5) | M (0-9)
* `EVB0622` - startTime cannot be equal to endTime
* `EVB0235` - startTime value cannot exceed the requested endTime value
* `EVB0262` - weekdayEffective is mandatory if enableCurfewControl is true
* `EVB0263` - CurfewControl-weekdayEffective must have value which matches regex: ((?i)(SUN|MON|TUE|WED|THU|FRI|SAT))(,(?i)(SUN|MON|TUE|WED|THU|FRI|SAT))*
* `EVB0106` - minAmount is mandatory if enableAmountRangeControl is true
* `EVB0354` - AmountRangeControl-minAmount length exceed max length allowed is: 14 characters
* `EVB0107` - maxAmount is mandatory if enableAmountRangeControl is true
* `EVB0355` - AmountRangeControl-maxAmount length exceed max length allowed is: 14 characters
* `EVB0381` - AmountRangeControl-minAmount is greater than maxAmount
* `EVB0170` - amountLimit is mandatory if TransactionLimitControl is true
* `EVB0364` - transactionlimitcontrol-amount value must be a numeric positive value with a maximum of 10 digits to the left and 2 digits to the right of the decimal
* `EVB0125` - validityStartDate is mandatory if ValidityPeriodControl is true
* `EVB0121` - validityStartDate value must have valid format: YYYY-MM-DD
* `EVB0211` - validityStartDate invalid format. MM value must be less than or equal to 12 and DD value must be less than or equal to 31
* `EVB0238` - The date specified in validityStartDate does not exist
* `EVB0217` - validityStartDate cannot be a past date
* `EVB0126` - validityEndDate is mandatory if ValidityPeriodControl is true
* `EVB0120` - validityEndDate value must have valid format: YYYY-MM-DD
* `EVB0211` - validityEndDate invalid format. MM value must be less than or equal to 12 and DD value must be less than or equal to 31
* `EVB0237` - The date specified in validityEndDate does not exist
* `EVB0218` - validityEndDate cannot be a past date
* `EVB0600` - validityStartDate should be before validityEndDate
* `EVB0215` - Validity Period Control must be set to true and validityStartDate and validityEndDate are mandatory if periodType = C
* `EVB1153` - vcaRequestor.requestorType is mandatory and can be either 'INDIVIDUAL' or 'ORG'
* `EVB1154` - vcaRequestor.id is mandatory
* `EVB1155` - vcaRequestor.firstName is mandatory
* `EVB1156` - vcaRequestor.lastName is mandatory
* `EVB1157` - vcaRequestor.middleName is mandatory
* `EVB1158` - vcaRequestor.orgName is mandatory
* `EVB1161` - vcaUser.emailId is mandatory
* `EVB1162` - vcaUser.emailId format is invalid
* `EVB1163` - vcaUser.mobileNumber is mandatory
* `EVB1164` - vcaUser.mobileNumber should be numeric
* `EVB1165` - vcaUser.mobileCountryCode is mandatory
", "type": "string", "format": "alphanumeric [a-zA-Z0-9]" } } }, "ScreeningInfo": { "properties": { "status": { "description": "Final status of Enrollment process.", "type": "string", "format": "alphabets[a-zA-Z]", "enum": [ "APPROVED", "UNDER CITI REVIEW", "DECLINED" ] }, "description": { "description": "Description of final status after performing customer screening.", "type": "string", "format": "alphabets[a-zA-Z]" } } }, "ValidationErrorResponseDetails": { "properties": { "vcaRequestId": { "description": "Unique reference Id generated by Citi for MASTER network.", "type": "string", "format": "alphanumeric [a-zA-Z0-9-]", "maxLength": 20 }, "vcaGuid": { "description": "Unique Id to refer Virtual Card Account.", "type": "integer", "format": "int64", "maxLength": 19, "minLength": 1 }, "cardDataErrors": { "type": "array", "items": { "$ref": "#/$defs/EnrollErrorMessage" } }, "userId": { "description": "Unique ID to be generated & sent by Citi clients to identify user profile.", "type": "string", "format": "alphanumeric [a-zA-Z0-9//s]", "maxLength": 20, "minLength": 1 }, "userDataErrors": { "type": "array", "items": { "$ref": "#/$defs/EnrollErrorMessage" } } } } } }