Skip to main content
POST
/
v1
/
credit-check
/
hard
Create Credit Check
curl --request POST \
  --url https://api.deepidv.com/v1/credit-check/hard
{
  "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "session_url": "https://verify.deepidv.com/credit-check-hard/a1b2c3d4-e5f6-7890-abcd-ef1234567890?oid=your-org-id",
  "type": "credit-check-hard",
  "externalId": "user-12345",
  "links": [
    {
      "rel": "admin_console",
      "href": "https://app.deepidv.com/dashboard/session/a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "description": "Click this link to view this session in your DeepIDV admin console"
    },
    {
      "rel": "session_details",
      "href": "https://api.deepidv.com/v1/sessions/a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "description": "Use this ref to fetch the session details"
    }
  ]
}
POST /v1/credit-check/hard
POST /v1/credit-check/soft
Creates a credit check session and sends email and SMS invitations to the applicant. Use the /hard endpoint for a full credit report with AI-powered insights, or /soft for a score-only check.

Request

Headers

HeaderRequiredDescription
x-api-keyYesYour API key
Content-TypeYesapplication/json

Body parameters

Both camelCase and snake_case parameter names are accepted. If both are provided for the same field, the camelCase value takes priority.
ParameterAliasTypeRequiredDescription
first_namefirstNamestringYesApplicant’s first name
last_namelastNamestringYesApplicant’s last name
emailβ€”stringYesApplicant’s email address
phoneβ€”stringYesApplicant’s phone number in E.164 format (e.g. +15192223333)
external_idexternalIdstringNoYour internal reference ID for this session
send_email_invitesendEmailInvitebooleanNoSend an email invitation to the applicant. Defaults to true
send_phone_invitesendPhoneInvitebooleanNoSend an SMS invitation to the applicant. Defaults to true
redirect_urlredirectUrlstringNoHTTPS URL to redirect the end-user to after the session ends. Must be a valid HTTPS URL
uatβ€”booleanNoPut the session into test mode. See Testing below
uat_typeuatTypestringNoThe credit scenario to simulate in test mode. See Testing below

Example request

curl -X POST https://api.deepidv.com/v1/credit-check/hard \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{
    "first_name": "John",
    "last_name": "Doe",
    "email": "john.doe@example.com",
    "phone": "+15192223333",
    "external_id": "user-12345"
  }'

Response

200 β€” Success

FieldTypeDescription
idstringUnique identifier for the created session
session_urlstringURL where the applicant completes the credit check
typestringSession type β€” credit-check-hard or credit-check-soft
externalIdstringYour external ID (only returned if provided in the request)
linksarrayConvenience links β€” admin console view and session details API reference

Error responses

StatusDescription
400 Bad RequestInvalid request body β€” check required fields and phone format
401 UnauthorizedMissing or invalid API key
402 Payment RequiredInsufficient token balance
429 Too Many RequestsRate limit exceeded
{
  "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "session_url": "https://verify.deepidv.com/credit-check-hard/a1b2c3d4-e5f6-7890-abcd-ef1234567890?oid=your-org-id",
  "type": "credit-check-hard",
  "externalId": "user-12345",
  "links": [
    {
      "rel": "admin_console",
      "href": "https://app.deepidv.com/dashboard/session/a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "description": "Click this link to view this session in your DeepIDV admin console"
    },
    {
      "rel": "session_details",
      "href": "https://api.deepidv.com/v1/sessions/a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "description": "Use this ref to fetch the session details"
    }
  ]
}

Testing

When building your integration, you can create a session in test mode so it runs against Equifax’s UAT environment using a pre-defined test persona instead of the real applicant’s data. To enable test mode, pass uat: true in the request body:
{
  "first_name": "John",
  "last_name": "Doe",
  "email": "john.doe@example.com",
  "phone": "+15192223333",
  "uat": true,
  "uat_type": "STANDARD_HIT"
}
In test mode, the applicant can enter any value for their SIN and address when completing the session β€” the real data is not used to query Equifax. The result is driven entirely by the uat_type scenario you specify.

uat_type values

Use uat_type to control which credit scenario the session simulates. If omitted, or if an unrecognized value is passed, a scenario is chosen at random.

Clean / standard profiles

ValueDescription
SHELL_FILEMinimal credit file β€” one address, no trades
MULTIPLE_ADDRESSConsumer with multiple addresses on file
STANDARD_HITStandard hit β€” typical credit profile with trades

Bankruptcy

ValueDescription
BANKRUPTCY_DISCHARGEDPast bankruptcy, now discharged
BANKRUPTCY_UNDISCHARGEDActive/unresolved bankruptcy
BANKRUPTCY_VOLUNTARYVoluntary deposit under the Bankruptcy Act
BANKRUPTCY_PROPOSALConsumer proposal β€” debt restructuring
BANKRUPTCY_RECEIVING_ORDERReceiving order bankruptcy

Collections

ValueDescription
COLLECTION_UNPAIDUnpaid collection account on file
COLLECTION_UNPAID_2Unpaid collection β€” alternate consumer
COLLECTION_PAIDPaid/settled collection account on file
COLLECTION_MULTIPLEMultiple collections with narrative codes
ValueDescription
JUDGEMENTActive judgement on file
JUDGEMENT_SATISFIEDSatisfied/resolved judgement on file
FORECLOSUREForeclosure on file
GARNISHMENTGarnishment on file

Loans & trades

ValueDescription
SECURE_LOANSecure loan trade on file
MORTGAGEMortgage and revolving credit
STUDENT_LOANStudent loan on file
AUTO_LOANAuto loan on file
TRADE_R5Trade with R5 (write-off) and R3 ratings
TRADE_VARIOUSVarious credit cards with semi-monthly payment frequency
TRADE_REPOSSESSIONTrade with voluntary repossession

Alerts & inquiries

ValueDescription
FRAUD_ALERTLost/stolen wallet alert on file
FOREIGN_INQUIRYForeign bureau inquiry on file
MANY_INQUIRIESConsumer with many recent credit inquiries

Other

ValueDescription
EMPLOYMENTConsumer with current and former employment records
BANKINGPersonal chequing and savings accounts on file
TELCOTelco trade with unpaid collection
DEATH_NOTICEConsumer with a death notice on file

Example β€” test request

curl -X POST https://api.deepidv.com/v1/credit-check/hard \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{
    "first_name": "John",
    "last_name": "Doe",
    "email": "john.doe@example.com",
    "phone": "+15192223333",
    "uat": true,
    "uat_type": "BANKRUPTCY_DISCHARGED"
  }'