swagger: '2.0'
info:
description: "EVA Employment Verification API validates whether a Client (loan/credit applicant) with formal employment in the private sector has kept his job. It allows to know the industry of the Client employer and gives a risk indicator for that industry (low, medium or high). In the event that the Client does not have formal employment in the private sector, EVA Employment Verification API provides the last date of termination.

"
version: '1.0.0'
title: 'EVA Employment Verification API - Sandbox'
termsOfService: 'https://developer.circulodecredito.com.mx/legal-mx'
contact:
email: 'api@circulodecredito.com.mx'
host: 'services.circulodecredito.com.mx'
basePath: '/sandbox'
tags:
- name: 'EVA Employment Verification API'
externalDocs:
description: 'API Hub'
url: 'https://developer.circulodecredito.com.mx/en/products/eva'
- name: 'EVA Employment Verification API ISSSTE'
externalDocs:
description: 'API Hub'
url: 'https://developer.circulodecredito.com.mx/en/products/eva'
schemes:
- 'https'
parameters:
x-api-key:
in: 'header'
name: 'x-api-key'
description: 'The Consumer Key assigned to the application you have registered in API Hub.'
required: true
type: 'string'
inquiryId:
in: 'path'
name: 'inquiryId'
description: 'The identifier of the inquiry.'
required: true
type: 'string'
page:
in: 'query'
name: 'page'
description: 'Page to query.'
required: false
type: 'integer'
perPage:
in: 'query'
name: 'perPage'
description: 'Rows per page.'
required: false
type: 'integer'
startAt:
in: 'query'
name: 'startAt'
description: 'Initial date. As defined by date-time - RFC3339.'
required: false
type: 'string'
format: 'date-time'
endAt:
in: 'query'
name: 'endAt'
description: 'End date. As defined by date-time - RFC3339.'
required: false
type: 'string'
format: 'date-time'
inquiryStatus:
in: 'query'
name: 'inquiryStatus'
description: 'Inquiry status.'
enum: ["RI", "SN", "DN", "NDN", "CI"]
required: false
type: 'string'
successCheck:
in: 'query'
name: 'successCheck'
description: 'Inquiry process result.'
required: false
type: 'boolean'
paths:
'/v1/eva/employmentverifications/{inquiryId}':
parameters:
- $ref: '#/parameters/x-api-key'
- $ref: '#/parameters/inquiryId'
get:
summary: 'Returns the employment verification process payload.'
description: 'Returns the employment verification process payload associated with the inquiry. The inquiry is identified by the {inquiryId} path parameter.
Remember the inquiry status of every employment verification process gives you more information about the process stage.
Inquiry Status
Received Inquiry | RI | Círculo de Crédito has received the employment verification inquiry. Círculo de Crédito will begin processing it as soon as possible. |
Sending Notification | SN | Círculo de Crédito has processed the inquiry. Círculo de Crédito is sending the Webhook event notification through the API Hub. |
Delivered Notification | DN | Círculo de Crédito has finished the processing of the inquiry. Círculo de Crédito sent the notification to the Webhook API through API Hub and it received the respective acknowledge. |
Not Delivered Notification | NDN | Círculo de Crédito has completed the processing of the inquiry. Círculo de Crédito tried to send the notification to the Webhook API on several times, however, it never got the acknowledge. |
Consumed Inquiry | CI | You have consumed the response payload associated with the inquiry regardless of the outcome of the notification process. |
Expired Inquiry | EI | The inquiry and the associated result have been archived. Only inquiries that have been made in the last 30 days will be shown. The inquiries that have the EI status are not showing. |
When you create a subscription in the Sandbox environment for listening to the "employmentcheck" event, we create some inquiries in order you could test this method.
You could get the payload from different inquiries in different employment verification process stages (Inquiry Status).
Sandbox Use Cases
Use case | Inquiry Status | InquiryId |
---|
The employment verification process associated with the {inquiryId} path parameter has not yet been completed. The request does not include NSS (Social Security Number). | RI | 629d85a8-9dd2-4433-bec9-eb17ee6441dc |
The employment verification process associated with the {inquiryId} path parameter has not yet been completed. The request includes NSS (Social Security Number). | RI | 2423c91d-be5d-4092-9348-952597ca2849 |
The output of the employment verification process associated with the {inquiryId} has been consumed. The request does not include NSS (Social Security Number). | CI | a3d7e85f-1578-4713-8190-1a20691d549d |
The output of the employment verification process associated with the {inquiryId} has been consumed. The request includes NSS (Social Security Number). | CI | ad59e561-f759-4312-8af6-13f43d9fd936 |
'
tags:
- 'EVA Employment Verification API'
operationId: 'getEmploymentVerification'
consumes:
- 'application/json'
produces:
- 'application/json'
responses:
'200':
description: 'OK - Returns the employment verification process information.'
schema:
$ref: '#/definitions/AckSuccessEVConsumption'
'400':
description: 'Bad request.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "400"
message: "Missign parameters {x-api-key}."
'401':
description: 'Unauthorized.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: '401.1'
message: 'Unauthorized, invalid x-api-key.'
- code: '401.2'
message: 'Unauthorized, invalid credentials.'
- code: '401.3'
message: 'Unauthorized, you do not have the product.'
- code: '401.4'
message: 'Unauthorized, you do not have access to the resource.'
'404':
description: 'Inquiry not found.'
schema:
$ref: '#/definitions/AckFailureEVConsumption'
examples:
application/json:
acknowledgeId: 45f53c81-04e0-42df-abd8-de217e2edf2a
dateTime: '2020-09-01T03:36:38Z'
operation: consume
message: The request has been consumed.
employmentVerification:
errors:
- code: '400'
message: The inquiry does not exist.
- code: '404.1'
message: The data in the IMSS database have inconsistencies.
- code: '404.2'
message: The email is already associated with another CURP.
- code: '404.3'
message: The person does not have NSS.
- code: '404.4'
message: The CURP was not found in the external entity (RENAPO)."
request:
employmentVerificationRequestId: 23fa2ec7-3294-4aa4-ba65-a0f49a75bfc4
subscriptionId: 51752e30-eab2-4368-a4eb-ce5a34d90f04
inquiryId: a99c3501-7b3a-4b3e-8ca5-1e48225b8176
curp: PUPJ970229HDFZZG61
email: api61@circulodecredito.com.mx
inquiryStatus: DN
successCheck: false
'410':
description: 'Gone - The maximum time in order to obtain the payload has expired: 30 days.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "410"
message: "The maximum time in order to obtain the payload has expired."
'425':
description: 'Too early - The employment verification process associated with the {inquiryId} path parameter has not yet been completed.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "425"
message: "The employment verification process associated with the {inquiryId} path parameter has not yet been completed."
'429':
description: 'Too many requests.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "429"
message: "Too many requests."
'500':
description: "Internal server error."
schema:
$ref: '#/definitions/AckFailureEVConsumption'
examples:
application/json:
acknowledgeId: 6a2224ec-1e48-4bbd-ba2c-1971dd783735
dateTime: '2020-09-01T05:32:41Z'
operation: consume
message: The request has been consumed.
employmentVerification:
errors:
- code: "500"
message: "There was an unexpected error, try again later."
- code: '500.1'
message: "The request could not be processed."
request:
employmentVerificationRequestId: d029a1ba-3566-4361-834a-f44add8cc4f7
subscriptionId: 51752e30-eab2-4368-a4eb-ce5a34d90f04
inquiryId: 43d21139-e1fa-4768-8b78-79aa3ca1993f
curp: PUPJ970229HDFZZG70
email: api70@circulodecredito.com.mx
inquiryStatus: RI
successCheck: false
'503':
description: "Service unavailable."
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "503"
message: "Service unavailable."
'/v1/eva/employmentverifications':
parameters:
- $ref: '#/parameters/x-api-key'
get:
summary: 'Returns the list of employment verification processes you have requested.'
description: 'Returns the list of employment verification processes you have requested. You could filter the rows by date using the {startAt} and {endAt} parameters. You could filter the rows by inquiry status using the {inquiryStatus} parameter and the process result using the {sucessCheck} parameter. The maximum number of returned rows is 20. You could use the {page} and {perPage} parameters in order to navigate through the list.'
tags:
- 'EVA Employment Verification API'
operationId: 'getEmploymentVerifications'
consumes:
- 'application/json'
produces:
- 'application/json'
parameters:
- $ref: '#/parameters/page'
- $ref: '#/parameters/perPage'
- $ref: '#/parameters/startAt'
- $ref: '#/parameters/endAt'
- $ref: '#/parameters/inquiryStatus'
- $ref: '#/parameters/successCheck'
responses:
'200':
description: 'OK - Returns an employment verification processes list.'
schema:
$ref: '#/definitions/EmploymentVerificationMetadata'
'400':
description: 'Bad request.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "400"
message: "Missign parameters {x-api-key}."
'401':
description: 'Unauthorized.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: '401.1'
message: 'Unauthorized, invalid x-api-key.'
- code: '401.2'
message: 'Unauthorized, invalid credentials.'
- code: '401.3'
message: 'Unauthorized, you do not have the product.'
- code: '401.4'
message: 'Unauthorized, you do not have access to the resource.'
'404':
description: 'Not found.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "404"
message: "Page not found."
'429':
description: 'Too many requests.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "429"
message: "Too many requests."
'500':
description: "Internal server error."
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "500"
message: "There was an unexpected error, try again later."
'503':
description: "Service unavailable."
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "503"
message: "Service unavailable."
'/v1/eva/employmentverifications/withPrivacyNotice':
post:
summary: 'Requests a person employment verification process.'
description: 'Requests a person employment verification process.
The Sandbox environment has several use cases you can use to prototype your app. In this document we only show some of them. Please go to https://developer.circulodecredito.com.mx/en/products/eva and download the Postman Collection with the complete data set.
Note: Replace the field ${subscriptionId} with your subscription, likewise replace ${employmentVerificationRequestId} with an unique UUID.
Sandbox Use Cases
Use case number | Description | JSON request |
---|
41 | The Client (loan/credit applicant) has a formal employment in the private sector. The employer Industry Risk Segment is Low. | {"curp": "PUPJ970229HDFZZG39", "email": "api39@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}", "subscriptionId": "${subscriptionId}"} |
42 | The Client (loan/credit applicant) has a formal employment. The employer Industry Risk Segment is Medium. | {"curp": "PUPJ970229HDFZZG40", "email": "api40@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}", "subscriptionId": "${subscriptionId}"} |
43 | The Client (loan/credit applicant) has a formal employment. The employer Industry Risk Segment is High. | {"curp": "PUPJ970229HDFZZG41", "email": "api41@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}", "subscriptionId": "${subscriptionId}"} |
57 | The Client (loan/credit applicant) does not have a formal employment in the private sector. | {"curp": "PUPJ970229HDFZZG57", "email": "api57@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId} |
'
tags:
- 'EVA Employment Verification API'
operationId: 'employmentverificationsWithPrivacyNotice'
consumes:
- 'application/json'
produces:
- 'application/json'
parameters:
- $ref: '#/parameters/x-api-key'
- in: 'body'
name: 'request'
description: 'Input parameters in order to start a employment verification process.'
required: true
schema:
$ref: '#/definitions/EmploymentVerificationWithPrivacyNotice'
responses:
'200':
description: 'OK - Returns an employment verification request acknowledge.'
schema:
$ref: '#/definitions/AckEVRequest'
'400':
description: 'Bad request.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "400"
message: "Missign parameters {employmentVerificationRequestId, subscriptionId, curp, email}"
'401':
description: 'Unauthorized.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: '401.1'
message: 'Unauthorized, invalid x-api-key.'
- code: '401.2'
message: 'Unauthorized, invalid credentials.'
- code: '401.3'
message: 'Unauthorized, you do not have the product.'
- code: '401.4'
message: 'Unauthorized, you do not have access to the resource.'
'403':
description: 'Forbidden.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: '403.1'
message: 'We could not verify the signature, x-signature is invalid.'
'429':
description: 'Too many requests.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "429"
message: "Too many requests."
'500':
description: "Internal server error."
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "500"
message: "There was an unexpected error, try again later."
'503':
description: "Service unavailable."
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "503"
message: "Service unavailable."
'/v1/eva/employmentverifications/withAuthorization':
post:
summary: 'Requests a person employment verification process.'
description: 'Requests a person employment verification process.
The Sandbox environment has several use cases you can use to prototype your app. In this document we only show some of them. Please go to https://developer.circulodecredito.com.mx/en/products/eva and download the Postman Collection with the complete data set.
Note: Replace the field ${subscriptionId} with your subscription, likewise replace ${employmentVerificationRequestId} with an unique UUID.
Sandbox Use Cases
Use case number | Description | JSON request |
---|
41 | The Client (loan/credit applicant) has a formal employment in the private sector. The employer Industry Risk Segment is Low. | {"curp": "PUPJ970229HDFZZG39", "email": "api39@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}", "subscriptionId": "${subscriptionId}"} |
42 | The Client (loan/credit applicant) has a formal employment. The employer Industry Risk Segment is Medium. | {"curp": "PUPJ970229HDFZZG40", "email": "api40@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}", "subscriptionId": "${subscriptionId}"} |
43 | The Client (loan/credit applicant) has a formal employment. The employer Industry Risk Segment is High. | {"curp": "PUPJ970229HDFZZG41", "email": "api41@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}", "subscriptionId": "${subscriptionId}"} |
57 | The Client (loan/credit applicant) does not have a formal employment in the private sector. | {"curp": "PUPJ970229HDFZZG57", "email": "api57@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId} |
'
tags:
- 'EVA Employment Verification API'
operationId: 'postEmploymentVerification'
consumes:
- 'application/json'
produces:
- 'application/json'
parameters:
- $ref: '#/parameters/x-api-key'
- in: 'body'
name: 'request'
description: 'Input parameters in order to start a employment verification process.'
required: true
schema:
$ref: '#/definitions/EmploymentVerification'
responses:
'200':
description: 'OK - Returns an employment verification request acknowledge.'
schema:
$ref: '#/definitions/AckEVRequest'
'400':
description: 'Bad request.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "400"
message: "Missign parameters {employmentVerificationRequestId, subscriptionId, curp, email}"
'401':
description: 'Unauthorized.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: '401.1'
message: 'Unauthorized, invalid x-api-key.'
- code: '401.2'
message: 'Unauthorized, invalid credentials.'
- code: '401.3'
message: 'Unauthorized, you do not have the product.'
- code: '401.4'
message: 'Unauthorized, you do not have access to the resource.'
'403':
description: 'Forbidden.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: '403.1'
message: 'We could not verify the signature, x-signature is invalid.'
'429':
description: 'Too many requests.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "429"
message: "Too many requests."
'500':
description: "Internal server error."
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "500"
message: "There was an unexpected error, try again later."
'503':
description: "Service unavailable."
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "503"
message: "Service unavailable."
'/v2/eva/employmentverifications/{inquiryId}':
parameters:
- $ref: '#/parameters/x-api-key'
- $ref: '#/parameters/inquiryId'
get:
summary: 'Returns the employment verification process payload.'
description: 'Returns the employment verification process payload associated with the inquiry. The inquiry is identified by the {inquiryId} path parameter.
Remember the inquiry status of every employment verification process gives you more information about the process stage.
Inquiry Status
Received Inquiry | RI | Círculo de Crédito has received the employment verification inquiry. Círculo de Crédito will begin processing it as soon as possible. |
Sending Notification | SN | Círculo de Crédito has processed the inquiry. Círculo de Crédito is sending the Webhook event notification through the API Hub. |
Delivered Notification | DN | Círculo de Crédito has finished the processing of the inquiry. Círculo de Crédito sent the notification to the Webhook API through API Hub and it received the respective acknowledge. |
Not Delivered Notification | NDN | Círculo de Crédito has completed the processing of the inquiry. Círculo de Crédito tried to send the notification to the Webhook API on several times, however, it never got the acknowledge. |
Consumed Inquiry | CI | You have consumed the response payload associated with the inquiry regardless of the outcome of the notification process. |
Expired Inquiry | EI | The inquiry and the associated result have been archived. Only inquiries that have been made in the last 30 days will be shown. The inquiries that have the EI status are not showing. |
When you create a subscription in the Sandbox environment for listening to the "employmentcheck" event, we create some inquiries in order you could test this method.
You could get the payload from different inquiries in different employment verification process stages (Inquiry Status).
Sandbox Use Cases
Use case | Inquiry Status | InquiryId |
---|
The employment verification process associated with the {inquiryId} path parameter has not yet been completed. The request does not include NSS (Social Security Number). | RI | 629d85a8-9dd2-4433-bec9-eb17ee6441dc |
The employment verification process associated with the {inquiryId} path parameter has not yet been completed. The request includes NSS (Social Security Number). | RI | 2423c91d-be5d-4092-9348-952597ca2849 |
The output of the employment verification process associated with the {inquiryId} has been consumed. The request does not include NSS (Social Security Number). | CI | a3d7e85f-1578-4713-8190-1a20691d549d |
The output of the employment verification process associated with the {inquiryId} has been consumed. The request includes NSS (Social Security Number). | CI | ad59e561-f759-4312-8af6-13f43d9fd936 |
'
tags:
- 'EVA Employment Verification API ISSSTE'
operationId: 'getEmploymentVerificationIss'
consumes:
- 'application/json'
produces:
- 'application/json'
responses:
'200':
description: 'OK - Returns the employment verification process information.'
schema:
$ref: '#/definitions/AckSuccessEVConsumptionISSSTE'
'400':
description: 'Bad request.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "400"
message: "Missign parameters {x-api-key}."
'401':
description: 'Unauthorized.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: '401.1'
message: 'Unauthorized, invalid x-api-key.'
- code: '401.2'
message: 'Unauthorized, invalid credentials.'
- code: '401.3'
message: 'Unauthorized, you do not have the product.'
- code: '401.4'
message: 'Unauthorized, you do not have access to the resource.'
'404':
description: 'Inquiry not found.'
schema:
$ref: '#/definitions/AckFailureEVConsumption'
examples:
application/json:
acknowledgeId: 45f53c81-04e0-42df-abd8-de217e2edf2a
dateTime: '2020-09-01T03:36:38Z'
operation: consume
message: The request has been consumed.
employmentVerification:
errors:
- code: '400'
message: The inquiry does not exist.
- code: '404.1'
message: The data in the IMSS database have inconsistencies.
- code: '404.2'
message: The email is already associated with another CURP.
- code: '404.3'
message: The person does not have NSS.
- code: '404.4'
message: The CURP was not found in the external entity (RENAPO)."
request:
employmentVerificationRequestId: 23fa2ec7-3294-4aa4-ba65-a0f49a75bfc4
subscriptionId: 51752e30-eab2-4368-a4eb-ce5a34d90f04
inquiryId: a99c3501-7b3a-4b3e-8ca5-1e48225b8176
curp: PUPJ970229HDFZZG61
email: api61@circulodecredito.com.mx
inquiryStatus: DN
successCheck: false
'410':
description: 'Gone - The maximum time in order to obtain the payload has expired: 30 days.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "410"
message: "The maximum time in order to obtain the payload has expired."
'425':
description: 'Too early - The employment verification process associated with the {inquiryId} path parameter has not yet been completed.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "425"
message: "The employment verification process associated with the {inquiryId} path parameter has not yet been completed."
'429':
description: 'Too many requests.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "429"
message: "Too many requests."
'500':
description: "Internal server error."
schema:
$ref: '#/definitions/AckFailureEVConsumption'
examples:
application/json:
acknowledgeId: 6a2224ec-1e48-4bbd-ba2c-1971dd783735
dateTime: '2020-09-01T05:32:41Z'
operation: consume
message: The request has been consumed.
employmentVerification:
errors:
- code: "500"
message: "There was an unexpected error, try again later."
- code: '500.1'
message: "The request could not be processed."
request:
employmentVerificationRequestId: d029a1ba-3566-4361-834a-f44add8cc4f7
subscriptionId: 51752e30-eab2-4368-a4eb-ce5a34d90f04
inquiryId: 43d21139-e1fa-4768-8b78-79aa3ca1993f
curp: PUPJ970229HDFZZG70
email: api70@circulodecredito.com.mx
inquiryStatus: RI
successCheck: false
'503':
description: "Service unavailable."
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "503"
message: "Service unavailable."
'/v2/eva/employmentverifications/withPrivacyNotice':
post:
summary: 'Requests a person employment verification process.'
description: 'Requests a person employment verification process.
The Sandbox environment has several use cases you can use to prototype your app. In this document we only show some of them. Please go to https://developer.circulodecredito.com.mx/en/products/eva and download the Postman Collection with the complete data set.
Note: Replace the field ${subscriptionId} with your subscription, likewise replace ${employmentVerificationRequestId} with an unique UUID.
Sandbox Use Cases
Use case number | Description | JSON request |
---|
41 | The Client (loan/credit applicant) has a formal employment in the private sector. The employer Industry Risk Segment is Low. | {"curp": "PUPJ970229HDFZZG39", "email": "api39@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}", "subscriptionId": "${subscriptionId}"} |
42 | The Client (loan/credit applicant) has a formal employment. The employer Industry Risk Segment is Medium. | {"curp": "PUPJ970229HDFZZG40", "email": "api40@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}", "subscriptionId": "${subscriptionId}"} |
43 | The Client (loan/credit applicant) has a formal employment. The employer Industry Risk Segment is High. | {"curp": "PUPJ970229HDFZZG41", "email": "api41@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId}", "subscriptionId": "${subscriptionId}"} |
57 | The Client (loan/credit applicant) does not have a formal employment in the private sector. | {"curp": "PUPJ970229HDFZZG57", "email": "api57@circulodecredito.com.mx", "employmentVerificationRequestId": "${employmentVerificationRequestId} |
'
tags:
- 'EVA Employment Verification API ISSSTE'
operationId: 'employmentverificationsWithPrivacyNoticeIss'
consumes:
- 'application/json'
produces:
- 'application/json'
parameters:
- $ref: '#/parameters/x-api-key'
- in: 'body'
name: 'request'
description: 'Input parameters in order to start a employment verification process.'
required: true
schema:
$ref: '#/definitions/EmploymentVerificationWithPrivacyNotice'
responses:
'200':
description: 'OK - Returns an employment verification request acknowledge.'
schema:
$ref: '#/definitions/AckEVRequest'
'400':
description: 'Bad request.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "400"
message: "Missign parameters {employmentVerificationRequestId, subscriptionId, curp, email}"
'401':
description: 'Unauthorized.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: '401.1'
message: 'Unauthorized, invalid x-api-key.'
- code: '401.2'
message: 'Unauthorized, invalid credentials.'
- code: '401.3'
message: 'Unauthorized, you do not have the product.'
- code: '401.4'
message: 'Unauthorized, you do not have access to the resource.'
'403':
description: 'Forbidden.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: '403.1'
message: 'We could not verify the signature, x-signature is invalid.'
'429':
description: 'Too many requests.'
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "429"
message: "Too many requests."
'500':
description: "Internal server error."
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "500"
message: "There was an unexpected error, try again later."
'503':
description: "Service unavailable."
schema:
$ref: '#/definitions/Errors'
examples:
application/json:
errors:
- code: "503"
message: "Service unavailable."
definitions:
AckSuccessEVConsumptionISSSTE:
title: AckSuccessEVConsumptionISSSTE
description: Acknowledge of a successful employment verification process ISSSTE.
allOf:
- $ref: '#/definitions/AckEmploymentVerification'
- type: object
properties:
employmentVerification:
type: object
allOf:
- $ref: '#/definitions/SuccessEVConsumptionISSSTE'
- description: Information about a successful employment verification process.
SuccessEVConsumptionISSSTE:
title: SuccessEVConsumptionISSSTE
description: Information about a successful employment verification process.
type: object
properties:
curp:
description: CURP (loan/credit applicant MX Id).
example: DISG521217
readOnly: true
type: string
request:
type: object
allOf:
- $ref: '#/definitions/EmploymentVerification'
- description: Employment verification information
names:
description: Concatenation of firstname and surname.
example: MARIA GUADALUPE DIAZ SANCHEZ
readOnly: true
type: string
rfc:
description: RFC (loan/credit applicant MX Id).
example: DISG521217
readOnly: true
type: string
gender:
type: object
allOf:
- $ref: '#/definitions/Gender'
- description: Gender with which the person registered.
example: MUJER
readOnly: true
birthday:
description: Birthday. As defined by full-date RFC3339.
example: 1829-04-01
readOnly: true
type: string
format: date
civilState:
type: object
allOf:
- $ref: '#/definitions/CivilState'
- description: Civil state
example: CASADO (A)
readOnly: true
nss:
example: '80995206994'
readOnly: true
type: string
startDateRLastPosition:
description: Last employment registration date. As defined by full-date RFC3339.
example: 2002-02-16
readOnly: true
type: string
format: date
dateEntryFederalGovernment:
description: Date of entry into the Federal Government. As defined by full-date RFC3339.
example: 1999-05-01
readOnly: true
type: string
format: date
endDateRLastPosition:
description: Last employment registration date. As defined by full-date RFC3339.
readOnly: true
type: string
format: date
accessMedicalService:
type: object
allOf:
- $ref: '#/definitions/AccessMedicalService'
- description: Work status.
readOnly: true
typeBeneficiary:
type: object
allOf:
- $ref: '#/definitions/TypeBeneficiary'
- example: TRABAJADOR
readOnly: true
affiliationStatus:
type: object
allOf:
- $ref: '#/definitions/AffiliationStatus'
- example: INACTIVO
readOnly: true
laborData:
description: Detail of the user’s working history
type: array
items:
$ref: '#/definitions/LaborDataDetail'
address:
$ref: '#/definitions/AddressDetail'
clinic:
$ref: '#/definitions/ClinicDetail'
status:
description: Status of the response
example: OK
readOnly: true
type: string
validationCode:
description: Unique validation execution code.
example: gi1621387427.1002612
readOnly: true
type: string
messageCode:
description: Message Code.
example: '0'
readOnly: true
type: string
CivilState:
title: CivilState
description: Civil state
example: CASADO (A)
type: string
enum:
- CASADO (A)
- SOLTERO (A)
- VIUDO (A)
- DIVORCIADO (A)
Gender:
title: Gender
description: Gender with which the person registered.
example: MUJER
type: string
enum:
- MUJER
- HOMBRE
InquiryStatus:
title: InquiryStatus
description: Inquiry status.
example: DN
type: string
enum:
- RI
- SN
- DN
- DND
- CI
inquiryStatus1:
title: inquiryStatus1
type: string
enum:
- RI
- SN
- DN
- NDN
- CI
Operation:
title: Operation
description: Employment verification operation.
example: request
type: string
enum:
- request
- consumption
Pensiontype:
title: Pensiontype
description: Type of pension.
example: BASE
type: string
enum:
- BASE
- LISTA DE RAYA
Type:
title: Type
description: Clinic type.
example: CAF
type: string
enum:
- CMF
- CH
- CAF
TypeBeneficiary:
title: TypeBeneficiary
example: TRABAJADOR
type: string
enum:
- TRABAJADOR
- PENSIONISTA
WorkStatus:
title: WorkStatus
description: Work status.
type: string
enum:
- W
- NW
AccessMedicalService:
title: AccessMedicalService
description: Work status.
type: string
enum:
- Y
- N
AffiliationStatus:
title: AffiliationStatus
example: INACTIVO
type: string
enum:
- ACTIVO
- INACTIVO
AddressDetail:
title: AddressDetail
type: object
properties:
street:
description: Address street.
example: PRIVADA DE ITALIA
type: string
outdoorNumber:
description: Outdoor number of Address.
example: '20'
type: string
interiorNumber:
description: Interior number of Address.
type: string
settlement:
description: Settlement.
example: LA LUZ
type: string
delegationMunicipality:
description: Delegation or municipality of Address.
example: CUAUTITLAN IZCALLI
type: string
state:
description: State of Address.
example: MEXICO
type: string
postalCode:
description: Postal Code of Address.
example: '54716'
type: string
ClinicDetail:
title: ClinicDetail
type: object
properties:
key:
description: Clinic key.
example: '1521600'
type: string
type:
type: object
allOf:
- $ref: '#/definitions/Type'
- description: Clinic type.
example: CAF
name:
description: Name of clinic.
example: CUAUTITLAN IZCALLI
type: string
address:
description: Address of clinic.
example: CALLE DE LOS OCEANOS Nº 3, ATLANTA
type: string
isssteDelegation:
description: ISSSTE clinic delegation.
example: DELEGACION ESTATAL EN EL ESTADO DE MEXICO
type: string
LaborDataDetail:
title: LaborDataDetail
type: object
properties:
branch:
description: Dependency Branch.
example: COMISION NACIONAL DEL AGUA (CONAGUA)
type: string
payment:
description: Dependency Payment.
example: (CONAGUA)
type: string
pensiontype:
type: object
allOf:
- $ref: '#/definitions/Pensiontype'
- description: Type of pension.
example: BASE
startDate:
description: Date of discharge in the Dependency. Format yyyy-mm-dd
type: string
format: date
quotedBaseSalary:
description: Person’s last salary subject of tax contribution. In cents
type: integer
format: int32
totalRemuneration:
description: Person’s last salary subject of tax contribution. In cents
type: integer
format: int32
modality:
description: Service modality
type: string
PrivacyNotice:
description: 'The privacy notice the Customer must accept.'
type: 'object'
required:
- 'fullName'
- 'acceptanceDate'
- 'acceptance'
- 'address'
properties:
fullName:
$ref: '#/definitions/FullName'
address:
$ref: '#/definitions/Address'
acceptanceDate:
type: 'string'
format: 'date-time'
description: 'Date and time of the privacy notice acceptance. As defined by date-time - RFC3339.'
example: '2020-04-12T22:20:50.52Z'
acceptance:
type: 'string'
description: 'Y if the Customer has accepted the privacy notice otherwise these field must be N.'
minLength: 1
maxLength: 1
enum:
- 'Y'
- 'N'
FullName:
type: 'object'
required:
- 'firstName'
- 'firstSurname'
- 'secondSurname'
properties:
firstName:
type: 'string'
description: 'Firstname (Nombre).'
minLength: 0
maxLength: 50
example: 'ROBERTO'
middleName:
type: 'string'
description: 'Middlename (segundo nombre).'
minLength: 0
maxLength: 50
firstSurname:
type: 'string'
description: 'First surname (apellido paterno).'
minLength: 0
maxLength: 30
example: 'SAHAGUN'
secondSurname:
type: 'string'
description: 'Second surname (apellido materno).'
minLength: 0
maxLength: 30
example: 'ZARAGOZA'
aditionalSurname:
type: 'string'
description: 'Additional surname (apellido adicional)'
minLength: 0
maxLength: 30
Address:
type: 'object'
description: 'Customer address.'
required:
- 'streetAndNumber'
- 'city'
- 'postalCode'
- 'state'
- 'county'
- 'settlement'
properties:
streetAndNumber:
type: 'string'
description: 'Street name and street number (calle y número).'
minLength: 0
maxLength: 85
example: 'HIDALGO 32'
settlement:
type: 'string'
description: 'Settlement (colonia).'
minLength: 0
maxLength: 65
example: 'CENTRO'
county:
type: 'string'
description: 'County (municipio).'
minLength: 0
maxLength: 65
example: 'LA BARCA'
city:
type: 'string'
description: 'City (ciudad).'
minLength: 0
maxLength: 65
example: 'BENITO JUAREZ'
state:
$ref: '#/definitions/StateCatalog'
postalCode:
type: 'string'
description: 'Postal code (código postal).'
minLength: 5
maxLength: 5
example: '47917'
StateCatalog:
type: 'string'
description: 'State (Estado)Identifier | Name |
---|
AGS | AGUASCALIENTES |
BC | BAJA CALIFORNIA NORTE |
BCS | BAJA CALIFORNIA SUR |
CAMP | CAMPECHE |
CDMX | CIUDAD DE MÉXICO |
CHIS | CHIAPAS |
CHIH | CHIHUAHUA |
COAH | COHAHUILA |
COL | COLIMA |
DF | DISTRITO FEDERAL |
DGO | DURANGO |
GTO | GUANAJUATO |
GRO | GUERRERO |
HGO | HIDALGO |
JAL | JALISCO |
MEX | MÉXICO |
MICH | MICHOCÁN |
MOR | MORELOS |
NAY | NAYARIT |
NL | NUEVO LEÓN |
OAX | OXACA |
PUE | PUEBLA |
QRO | QUERÉTARO |
QROO | QUINTANA ROO |
SLP | SAN LUIS POTOSÍ |
SIN | SINALOA |
SON | SONORA |
TAB | TABASCO |
TAMP | TAMAULIPAS |
TLAX | TLAXCALA |
VER | VERACRUZ |
YUC | YUCATÁN |
ZAC | ZACATECAS |
'
minLength: 0
maxLength: 4
example: 'JAL'
enum:
- 'AGS'
- 'BC'
- 'BCS'
- 'CAMP'
- 'COAH'
- 'COL'
- 'CHIS'
- 'CHIH'
- 'DF'
- 'CDMX'
- 'DGO'
- 'GTO'
- 'GRO'
- 'HGO'
- 'JAL'
- 'MEX'
- 'MICH'
- 'MOR'
- 'NAY'
- 'NL'
- 'OAX'
- 'PUE'
- 'QRO'
- 'QROO'
- 'SLP'
- 'SIN'
- 'SON'
- 'TAB'
- 'TAMP'
- 'TLAX'
- 'VER'
- 'YUC'
- 'ZAC'
EmploymentVerificationWithPrivacyNotice:
description: 'Employment verification information. It must include the the privacy notice customer acceptance.'
type: 'object'
required:
- 'privacyNotice'
- 'employmentVerification'
properties:
privacyNotice:
$ref: '#/definitions/PrivacyNotice'
employmentVerification:
$ref: '#/definitions/EmploymentVerification'
EmploymentVerificationId:
description: 'Identifier of the employment verification process.'
type: 'object'
properties:
employmentVerificationRequestId:
type: 'string'
format: 'uuid'
minLength: 36
maxLength: 36
description: 'The identifier of the employment verification request given by the API consumer (UUID).'
example: '391d151f-1cac-44e7-a05b-79a1199621d6'
subscriptionId:
type: 'string'
format: 'uuid'
minLength: 36
maxLength: 36
description: 'The API Hub event subscription identifier (UUID).'
example: '7c8a0230-36e0-43f4-9b7a-581dc55ea9c3'
inquiryId:
type: 'string'
format: 'uuid'
minLength: 36
maxLength: 36
description: 'The employment verification process identifier given by Círculo de Crédito.'
example: 'a19fb6b8-2677-44f2-9cd7-3b2f78bb6f8c'
readOnly: true
EmploymentVerification:
description: 'Employment verification information'
type: 'object'
allOf:
- $ref: '#/definitions/EmploymentVerificationId'
required:
- 'employmentVerificationRequestId'
- 'subscriptionId'
- 'curp'
- 'email'
properties:
curp:
type: 'string'
minLength: 18
maxLength: 18
description: 'CURP (loan/credit applicant MX Id).'
example: 'BADD110313HCMLNS09'
nss:
description: 'Social Security Number for its initials in Spanish (NSS)'
type: 'string'
minLength: 11
maxLength: 11
example: '92919084431'
email:
type: 'string'
minLength: 3
maxLength: 80
description: 'email'
example: 'api@circulodecredito.com.mx'
format: 'email'
inquiryStatus:
type: 'string'
description: 'Inquiry status.'
enum: ["RI", "SN", "DN", "DND", "CI"]
example: 'DN'
readOnly: true
successCheck:
description: 'It is true if the employment verification process ended successfully.'
type: 'boolean'
example: true
readOnly: true
dataProvider:
description: The employment verification process identifier given by Círculo de Crédito.
example: ISS
type: string
minLength: 3
maxLength: 3
EmploymentVerifications:
description: 'A list of employment verification processes.'
type: 'array'
items:
$ref: '#/definitions/EmploymentVerification'
EmploymentVerificationMetadata:
description: 'Metadata (paging information) of the list of employment verification processes.'
type: 'object'
properties:
_metadata:
$ref: '#/definitions/Metadata'
inquiries:
$ref: '#/definitions/EmploymentVerifications'
CatalogIndustry:
description: 'Industry |
---|
GOVERNMENT |
AGROPECUARY |
WHOLESALE |
RETAIL |
CONSTRUCTION |
MEDIA |
MINERY |
MANUFACTURING |
ENERGY |
OTHER NON GOVERNMENTAL SERVICES |
HOSPITALITY |
RESTAURANTS |
CULTURE & LEISURE |
HEALTH |
EDUCATION |
FINANCIAL SERVICES |
REAL ESTATE |
PROFESSIONAL, SCIENTIFIC & TECHNICAL SERVICES |
CARGO |
TRANSPORT |
'
example: 'GOVERNMENT'
enum:
- 'GOVERNMENT'
- 'AGROPECUARY'
- 'WHOLESALE'
- 'RETAIL'
- 'CONSTRUCTION'
- 'MEDIA'
- 'MINERY'
- 'MANUFACTURING'
- 'ENERGY'
- 'OTHER NON GOVERNMENTAL SERVICES'
- 'HOSPITALITY'
- 'RESTAURANTS'
- 'CULTURE & LEISURE'
- 'HEALTH'
- 'EDUCATION'
- 'FINANCIAL SERVICES'
- 'REAL ESTATE'
- 'PROFESSIONAL, SCIENTIFIC & TECHNICAL SERVICES'
- 'CARGO'
- 'TRANSPORT'
SuccessEVConsumption:
description: 'Information about a successful employment verification process.'
type: 'object'
properties:
request:
$ref: '#/definitions/EmploymentVerification'
names:
description: 'Concatenation of firstname and surname.'
type: 'string'
example: 'VICENTE RAMON GUERRERO SALDAÑA'
readOnly: true
birthday:
description: 'Birthday. As defined by full-date RFC3339.'
type: 'string'
format: 'date'
readOnly: true
example: '1829-04-01'
workStatus:
description: 'Work status.'
type: 'string'
enum: ['W', 'NW']
readOnly: true
validUntil:
description: 'Date until the worker will have protection from, and contributions to, social security. If date is 3000-01-01 or null, the person is currently working. As defined by full-date RFC3339.'
type: 'string'
format: 'date'
readOnly: true
example: '1829-04-01'
industry:
$ref: '#/definitions/CatalogIndustry'
industryRiskSegment:
description: 'Industry Risk Segment.Value | Description |
---|
H | High |
M | Medium |
L | Low |
'
type: 'string'
enum: ['H', 'M', 'L']
example: 'M'
readOnly: true
nssCheck:
description: 'True if the nss field sent in the request is the same one that we obtained through the employment verification process.'
type: 'boolean'
readOnly: true
example: true
FailureEVConsumption:
description: 'Information about a failed employment verification process.'
type: 'object'
properties:
request:
$ref: '#/definitions/EmploymentVerification'
errors:
description: 'List of errors.'
type: 'array'
items:
$ref: '#/definitions/Error'
AckEmploymentVerification:
properties:
acknowledgeId:
type: 'string'
format: 'uuid'
minLength: 36
maxLength: 36
description: 'Ackknowledge identifier (UUID).'
readOnly: true
example: '627aa72a-c799-4abf-b98e-0c4838af9bd5'
dateTime:
type: 'string'
format: 'date-time'
readOnly: true
description: 'Date and time of the acknowledge. As defined by date-time - RFC3339.'
example: '2020-04-12T22:20:50.52Z'
operation:
description: 'Employment verification operation.'
type: 'string'
enum:
- 'request'
- 'consumption'
readOnly: true
example: 'request'
message:
type: 'string'
maxLength: 120
description: 'Descriptive and human-readable message.'
readOnly: true
example: 'The employment verification request has been received.'
AckSuccessEVConsumption:
description: 'Acknowledge of a successful employment verification process.'
type: 'object'
allOf:
- $ref: '#/definitions/AckEmploymentVerification'
properties:
employmentVerification:
$ref: '#/definitions/SuccessEVConsumption'
AckFailureEVConsumption:
description: 'Acknowledge of an unsuccessful employment verification process.'
type: 'object'
allOf:
- $ref: '#/definitions/AckEmploymentVerification'
properties:
employmentVerification:
$ref: '#/definitions/FailureEVConsumption'
AckEVRequest:
description: 'Acknowledge of an employment verification process.'
type: 'object'
allOf:
- $ref: '#/definitions/AckEmploymentVerification'
- $ref: '#/definitions/EmploymentVerificationId'
Error:
type: 'object'
description: 'Error'
readOnly: true
properties:
code:
type: 'string'
description: 'Error code.'
example: '400'
message:
type: 'string'
maxLength: 120
description: 'Descriptive and human-readable error message.'
example: 'External data source not available.'
Errors:
description: 'A list of errors.'
type: 'object'
properties:
errors:
description: 'List of errors.'
type: 'array'
items:
$ref: '#/definitions/Error'
Metadata:
description: 'Pagination information.'
type: 'object'
properties:
page:
type: 'integer'
description: 'Current page.'
readOnly: true
example: 7
perPage:
type: 'integer'
description: 'Rows per page.'
readOnly: true
example: 15
pageCount:
type: 'integer'
description: 'Total number of pages.'
readOnly: true
example: 12
totalCount:
type: 'integer'
description: 'Total number of rows.'
readOnly: true
example: 175
links:
$ref: '#/definitions/Links'
Links:
description: 'Pagination information.'
type: 'object'
properties:
self:
description: 'URL of this page.'
type: 'string'
readOnly: true
example: 'https://services.circulodecredito.com.mx/sandbox/v1/eva/employmentverifications?page=7&perPage=15'
first:
description: 'URL of the first page.'
type: 'string'
readOnly: true
example: 'https://services.circulodecredito.com.mx/sandbox/v1/eva/employmentverifications?page=1&perPage=15'
previous:
description: 'URL of the previous page.'
type: 'string'
readOnly: true
example: 'https://services.circulodecredito.com.mx/sandbox/v1/eva/employmentverifications?page=6&perPage=15'
next:
description: 'URL of the next page.'
type: 'string'
readOnly: true
example: 'https://services.circulodecredito.com.mx/sandbox/v1/eva/employmentverifications?page=8&perPage=15'
last:
description: 'URL of the last page.'
type: 'string'
readOnly: true
example: 'https://services.circulodecredito.com.mx/sandbox/v1/eva/employmentverifications?page=12&perPage=15'