Blacklists

The Blacklist API checks whether a subject's mobile number appears in Smile's blacklist data sources for a given country. A blacklist hit indicates that the mobile number has been associated with adverse events — such as fraud, delinquency, or defaulted obligations — recorded by financial institutions and other participating data providers in the Smile Network.

Blacklist checks are synchronous: results are returned immediately in the API response, with no need for webhooks or polling.

Smile Blacklist is currently in Alpha.

How a Blacklist Check Works

  1. Submit a Blacklist request using the POST /alpha/blacklists endpoint. At minimum, provide the subject's mobileNumber and a valid consent object.

  2. Receive the result synchronously. The API returns the full Blacklist object in the response body, including a result.hit boolean and a list of dates on which blacklist events were recorded for this mobile number.

  3. Evaluate the result. If result.hit is true, the subject's mobile number was found on the blacklist. The result.dates array contains the dates on which the blacklist entries were recorded, which you can use to assess the recency and frequency of adverse events.

📘

About applicationDate

applicationDate is an optional field. When provided, Smile queries blacklist data recorded before that date, allowing you to perform point-in-time evaluations. If omitted, the check is evaluated against the current date, which is the recommended behavior for real-time screening.

Supported Markets

Template IDMarketRequired Parameters
tpl-blk002001PH (default)consent, mobileNumber, countryCode

If you require blacklist screening for other markets, contact your Smile account manager for available templates and the corresponding templateId.

The Blacklist Objects

Request Object

This is the object you send when creating a Blacklist check.

AttributeTypeRequiredDescription
mobileNumberstringYesThe subject's mobile number, including country code. No leading zeros. Example: 639178912345
countryCodestringNoISO 3166 alpha-2 country code for the market to screen against. Defaults to PH.
templateIdstringNoThe blacklist template to use. If not provided, Smile uses the default template for the specified country. Contact your account manager for non-default templates.
applicationDatedateNoThe date for the point-in-time evaluation, in YYYY-MM-DD format. If omitted, the check is evaluated against the current date.
consentobjectYesEvidence of the subject's consent to the blacklist check. See Consent Templates for details.

Blacklist Object

This is the object returned in the response.

AttributeTypeDescription
idstringUnique ID of this Blacklist record. IDs use the prefix blacklist-.
createdAtdate-timeDate and time when this Blacklist record was created
statusstringCurrent processing status of the request. See Blacklist Statuses below.
resultCodestringFinal result code of the check. See Result Codes below.
resultMessagestringHuman-readable description of the result
requestMetaobjectEcho of the original request parameters sent with the check
resultobjectThe blacklist check result. See Result Object below.

Result Object

AttributeTypeDescription
hitbooleantrue if the subject's mobile number was found on the blacklist; false if no match was found.
datesarray of datesThe dates on which blacklist events were recorded for this mobile number, in YYYY-MM-DD format. Empty if hit is false.

Blacklist Statuses

StatusDescription
PROCESSINGThe blacklist check is currently in progress
COMPLETEDThe check has completed and a result is available
ERRORThe check encountered an error and could not be completed

Result Codes

Result CodeDescriptionBillable
SUCCESSThe check completed successfully. Inspect result.hit for the outcome.Yes
NO_DATASmile was unable to return a result for the provided input.Yes
SYSTEM_ERRORAn internal error occurred. Contact Smile support if this persists.No
SERVICE_UNAVAILABLEThe blacklist data source is temporarily unavailable.No
📘

Billing Note

Blacklist checks are billed on request for both SUCCESS and NO_DATA result codes. Only the POST /alpha/blacklists endpoint is counted for billing — List and Get requests are not charged.

Sample Blacklist data

{
  "id": "blacklist-e35d521ef8f147c4aa01b7c1af85aaf7",
  "createdAt": "2021-04-14T09:30:24Z",
  "status": "COMPLETED",
  "resultCode": "SUCCESS",
  "resultMessage": "Success!",
  "requestMeta": {
    "mobileNumber": "639559991234",
    "countryCode": "PH",
    "applicationDate": "2021-04-14",
    "templateId": "tpl-blk002001",
    "consent": {
      "type": "Terms And Conditions",
      "version": "1.0.0",
      "consentedWith": "I agree to the terms and conditions.",
      "consentedAt": "2021-04-14T09:30:24Z",
      "consentTemplateId": null
    }
  },
  "result": {
    "hit": true,
    "dates": [
      "2021-04-14",
      "2021-03-14",
      "2021-02-14"
    ]
  }
}

Sandbox Testing

Use the following values to trigger a blacklist hit in the Sandbox environment. All other valid mobile number and country code combinations will return resultCode: SUCCESS with hit: false.

ParameterValueExpected Response
mobileNumber639559991234resultCode: SUCCESS, hit: true
countryCodePH

Endpoints

Endpoint
Create Blacklist checkPOST /alpha/blacklists
List Blacklist checksGET /alpha/blacklists
Retrieve one Blacklist checkGET /alpha/blacklists/{id}