Smile logo
← Use cases / Third-party risk

Know every business you do business with.

Verify a supplier, partner, or reseller's registration, ownership, and standing in one call — before the contract is signed, and again on an ongoing basis for as long as the relationship lasts.

The shape · A 20-sided mesh — every partner node checked against its neighbours.

The problem

Vetting a supplier or reseller usually means a procurement team manually searching a company registry, cross-checking sanctions lists by hand, and hoping nothing changes after the contract is signed — a process that's slow, inconsistent across regions, and blind to risk that emerges after onboarding.

The solution

Smile verifies a business's registration and ownership, screens it and its beneficial owners against sanctions and watchlists, and can re-screen on an ongoing basis — replacing a manual, one-time check with an API call your procurement or partner-onboarding system can run automatically for every counterparty.

What changes
Replace manual registry lookups with a single API call
Screen a business and its beneficial owners together, not separately
Catch a partner that turns risky after onboarding, not just before
How it works

From trigger to decision, in four steps.

STEP 1
Trigger the event
A procurement or partner-onboarding workflow submits a new supplier or reseller for review.
STEP 2
Call the API endpoint
Your backend sends a GET request to /v1/employers/query with the business name.
STEP 3
Real-time processing & webhooks
Smile matches the business against company registries, verifies beneficial owners, and screens against sanctions and watchlists — with a webhook available for ongoing re-screening events.
STEP 4
Deliver the output
Your onboarding system receives registration status, UBO verification, and a risk rating to approve or escalate the relationship.
The code

Request in, structured data out.

Request — cURL
curl "https://sandbox.smileapi.io/v1/employers/query?businessName=ABC%20Inc." \
  -u "$SMILE_CLIENT_ID:$SMILE_CLIENT_SECRET"
Response — 200 OK
{
  "code": "OK",
  "message": "Success",
  "requestId": "5b72199a-6852-4234-bb0e-ad472648282d",
  "data": [
    {
      "businessName": "ABC Inc.",
      "shortName": "ABC",
      "registrations": [
        {
          "number": "1507304",
          "organization": "dti_ph",
          "status": "Registered",
          "date": "2020-02-10",
          "scope": "Philippines"
        }
      ],
      "isicCode": "ISIC-K",
      "isicSector": "Financial and Insurance Activities",
      "psic": "64191",
      "psicIndustry": "Expanded commercial banking (universal banking)",
      "businessAddress": {
        "fullAddress": "123 Main St., Anytown, Any",
        "city": "Anytown",
        "region": "Anyregion",
        "zipCode": "12345",
        "country": "PH"
      },
      "contactPersons": [
        {
          "contactName": "John Doe",
          "position": "Owner",
          "contactEmail": "john.doe@abc.com",
          "contactPhone": "+639123456789"
        }
      ],
      "licenses": [
        {
          "licenseNumber": "123456789",
          "licenseType": "Transfer Agent",
          "licenseIssuedDate": "2020-02-10",
          "licenseStatus": "Active"
        }
      ]
    }
  ]
}
businessNameExact-match lookup, minimum 3 characters. Returns one record, or an empty array when there is no match. Use /v1/employerBasics/query?keyword= for fuzzy search.
registrationsRegistering body, number, status, date, and scope — for example a national company registry filing.
isicCodeIndustry classification (ISIC, plus the local PSIC code and industry) so you can apply sector-specific risk rules.
licensesAny licenses held, with type, number, issue date, and status.
Security & reliability

Built to be trusted in production.

Data privacy & compliance

Data is encrypted in transit and at rest, sensitive fields are tokenized rather than stored in the clear, and consent is captured at the point of collection — adapted to the data privacy regulations applicable in each market you operate.

Reliability

Idempotent requests, built-in retry support, and published rate limits mean a dropped connection or a retried request never produces a duplicate check. Each client can make up to 20 requests per second per IP address across all endpoints; anything above that returns HTTP 429.

Graceful failure

Every error returns a descriptive status code and a structured JSON body with a machine-readable code and a request ID — never a bare 500 — so a failed check is something your application can handle, not just log.

AI & data-driven decisions

How does Smile API power AI and data-driven decisions?

Smile API returns business verification, ownership and watchlist results as structured data. Procurement teams and AI due-diligence agents can use it to vet suppliers and partners consistently.

Data-driven decisions

Onboard vendors based on verified registrations, beneficial owners and screening results, and re-check them over time.

Features for your models

Clean, labelled and consented attributes — identity, income, device and watchlist outcomes — ready to use as inputs for credit and fraud scoring models.

Context for AI agents

A due-diligence agent can verify a supplier, list its owners, screen them and summarise risk for the procurement team.

How does Smile API support AI-driven third-party risk checks?

It gives an agent verified company records, beneficial owners and watchlist results in one structured response, so the agent can produce a consistent risk summary for every supplier.

Is Smile API data structured for machine use?

Yes. Results come back as consistent, typed JSON fields — verification statuses, scores and flags — so rules engines, machine learning models and large language model agents can read them without manual cleanup.

How is consent handled when AI uses Smile API data?

Every request carries the consent record captured from the end user, and Smile returns only the signals that consent covers. Your models and agents work with permissioned data, never scraped or self-reported guesses.
Example profile an agent receives
{
  "profile": "prf_8f21",
  "identity": "verified",
  "income": { "status": "verified", "source": "payroll" },
  "device": "trusted",
  "fraudScore": 0.07,
  "watchlists": "cleared",
  "suggestedAction": "approve_vendor"
}
Get connected

Ready to get connected?

Start with one capability or deploy the full lifecycle — Smile plugs into your existing onboarding and underwriting flows either way.

Contact sales