django-money
Adds support for using money and currency fields in django models and forms. Uses py-moneyed as the money implementation.
Decision gist · record as of 2026-08-14
No—the repository is archived and abandoned as of June 2026, with no active maintenance. While the package is stable and has low install friction, choosing an abandoned financial library introduces risk: no fixes for Django/Python compatibility issues, no security patches, and no support for future ecosystem changes. For new projects, seek an actively maintained alternative; for existing projects, consider migration planning.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Django 4.2+ and Python 3.10+; the repository is archived and no longer maintained.
- Low friction install with just two runtime dependencies.
- However, the repository is archived and marked abandoned as of the last commit on 2026-06-15, meaning no active maintenance or bug fixes should be expected going forward.
License · maintenance · safety
BSD (permissive) — Licensed under BSD (permissive), so you can use, modify, and distribute the package freely in commercial and private projects with minimal restrictions.
last release 2026-06-07 (68 days) · last repo commit 2026-06-15 · 1,775 stars · archived
0 known vulnerabilities (OSV.dev, 2026-08-14) · 837,834 downloads/mo, #4,930 on PyPI
Alternatives
Verify before relying
pip install django-money
# In settings.py
INSTALLED_APPS = [..., 'django-money', ...]
# In models.py
from django.db import models
class BankAccount(models.Model):
balance = MoneyField(max_digits=14, decimal_places=2, default_currency='USD')- Whether the abandoned status affects long-term compatibility with future Django/Python releases.
- Whether there are known issues or limitations not documented in the excerpt.
- Community fork or maintained alternative availability.
What it is and what it does
django-money extends Django with native Money and currency field types for models and forms. It wraps py-moneyed to provide a standard Money design pattern, currency definitions for all currencies in circulation, and proper formatting with correct currency signs. You define a field in your model with a maximum number of digits and decimal places, optionally specifying a default currency; the field stores both the numeric amount and the currency code separately in the database, and you can query, filter, and validate money amounts across different currencies.
The package integrates with Django's admin interface to display money fields correctly and supports callable defaults to avoid unnecessary migrations when configuration changes. It includes validators for numeric ranges, single currency amounts, or per-currency limits, and handles nullable money fields. Forms built from models with money fields automatically split into two input fields—one for amount and one for currency—making it straightforward to construct form data in tests or programmatically.
Use it for
- Store and query account balances, prices, or financial amounts in Django models with automatic currency tracking.
- Build multi-currency e-commerce or invoicing systems where different records may use different currencies.
- Validate monetary inputs with per-currency min/max constraints in forms and model validation.
- Display money values in the Django admin with correct currency symbols and formatting.
- Implement accounting applications requiring strict decimal precision and currency separation.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
No—the repository is archived and abandoned as of June 2026, with no active maintenance.
While the package is stable and has low install friction, choosing an abandoned financial library introduces risk: no fixes for Django/Python compatibility issues, no security patches, and no support for future ecosystem changes. For new projects, seek an actively maintained alternative; for existing projects, consider migration planning.
Install
django-money on PyPI
Before you install
Low friction install with just two runtime dependencies. However, the repository is archived and marked abandoned as of the last commit on 2026-06-15, meaning no active maintenance or bug fixes should be expected going forward.
Requires Django 4.2+ and Python 3.10+; the repository is archived and no longer maintained.
License in practice
Licensed under BSD (permissive), so you can use, modify, and distribute the package freely in commercial and private projects with minimal restrictions.
Quickstart
pip install django-money
# In settings.py
INSTALLED_APPS = [..., 'django-money', ...]
# In models.py
from django.db import models
class BankAccount(models.Model):
balance = MoneyField(max_digits=14, decimal_places=2, default_currency='USD')
Verify before relying
- Whether the abandoned status affects long-term compatibility with future Django/Python releases.
- Whether there are known issues or limitations not documented in the excerpt.
- Community fork or maintained alternative availability.
Package facts
| License | BSD permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 2 packagesDjangopy-moneyed |
| Maintenance | Abandoned 68 days since the last release |
| Last repo commit | repository archived |
| First released | |
| Downloads | 837,834 / month, #4,930 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableFramework :: DjangoFramework :: Django :: 4.2Framework :: Django :: 5.0Framework :: Django :: 5.1Framework :: Django :: 5.2Intended Audience :: DevelopersOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPy |
Evidence: django_money-3.6.1-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “django money field”
- django-moneyAdds Money and currency field types to Django models and forms,…
- py-moneyRepresents monetary amounts with currency-aware precision, enforcing…
- monarchmoneycommunityPython client library for querying and managing Monarch Money…
Give your agent the search over MCP, or paste the wish link into any chat.
More Application Frameworks packages
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.
Textual is a Python framework for building cross-platform user interfaces that run in the terminal or web browser using a modern, component-based API.
Install it if you're developing CLI tools, dashboards, or interactive terminal applications.
Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.
Install it if you are building CLIs in Python.
Build and connect to Model Context Protocol servers that expose tools, resources, and prompts to LLM applications over stdio, HTTP, or SSE transports.
Install it if you need to build or connect to servers.
Werkzeug is a WSGI utility library providing request/response objects, URL routing, an interactive debugger, HTTP utilities, and a development server for building web applications.
See also py-moneyed · py-money · ccy · prices · CurrencyConverter · monarchmoneycommunity · currency-symbols · mt-940 · django-add-default-value · django-colorfield