{
  "x402Version": 2,
  "id": 34916,
  "slug": "34916",
  "resource": "https://factline.dev/v1/kyc/check",
  "description": "KYC onboarding check in one call: sanctions, PEP, email, phone, VAT. Use when onboarding a customer, seller or business and you want one answer: screens the name against EU, UN, UK and US sanctions and the PEP list, verifies email and phone, and checks an EU VAT number in VIES, all in parallel, with one verdict: pass, review, block_review or incomplete. Send any of name, email, phone, vat.",
  "type": "http",
  "serviceName": "Factline",
  "resourceType": "Beauty & Personal Care",
  "accepts": [
    {
      "scheme": "exact",
      "network": "eip155:8453",
      "payTo": "0xb58dd178abac67f6d4894437a7fc725cbddb2075",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "amount": "10000",
      "amountUsd": 0.01,
      "maxTimeoutSeconds": 120
    },
    {
      "scheme": "exact",
      "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
      "payTo": "fyqifu7otDYanhqr84B9YzZfA5LwRTJ1uFLqDJinMTK",
      "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "amount": "10000",
      "amountUsd": 0.01,
      "maxTimeoutSeconds": 120
    }
  ],
  "outputSchema": {
    "properties": {
      "example": {
        "type": "object"
      },
      "type": {
        "type": "string"
      }
    },
    "required": [
      "type"
    ],
    "type": "object"
  },
  "extensions": {
    "bazaar": {
      "info": {
        "input": {
          "method": "GET",
          "queryParams": {
            "email": "jan@example.nl",
            "name": "Jan de Vries",
            "phone": "+31612345678"
          },
          "type": "http"
        },
        "output": {
          "example": {
            "checks": {
              "email": {
                "result": {
                  "disposable": false,
                  "domain": "factline.dev",
                  "domain_security": {
                    "dmarc_policy": null,
                    "spf": true
                  },
                  "email": "jan@factline.dev",
                  "free_provider": false,
                  "mail_routing": {
                    "accepts_mail": true,
                    "domain_exists": true,
                    "implicit_mx": false,
                    "mx": [
                      "route1.mx.cloudflare.net",
                      "route3.mx.cloudflare.net",
                      "route2.mx.cloudflare.net"
                    ],
                    "null_mx": false
                  },
                  "reasons": [],
                  "role_account": false,
                  "source": "DNS via Cloudflare 1.1.1.1 (DNS-over-HTTPS); disposable-email-domains (CC0)",
                  "suggestion": null,
                  "syntax_valid": true,
                  "verdict": "deliverable"
                },
                "status": "ok"
              },
              "phone": {
                "result": {
                  "calling_code": "+31",
                  "country": "NL",
                  "country_name": "Netherlands",
                  "e164": "+31612345678",
                  "input": "+31612345678",
                  "international": "+31 6 12345678",
                  "line_type": "mobile",
                  "national": "06 12345678",
                  "possible": true,
                  "sms_capable": true,
                  "source": "Google libphonenumber metadata",
                  "valid": true
                },
                "status": "ok"
              },
              "sanctions": {
                "result": {
                  "list": {
                    "entities": 25591,
                    "loaded_at": "2026-10-08T00:30:53.837Z",
                    "sources": [
                      {
                        "dated": "2026-09-22",
                        "list": "EU",
                        "name": "EU consolidated financial sanctions list (European Commission)"
                      },
                      {
                        "dated": "2026-10-07",
                        "list": "UN",
                        "name": "UN Security Council consolidated sanctions list"
                      },
                      {
                        "dated": "07/10/2026",
                        "list": "UK",
                        "name": "UK Sanctions List (FCDO/OFSI)"
                      },
                      {
                        "dated": "OFAC SDN",
                        "list": "US",
                        "name": "US OFAC Specially Designated Nationals (SDN) list"
                      }
                    ]
                  },
                  "matches": [],
                  "possible_match": false,
                  "query": {
                    "birth_year": null,
                    "name": "Jan de Vries",
                    "threshold": 85,
                    "type": null
                  }
                },
                "status": "ok"
              },
              "vat": "not requested"
            },
            "explain": {
              "disclaimer": "Automated screening aid, not legal advice. Sanctions matches are possible matches; confirm identity against the official lists.",
              "verdict": "pass: nothing flagged; review: something needs a human look (bad email, invalid phone or VAT); block_review: possible sanctions match, do not proceed before checking it; incomplete: a source was down, retry."
            },
            "flags": [],
            "source": "Sanctions lists named in checks.sanctions.result.list.sources; DNS (Cloudflare 1.1.1.1); Google libphonenumber; EU VIES",
            "verdict": "pass"
          },
          "type": "json"
        }
      },
      "schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "input": {
            "additionalProperties": false,
            "properties": {
              "method": {
                "enum": [
                  "GET"
                ],
                "type": "string"
              },
              "queryParams": {
                "properties": {
                  "birth_year": {
                    "description": "Optional 4-digit birth year for the sanctions and PEP checks",
                    "type": "string"
                  },
                  "company": {
                    "description": "Optional company name to verify in official registers (GLEIF/FR/NO)",
                    "type": "string"
                  },
                  "company_country": {
                    "description": "Optional ISO country for the company, e.g. FR",
                    "type": "string"
                  },
                  "country": {
                    "description": "Optional ISO country for a national phone number, e.g. NL",
                    "type": "string"
                  },
                  "email": {
                    "description": "Email address to verify",
                    "type": "string"
                  },
                  "kvk": {
                    "description": "Optional Dutch KvK number: adds a bankruptcy / suspension of payments check",
                    "type": "string"
                  },
                  "name": {
                    "description": "Person or company name to screen against sanctions lists (persons are also screened for PEP status)",
                    "type": "string"
                  },
                  "pep": {
                    "description": "PEP check of a person name (default true)",
                    "enum": [
                      "true",
                      "false"
                    ],
                    "type": "string"
                  },
                  "phone": {
                    "description": "Phone number, international format or with country",
                    "type": "string"
                  },
                  "type": {
                    "description": "Optional: screen the name as a person or an organisation",
                    "enum": [
                      "person",
                      "entity"
                    ],
                    "type": "string"
                  },
                  "vat": {
                    "description": "Optional EU VAT number with country prefix, e.g. NL859048800B01",
                    "type": "string"
                  }
                },
                "type": "object"
              },
              "type": {
                "const": "http",
                "type": "string"
              }
            },
            "required": [
              "type",
              "method"
            ],
            "type": "object"
          },
          "output": {
            "properties": {
              "example": {
                "type": "object"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type"
            ],
            "type": "object"
          }
        },
        "required": [
          "input"
        ],
        "type": "object"
      }
    },
    "payment-identifier": {
      "info": {
        "required": false
      },
      "schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "properties": {
          "id": {
            "maxLength": 128,
            "minLength": 16,
            "pattern": "^[a-zA-Z0-9_-]+$",
            "type": "string"
          },
          "required": {
            "type": "boolean"
          }
        },
        "required": [
          "required"
        ],
        "type": "object"
      }
    }
  },
  "tags": [
    "kyc",
    "kyb",
    "onboarding",
    "sanctions",
    "aml",
    "bazaar",
    "payment-identifier"
  ],
  "sourceHost": "factline.dev",
  "lastUpdated": "2026-10-12T00:48:38.025Z",
  "quality": {
    "calls30d": 5,
    "uniquePayers30d": 2,
    "lastCalledAt": "2026-10-12T00:48:37.871Z"
  },
  "metadata": {
    "serviceName": "Factline",
    "extensions": {
      "bazaar": {
        "info": {
          "input": {
            "method": "GET",
            "queryParams": {
              "email": "jan@example.nl",
              "name": "Jan de Vries",
              "phone": "+31612345678"
            },
            "type": "http"
          },
          "output": {
            "example": {
              "checks": {
                "email": {
                  "result": {
                    "disposable": false,
                    "domain": "factline.dev",
                    "domain_security": {
                      "dmarc_policy": null,
                      "spf": true
                    },
                    "email": "jan@factline.dev",
                    "free_provider": false,
                    "mail_routing": {
                      "accepts_mail": true,
                      "domain_exists": true,
                      "implicit_mx": false,
                      "mx": [
                        "route1.mx.cloudflare.net",
                        "route3.mx.cloudflare.net",
                        "route2.mx.cloudflare.net"
                      ],
                      "null_mx": false
                    },
                    "reasons": [],
                    "role_account": false,
                    "source": "DNS via Cloudflare 1.1.1.1 (DNS-over-HTTPS); disposable-email-domains (CC0)",
                    "suggestion": null,
                    "syntax_valid": true,
                    "verdict": "deliverable"
                  },
                  "status": "ok"
                },
                "phone": {
                  "result": {
                    "calling_code": "+31",
                    "country": "NL",
                    "country_name": "Netherlands",
                    "e164": "+31612345678",
                    "input": "+31612345678",
                    "international": "+31 6 12345678",
                    "line_type": "mobile",
                    "national": "06 12345678",
                    "possible": true,
                    "sms_capable": true,
                    "source": "Google libphonenumber metadata",
                    "valid": true
                  },
                  "status": "ok"
                },
                "sanctions": {
                  "result": {
                    "list": {
                      "entities": 25591,
                      "loaded_at": "2026-10-08T00:30:53.837Z",
                      "sources": [
                        {
                          "dated": "2026-09-22",
                          "list": "EU",
                          "name": "EU consolidated financial sanctions list (European Commission)"
                        },
                        {
                          "dated": "2026-10-07",
                          "list": "UN",
                          "name": "UN Security Council consolidated sanctions list"
                        },
                        {
                          "dated": "07/10/2026",
                          "list": "UK",
                          "name": "UK Sanctions List (FCDO/OFSI)"
                        },
                        {
                          "dated": "OFAC SDN",
                          "list": "US",
                          "name": "US OFAC Specially Designated Nationals (SDN) list"
                        }
                      ]
                    },
                    "matches": [],
                    "possible_match": false,
                    "query": {
                      "birth_year": null,
                      "name": "Jan de Vries",
                      "threshold": 85,
                      "type": null
                    }
                  },
                  "status": "ok"
                },
                "vat": "not requested"
              },
              "explain": {
                "disclaimer": "Automated screening aid, not legal advice. Sanctions matches are possible matches; confirm identity against the official lists.",
                "verdict": "pass: nothing flagged; review: something needs a human look (bad email, invalid phone or VAT); block_review: possible sanctions match, do not proceed before checking it; incomplete: a source was down, retry."
              },
              "flags": [],
              "source": "Sanctions lists named in checks.sanctions.result.list.sources; DNS (Cloudflare 1.1.1.1); Google libphonenumber; EU VIES",
              "verdict": "pass"
            },
            "type": "json"
          }
        },
        "schema": {
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "input": {
              "additionalProperties": false,
              "properties": {
                "method": {
                  "enum": [
                    "GET"
                  ],
                  "type": "string"
                },
                "queryParams": {
                  "properties": {
                    "birth_year": {
                      "description": "Optional 4-digit birth year for the sanctions and PEP checks",
                      "type": "string"
                    },
                    "company": {
                      "description": "Optional company name to verify in official registers (GLEIF/FR/NO)",
                      "type": "string"
                    },
                    "company_country": {
                      "description": "Optional ISO country for the company, e.g. FR",
                      "type": "string"
                    },
                    "country": {
                      "description": "Optional ISO country for a national phone number, e.g. NL",
                      "type": "string"
                    },
                    "email": {
                      "description": "Email address to verify",
                      "type": "string"
                    },
                    "kvk": {
                      "description": "Optional Dutch KvK number: adds a bankruptcy / suspension of payments check",
                      "type": "string"
                    },
                    "name": {
                      "description": "Person or company name to screen against sanctions lists (persons are also screened for PEP status)",
                      "type": "string"
                    },
                    "pep": {
                      "description": "PEP check of a person name (default true)",
                      "enum": [
                        "true",
                        "false"
                      ],
                      "type": "string"
                    },
                    "phone": {
                      "description": "Phone number, international format or with country",
                      "type": "string"
                    },
                    "type": {
                      "description": "Optional: screen the name as a person or an organisation",
                      "enum": [
                        "person",
                        "entity"
                      ],
                      "type": "string"
                    },
                    "vat": {
                      "description": "Optional EU VAT number with country prefix, e.g. NL859048800B01",
                      "type": "string"
                    }
                  },
                  "type": "object"
                },
                "type": {
                  "const": "http",
                  "type": "string"
                }
              },
              "required": [
                "type",
                "method"
              ],
              "type": "object"
            },
            "output": {
              "properties": {
                "example": {
                  "type": "object"
                },
                "type": {
                  "type": "string"
                }
              },
              "required": [
                "type"
              ],
              "type": "object"
            }
          },
          "required": [
            "input"
          ],
          "type": "object"
        }
      },
      "payment-identifier": {
        "info": {
          "required": false
        },
        "schema": {
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "id": {
              "maxLength": 128,
              "minLength": 16,
              "pattern": "^[a-zA-Z0-9_-]+$",
              "type": "string"
            },
            "required": {
              "type": "boolean"
            }
          },
          "required": [
            "required"
          ],
          "type": "object"
        }
      }
    }
  },
  "liveness": {
    "reliability": null
  },
  "verified": false,
  "featured": false,
  "provider": {
    "host": "factline.dev",
    "manifest_name": "factline.dev",
    "source": "cdp-mirror",
    "source_manifest_url": "https://api.cdp.coinbase.com/platform/v2/x402/discovery/resources",
    "submitted_at": "2026-10-14T01:15:01.050Z"
  },
  "exampleResponse": {
    "example": {},
    "type": "string"
  }
}