Skip to main content

xfingine

Python bindings for Xfingine — pure computation engines for personal finance planning.

Data in, arithmetic, data out. No UI, no network, no clock — the same input always produces the same output.

pip install xfingine

Usage

import xfingine

result = xfingine.compute_emi({
    "mode": "emi",            # "emi" | "tenure" | "loanAmount"
    "loanAmount": 5_000_000,
    "months": 240,
    "interestRate": 9,        # percent per year
    "inflationRate": 6,       # percent per year
    "start": "2026-01",       # optional, enables dates + per-year breakdown
})

result["emi"]                    # 44986    — the monthly payment
result["totals"]["nominalPaid"]  # 10796818 — rupees actually debited
result["totals"]["realPaid"]     # 6391327  — the same, in 2026 rupees
len(result["schedule"])          # 240 rows, month by month
len(result["years"])             # 20 rows, one per calendar year

Straight into a DataFrame:

import pandas as pd

df = pd.DataFrame(result["schedule"])
df[["year", "month", "emi", "principal", "interest", "realEmi"]].head()

There is a _json twin of every function for string in / string out:

xfingine.compute_emi_json('{"mode":"emi","loanAmount":5000000,"months":240,"interestRate":9}')

Invalid input raises ValueError with a readable message:

xfingine.compute_emi({"mode": "tenure", "loanAmount": 5_000_000,
                      "emi": 1000, "interestRate": 12})
# ValueError: monthly payment of 1000.00 does not cover the first month's
#             interest of 50000.00; the loan would never be repaid

Conventions

  • Money comes back as whole rupees (int).
  • Rates are percentages, not fractions: 9 means 9%.
  • All keys are camelCase.
  • Omit start and the engine reads no calendar — schedule rows carry no dates and years is empty.

Full documentation: github.com/sakthipriyan/xfingine

License

Apache-2.0

Release files for xfingine 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for xfingine 0.1.0
File Size Uploaded
xfingine-0.1.0.tar.gz 160.3 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for xfingine 0.1.0
File
xfingine-0.1.0-cp38-abi3-win_amd64.whl CPython 3.8 abi3 Windows x86-64 Details
xfingine-0.1.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.8 abi3 Linux glibc 2.17+ x86-64 Details
xfingine-0.1.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.8 abi3 Linux glibc 2.17+ ARM64 Details
xfingine-0.1.0-cp38-abi3-macosx_11_0_arm64.whl CPython 3.8 abi3 macOS 11.0+ ARM64 Details
xfingine-0.1.0-cp38-abi3-macosx_10_12_x86_64.whl CPython 3.8 abi3 macOS 10.12+ x86-64 Details

Total release size: 1.8 MB

Release files / xfingine-0.1.0.tar.gz

Download URL xfingine-0.1.0.tar.gz
Size 160.3 kB
Tags Source
SHA-256 checksum
How to use checksums
1574ae28ff4653e9836a13bfd84dd5b63373febb1719d441d37a58aa4fe628ba
BLAKE2b-256 checksum
How to use checksums
0bd4d998cd670f92e9d00a48a89c37fc803738647a72695ada23e1715810dd79
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 29, 2026.

Transparency log

Release files / xfingine-0.1.0-cp38-abi3-win_amd64.whl

Download URL xfingine-0.1.0-cp38-abi3-win_amd64.whl
Size 237.8 kB
Tags CPython 3.8 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
a425a878ba6a109eb715dcc2c6fbee8f88655e7710024c0cc0963d4e44f2ff93
BLAKE2b-256 checksum
How to use checksums
c2f07c4639597e012d29c271e768c7f9db9aceaab0e080a464c9eb8657c99b19
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 29, 2026.

Transparency log

Release files / xfingine-0.1.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL xfingine-0.1.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 387.9 kB
Tags CPython 3.8 Linux glibc 2.17+ x86-64 abi3
SHA-256 checksum
How to use checksums
4713993851d0afa0acc01678afcbf6e2a86eef49ae130bf2553ee8bbc83d0204
BLAKE2b-256 checksum
How to use checksums
ac2cd1c19268bbfb88ff85b2045dc7814260ed1854b2afb3d64ae62f9a1577af
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 29, 2026.

Transparency log

Release files / xfingine-0.1.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL xfingine-0.1.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 377.7 kB
Tags CPython 3.8 Linux glibc 2.17+ ARM64 abi3
SHA-256 checksum
How to use checksums
eec310ed3533f70cd82b2e3e92b6041f04a4e9dfa09d1a2918af9384dd14e9ad
BLAKE2b-256 checksum
How to use checksums
89df654ce9525a8857555d4dc6acdbf97f116981089185307b383c5eeded2add
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 29, 2026.

Transparency log

Release files / xfingine-0.1.0-cp38-abi3-macosx_11_0_arm64.whl

Download URL xfingine-0.1.0-cp38-abi3-macosx_11_0_arm64.whl
Size 335.7 kB
Tags CPython 3.8 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
ae68729c36bca4358b6c68bc16d74b6c485cd259db7ac2ce1eaa0ada8b8309b8
BLAKE2b-256 checksum
How to use checksums
8315a03df9e66708ee0540812426526820814830a09c9638597e40fedd97aa10
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 29, 2026.

Transparency log

Release files / xfingine-0.1.0-cp38-abi3-macosx_10_12_x86_64.whl

Download URL xfingine-0.1.0-cp38-abi3-macosx_10_12_x86_64.whl
Size 342.3 kB
Tags CPython 3.8 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
f619cd287f927fbe946a62a0e9bc10edb487281c1ae06d37df3dd3722c0aa45c
BLAKE2b-256 checksum
How to use checksums
c82c698d9e364b77b7d7378e44a6065fa3539ff8c421949fdf08f9758cb0aa7e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 29, 2026.

Transparency log

Release history Release notifications | RSS feed

0.1.1

6 release files

This release

0.1.0 This release

6 release files

0.0.2

6 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page