Install & Compatibility
Where this runs
tested against v3.7.12 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
py 3.10
✕ build_error
✕ build_error
py 3.11
✕ build_error
✕ build_error
py 3.12
✕ build_error
✕ build_error
py 3.13
✕ build_error
✕ build_error
173MB installed
● package 173MB
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
Model
✓ from followthemoney import Model
✗ from followthemoney.model import Model
Model is exposed at package level; the model submodule is internal.
Entity
✓ from followthemoney import Entity
✗ from followthemoney.entity import Entity
Entity is exposed at package level.
schema
✓ from followthemoney import schema
✗ import followthemoney.schema
schema is a module, import as shown.
Create a Person entity, add properties, validate, and export to dict.
from followthemoney import Model
# Load the default data model
model = Model()
# Create an entity of type 'Person'
entity = model.make_entity('Person')
entity.make_id('some-unique-id')
entity.add('name', 'John Doe')
entity.add('birthDate', '1980-01-01')
# Validate the entity (raises on invalid)
entity.validate()
# Export to dict
print(entity.to_dict())
followthemoney --version
Errors
Common errors & fixes
ModuleNotFoundError: No module named 'followthemoney.model'
Importing from submodule incorrectly.
fixUse `from followthemoney import Model` instead of `from followthemoney.model import Model`.
followthemoney.exceptions.InvalidData: Invalid entity type: 'Organisation'
Entity type name typo or wrong case. Schema uses 'Organization' (with 'z').
fixUse 'Organization' (US spelling) instead of 'Organisation' (UK spelling).
AttributeError: 'Model' object has no attribute 'Entity'
Trying to access Entity class on Model instance incorrectly.
fixUse `model.make_entity('Person')` or `from followthemoney import Entity`. ValueError: Entity ID is required before adding properties
Calling `add()` on Entity before calling `make_id()`.
fixAlways call `entity.make_id('...')` before adding properties. Upgrade
Version history
4.9.2latest on PyPI · released Jun 12, 2026
Audit
Dependencies
pantomimerequiredType mappings and string normalization
banalrequiredUtility functions (BANAL is a dependency of followthemoney)
pycountryrequiredCountry and language codes
python-dateutilrequiredDate parsing
networkxoptionalGraph algorithms for deduplication and clustering
nomenklaturaoptionalEntity deduplication and name matching