Skip to main content
FlexOrch scans every document for personal and sensitive data before it enters a dataset. Detected PII is automatically masked in the output, so your training data stays clean without requiring a separate privacy pipeline. Detection covers 46 PII types across Turkish, EU, and US jurisdictions.

Detected Types

Universal

TypeDescription
emailEmail addresses
credit_cardCredit card numbers (all major schemes, Luhn-validated)
ipIPv4 addresses
ip_v6IPv6 addresses
ibanInternational bank account numbers (mod-97 validated)

Turkey (TR)

TypeDescription
national_id_trT.C. Kimlik No (11 digits)
tax_id_trVergi Kimlik No (10 digits, VKN)
phone_trTurkish mobile and landline numbers
iban_trTurkish IBANs (TR prefix, 26 chars)
emeklilik_noSGK Emeklilik sicil no
isyeri_sicil_noSGK İşyeri sicil no
bagkur_noBağ-Kur sicil no

Germany (DE)

TypeDescription
national_id_dePersonalausweis number
tax_id_deSteueridentifikationsnummer (11 digits)
phone_deGerman phone numbers
iban_deGerman IBANs (DE prefix)

France (FR)

TypeDescription
national_id_frNuméro de sécurité sociale (15 digits)
tax_id_frNuméro SPI / NIF
phone_frFrench phone numbers
iban_frFrench IBANs (FR prefix)

Italy (IT)

TypeDescription
national_id_itCodice Fiscale (alphanumeric)
phone_itItalian phone numbers
iban_itItalian IBANs (IT prefix)

Netherlands (NL)

TypeDescription
national_id_nlBurgerservicenummer (BSN, 9 digits)
tax_id_nlBTW-nummer
phone_nlDutch phone numbers

Spain (ES)

TypeDescription
national_id_esDNI / NIE
tax_id_esNIF
phone_esSpanish phone numbers

Poland (PL)

TypeDescription
national_id_plPESEL (11 digits)
tax_id_plNIP (10 digits)
phone_plPolish phone numbers

United Kingdom (UK) & United States (US)

TypeDescription
national_id_ukNational Insurance Number (NINO)
ssn_usSocial Security Number
phone_ukUK phone numbers
phone_usUS phone numbers

Additional EU Jurisdictions

National ID and phone types are also covered for Austria, Belgium, Sweden, Denmark, Finland, and Portugal.

Masking Strategies

When PII is detected, FlexOrch replaces each finding with a placeholder. The default strategy is redact:
StrategyOutput ExampleUse Case
redact[MASKED_EMAIL]Production datasets, LLM fine-tuning
replaceperson@example.comTesting with plausible synthetic data
token<EMAIL_1>Preserving structure for NLP tasks
hasha3f2b1...Deterministic anonymization

API Response

After processing, PII information is available in the job response:
{
  "pii_findings_count": 4,
  "privacy_applied": true,
  "processing_summary": {
    "pii_type_summary": {
      "email": 2,
      "national_id_tr": 1,
      "iban": 1
    }
  }
}
The full type breakdown is also included in the dataset profile:
curl https://api.flexorch.com/v1/datasets/{id}/profile \
  -H "X-API-KEY: dfx_your_key_here"

KVKK & GDPR Compliance

FlexOrch generates a compliance report for every dataset. The profile endpoint returns:
  • gdpr_categories — GDPR Article 9 special category flags
  • detected_countries — Jurisdictions found in the data
  • applicable_regulations — KVKK, GDPR, NIS2, eIDAS as relevant
curl https://api.flexorch.com/v1/datasets/{id}/profile \
  -H "X-API-KEY: dfx_your_key_here"
For a GDPR Article 30 Record of Processing Activities (ROPA), use the compliance endpoint:
curl https://api.flexorch.com/v1/compliance/record \
  -H "X-API-KEY: dfx_your_key_here"

Open Source

PII detection is also available as a standalone, zero-dependency package — no FlexOrch account required. See flexorch-audit for installation and usage.