# Japan Financial Licenses & Registrations (FSA) (`jpopendata/japan-financial-licenses`) Actor

Licensed and registered financial institutions from Japan's Financial Services Agency official lists (fsa.go.jp): banks, securities firms, crypto-asset exchanges, moneylenders, funds-transfer providers and more. English field schema, corporate numbers for KYC/KYB matching, individuals' data redac…

- **URL**: https://apify.com/jpopendata/japan-financial-licenses.md
- **Developed by:** [JP Open Data](https://apify.com/jpopendata) (community)
- **Categories:** Lead generation, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $5.00 / 1,000 records

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Japan Financial Licenses & Registrations (FSA)

**Japan's officially licensed financial institutions — banks, securities firms, crypto-asset exchanges, moneylenders, insurers and more — as English-schema JSON with corporate numbers for KYC/KYB matching.**

This Actor delivers the Financial Services Agency's (金融庁) official licensee lists (免許・許可・登録等を受けている業者一覧) — the Japanese counterpart of the UK FCA register. Ten license categories, each with registration number, registration date, supervising finance bureau, published head-office address and phone, and the 13-digit corporate number that lets you join records against gBizINFO, the corporate registry, or your own KYC data.

> **Unofficial tool.** Not affiliated with or endorsed by the Financial Services Agency or the Government of Japan. Records are edited/processed data from the FSA licensee lists (出典：金融庁ウェブサイトの「免許・許可・登録等を受けている業者一覧」を編集・加工して作成). fsa.go.jp content is published under 公共データ利用規約（第1.0版）(PDL 1.0), which permits commercial reuse with attribution and a processed-data notice — both embedded in every record.

***

### Who is this for?

- **KYC / KYB and compliance teams** — verify that a Japanese counterparty actually holds the license it claims, by register, number, and date, with a corporate number for entity resolution.
- **Fintech and crypto analysts** — the crypto-asset exchange register includes each exchange's list of handled crypto assets; monitor listings and new registrants.
- **Market entry & partnerships** — map who is licensed for what (funds transfer, prepaid instruments, trust business, insurance) before picking partners or competitors to study.

### Supported categories

One FSA register per run (or `"all"`): `crypto_exchanges` (default) · `banks` · `securities` · `moneylenders` · `funds_transfer` · `electronic_payment_instruments` · `prepaid_third_party` · `life_insurance` · `nonlife_insurance` · `trust_companies`.

### Sample output (dataset item)

```json
{
  "category": "crypto_exchanges",
  "categoryJa": "暗号資産交換業者",
  "licenseKind": "registration",
  "name": "○○株式会社",
  "nameWithheld": false,
  "corporateNumber": "1234567890123",
  "registrationNo": "関東財務局長 第00000号",
  "registrationDate": "2019-01-11",
  "authority": "関東財務局",
  "postalCode": "100-0004",
  "address": "東京都千代田区大手町…",
  "prefecture": "東京都",
  "prefectureCode": "13",
  "prefectureEn": "Tokyo",
  "cryptoAssetsHandled": ["BTC", "ETH", "XRP"],
  "asOfDate": "2026-08-21",
  "sourceFileUrl": "https://www.fsa.go.jp/menkyo/menkyoj/kasoutuka.xlsx",
  "source": "金融庁ウェブサイト",
  "sourceUrl": "https://www.fsa.go.jp/menkyo/menkyo.html",
  "license": "公共データ利用規約（第1.0版）PDL1.0 — 編集・加工して作成",
  "retrievedAt": "2026-08-25T09:12:44Z"
}
```

Upstream quirks are normalized honestly: registration dates arrive as both Excel serials and wareki strings (令和8年3月26日) and become ISO dates; postal codes that lost their leading zero as spreadsheet numbers get it back.

### Input example

```json
{
  "licenseCategory": "securities",
  "prefecture": "Tokyo",
  "maxItems": 500
}
```

`licenseCategory: "all"` fetches every supported register (11 polite requests — raise `maxApiRequests`; the Actor pre-checks the budget and tells you before spending anything).

### Pricing

Pay per result — see the pricing tab. Most registers are small (the crypto register is a few dozen firms; securities ~2,000), so full-category pulls cost cents.

### FAQ

**Where does the data come from?**
From the XLSX licensee lists published on fsa.go.jp (menkyo.html), refreshed roughly monthly per category. Each record carries `asOfDate` (the register's own reference date) and `sourceFileUrl` (the exact file it came from).

**Is this an official government service?**
No. **Unofficial**, independently built and maintained, using officially published PDL 1.0 data with the required attribution embedded in every record.

**Why are a few names withheld?**
Some FSA registers list sole proprietors — private individuals registered, for example, as investment advisers, with what are effectively home addresses and personal phone numbers. This Actor withholds any name it cannot positively identify as a legal entity (`name: null`, `nameWithheld: true`) and withholds the contact fields with it. On the live registers at capture time this affected 12 records — all genuine individuals. We accept occasionally over-redacting an unusual foreign entity name; we do not accept publishing a person's home address. Each run's summary reports the withheld count, so nothing is filtered silently.

**Is every Japanese moneylender in here?**
No — the FSA lists cover **finance-bureau-registered** moneylenders. Moneylenders registered with prefectural governors are not in this register (the FSA page says so itself). Same principle across categories: this Actor returns what the FSA files contain, no more.

**What if the FSA changes a file's layout?**
The parser detects columns by header name and fails loudly with a clear error rather than guessing — you get a stopped run, never silently mis-mapped data.

**What about server load?**
1 + one request per selected category, ≥1.5 s apart, exponential backoff on 429/5xx, hard request budget, no rate-limit evasion.

### Search terms this Actor answers

Japan FSA register · Japan financial license lookup · Japan crypto exchange list · licensed securities firms Japan · Japan moneylender register · KYC Japan financial institutions · FCA register Japan equivalent · Japan banking license data

### More Japan public-data Actors by the same developer

- **Japan Government Tenders & Awards** — tender notices and award results from the kkj.go.jp portal.
- **Japan Medical Facilities** — every registered hospital, clinic, dental clinic, and pharmacy (MHLW open data).
- **Japan Care Facilities** — long-term care providers across 35 service types (MHLW open data, CC BY).
- **Japan Government Subsidies & Grants** — open subsidy calls from the official jGrants API.
- **Japan Renewable Energy FIT/FIP Facilities** — METI-certified renewable installations, privacy-safe schema.
- **Japan Construction & Real-Estate Licenses** — licensed contractors and brokers from MLIT's register.
- **Japan Trade Statistics** — monthly import/export flows by HS code and partner country, from Japan Customs.

***

*Data source: 金融庁ウェブサイト（https://www.fsa.go.jp/menkyo/menkyo.html）— PDL 1.0; attribution and processing notice embedded in every record.*

# Actor input Schema

## `licenseCategory` (type: `string`):

Which FSA list to fetch. Each category is one monthly-refreshed XLSX file on fsa.go.jp/menkyo. `all` fetches every supported category (11 upstream requests — raise `maxApiRequests` to at least 11).

## `prefecture` (type: `string`):

Optional filter on the head-office prefecture, derived from the published address. Accepts an English name (`Tokyo`), a Japanese name (`東京都`) or a 2-digit JIS code (`13`). Leave empty for the whole country. Records whose name is withheld as possibly-individual carry no address and are excluded when this filter is active.

## `maxItems` (type: `integer`):

Maximum number of records to output across all selected categories. Each category file is downloaded whole either way (that is how the upstream publishes); this truncates the output client-side.

## `maxApiRequests` (type: `integer`):

Hard safety cap on upstream requests in one run. A run needs 1 (menkyo.html) + 1 per selected category; the headroom only covers polite retries after 429/5xx. Politeness (1 connection, >= 1.5 s spacing, exponential backoff) is enforced in code.

## `proxyConfiguration` (type: `object`):

Apify proxy settings. Default is NO proxy (direct connection). The actor backs off exponentially on 429/5xx and fails visibly on a persistent block — it never attempts rate-limit evasion.

## Actor input object example

```json
{
  "licenseCategory": "crypto_exchanges",
  "prefecture": "Tokyo",
  "maxItems": 1000,
  "maxApiRequests": 8,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# Actor output Schema

## `records` (type: `string`):

Structured records with source attribution (source, sourceUrl, license, retrievedAt) on every item.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("jpopendata/japan-financial-licenses").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("jpopendata/japan-financial-licenses").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call jpopendata/japan-financial-licenses --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,jpopendata/japan-financial-licenses"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/9nIizeo6dnrrEfIOA/builds/nP4gDeif5FO4P65Qc/openapi.json
