Property checks

Property checks: when they run, what they check as grouped in the app, and the five-digit numeric encoding

Property checks are the tests a validator runs on each property token: at issuance, on transactions, and periodically. Each check tests one thing about the token, its owners, or the property, and draws on a stated data source: county records, lien data, identity-verification records, ownership and transfer history, or Fabrica requirements. Not every check is a comparison with county records.

Property checks are a starting point for your own research, not a title search or title insurance.

Property checks were formerly called the Provenance Score (and, in earlier versions of these docs, the confidence score). The feature and its identifiers are unchanged.

Property checks are a work in progress and continue to evolve as Fabrica refines its validation approach.

Identifiers

Validators also publish the results as a 5-digit number: the numeric encoding of Property checks. Existing identifiers keep their names for compatibility:

  • score: the numeric encoding of Property checks
  • confidenceScore: the numeric encoding of Property checks
  • explain_confidence_score (MCP tool): explains the numeric encoding by group, digit by digit. Individual check results must be read separately for the token
  • minScore (search parameter): the minimum numeric encoding a property must have to be returned

The numeric encoding groups the results differently from the Property checks checklist in the Fabrica app, and it does not show every individual result. It is not the same list, and it is not a percentage, grade or rating.

The fastest read is the leading digit: a value starting with 7 indicates a property in normal standing, while any other leading digit signals the token-property link is compromised or under review and should be treated with caution. The rest of this page explains how each digit is composed.

Encoding structure

The numeric encoding uses a positional digit system where each digit represents a group of checks:

PositionGroupMaxWhat the group covers
Ten-ThousandsrecoveryStatus7Recovery and integrity status of the token-property link
ThousandspastTitleAndLoad5Title, legal description, liens and taxes for the property
Hundredsownership3Identity-verification records and contact for the owners
TensonChainHistory4Theft reports, flagged addresses, fees and transfer timing
OnesbasicValidation2Foundational documents and metadata the token must carry

The maximum possible value is 75,342.

Example: A value of 72101 breaks down as:

  • recoveryStatus = 7 (Normal)
  • pastTitleAndLoad = 2
  • ownership = 1
  • onChainHistory = 0
  • basicValidation = 1

The most significant digits (leftmost) represent the most critical ownership-related checks.

Recovery Status Digit

The most significant digit reflects the recovery status of the property. Unlike the other digits, which are computed from Property checks, this digit is set administratively based on recovery events.

ValueStatusDescription
7NormalDefault state. No recovery activity.
6Recovery PendingA §10.2 Notice of Lost Token Control has been recorded by the Beneficiary to recover access. Token-property link intact; Quiet Period running.
5StolenThe token has been reported as stolen via an unauthorized transfer.
4DistressedThe Property is at material risk of loss to a third party through involuntary process (tax sale, judicial foreclosure of a pre-existing lien, eminent domain, or equivalent). The Trust still holds title and the Beneficiary may still cure. Reversible upon cure.
1VoidThe token has been permanently dissociated from the Property and the Trust following an Alternative Dissolution Event or involuntary loss of title. Irreversible.

A value starting with 7 indicates a property in normal standing. Any other leading digit signals that the token-property link is compromised or under review, and applications should treat the token with caution regardless of the other digits.

Distressed (4) Lifecycle

Like every recovery status, Distressed is set administratively: a validator assigns it after confirming that an involuntary process has been initiated against the Property that, if uncured, will result in loss of title. Status updates are not instantaneous; they follow the validator receiving and processing the evidence. Examples include:

  • The county has issued a tax certificate, tax sale notice, or equivalent post-delinquency instrument
  • A lienholder has commenced judicial foreclosure proceedings against the Property
  • A condemnation or eminent domain action has been filed

While in the Distressed state, the Property is still held by the Trust and the Beneficiary may take action to cure (pay back taxes, satisfy the lien, etc.). After a successful cure, the validator can return the token to Normal (7). If the process completes and title transfers to a third party of record, the validator moves the token to Void (1).

Applications surfacing a Distressed token to its Beneficiary should display a clear warning of the underlying risk and a path to cure.

The checks

The thousands, hundreds and tens digits count the passing checks in their group. The ones digit (basicValidation) encodes two cumulative requirement levels, described below. The recovery digit is an administratively assigned status, described above. What each check tests and where its data comes from:

pastTitleAndLoad (thousands)

CheckWhat it testsData source
proofOfTitleValidThe proof of title referenced by the token has been checked and confirmedThe recorded deed
claimMatchesLegalDescriptionThe claim in the token matches the legal description on recordCounty records, through a third-party property data provider
holdingEntityMatchesOwnerNameAtAssessorThe token's holding entity matches the owner name at the county assessorCounty assessor records, through a third-party parcel data provider
noLiensFoundNo voluntary liens (such as a mortgage) with an open estimated balance were found. In the application a mortgage shows as "On record" (a claim the owner agreed to, usual for a home), not as an item to review, and it does not change the property's verdict; the check still earns no point in the numeric encodingLien data from a third-party property data provider
propertyTaxesCurrentProperty taxes are up to dateCounty tax records

ownership (hundreds)

CheckWhat it testsData source
currentOwnersKycdEvery current holder has an identity-verification recordIdentity-verification records
allTransfersKycdEvery recipient of a past transfer has an identity-verification recordTransfer history and identity-verification records
ownerHasVerifiedContactThe majority owner has a verified email or phone on fileFabrica account records

onChainHistory (tens)

CheckWhat it testsData source
notReportedAsStolenThe token is not on Fabrica's flagged-token list, and OpenSea does not flag it as suspicious (when OpenSea returns a result)Fabrica's flagged-token list and the OpenSea API
currentOwnersNotInDarklistNo current holder's address appears on the flagged-address list Fabrica usesMyEtherWallet's public address darklist, with a copy embedded in the validator as a fallback
feesInGoodStandingPlatform fees are in good standing (the deferred setup fee authorization is intact)Fabrica requirements and onchain approvals
transferCooldownMetThe required post-transfer cooldown period has elapsedOnchain transfer history

basicValidation (ones)

CheckWhat it testsData source
holdingEntityDeclaredA holding entity (trust/LLC) is declaredToken metadata
formationDocumentAvailableThe holding entity's formation document (operating agreement) is linkedToken metadata
deedAvailableA proof of title document is linkedToken metadata
legalDescriptionAvailableThe token's claim (legal description) is definedToken metadata
coordinatesValidThe property's geographic coordinates are validToken metadata

The basicValidation digit is 1 when holdingEntityDeclared, legalDescriptionAvailable and coordinatesValid all pass, and 2 when deedAvailable and formationDocumentAvailable also pass.

Reading the numeric encoding

Applications can read the numeric encoding from the API (score) or the MCP server (explain_confidence_score) as one input to their own research before transacting.

When reading it:

  • Check the recovery status digit first (ten-thousands). A value other than 7 indicates the token-property link is compromised or under review.
  • Check the next digits for ownership-critical status: title and liens (thousands) and owner verification (hundreds).
  • In the thousands, hundreds and tens positions, a higher digit means more checks in that group passed. The ones digit is a requirement level (0, 1 or 2), and the leading digit is a status, not a count.
  • Applications can parse individual digits to make decisions based on specific groups of checks, and should read the individual check results where a decision depends on one check.

Did this page help you?