Skip to main content

EPS Python SDK

Backend-only Python client for Eko Platform Services APIs — DMT, AePS, BBPS, KYC and verification — with HMAC request signing built in.

pip install eps-sdk
from eps_sdk import EpsClient

client = EpsClient(
    developer_key="<your_developer_key>",
    access_key="<your_access_key>",
    environment="sandbox",      # or "production"
    initiator_id="9962981729",  # registered mobile of the API user
    user_code="20810200",       # retailer/agent code
)

sender = client.call("dmt-get-sender", {"customer_id": "9123456789"})

One generic call(slug, params) covers every endpoint. The slug list, each endpoint's params and which of them are required all come from the same generated API surface the docs are built from, so the client validates your input before it signs and sends anything.

Backend only

access_key signs every request. Never run this in anything a browser can reach — a leaked access key lets anyone transact as you.

What it does for you

  • Signs the requestsecret-key, secret-key-timestamp and developer_key headers on every call.
  • Validates first — missing required params and wrong types raise EpsError before a request goes out.
  • Routes the params — path tokens, query string, JSON body, or multipart/form-data for file-upload endpoints, per the endpoint's spec.
  • Fails loudly — a non-2xx response raises EpsHttpError (with the decoded envelope on .body); a non-JSON body raises rather than returning {}.

Files can be a path or an in-memory pair:

client.call("activate-aeps-fingpay", {
    "pan_card": "/path/to/pan.jpg",
    "aadhar_front": ("aadhar.jpg", image_bytes),
    # ...
})

Zero dependencies

Standard library only (urllib, hmac, json). Nothing to keep patched.

Development

The runtime asset data/sdk-surface.json is generated from the API specs, not committed. From the repo root:

npm run build                            # bakes data/sdk-surface.json
cd packages/sdk-python
PYTHONPATH=src python3 -m unittest discover -s tests

The test suite is the cross-language conformance suite described in docs/sdk-golden-vector.md — the same cases the Node.js and PHP SDKs must pass.

MIT licensed.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

eps_sdk-1.0.0.tar.gz (16.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

eps_sdk-1.0.0-py3-none-any.whl (14.4 kB view details)

Uploaded Python 3

File details

Details for the file eps_sdk-1.0.0.tar.gz.

File metadata

  • Download URL: eps_sdk-1.0.0.tar.gz
  • Upload date:
  • Size: 16.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for eps_sdk-1.0.0.tar.gz
Algorithm Hash digest
SHA256 8bc360c48f6214ec836614c6bd7ae1f4059f237bd987647b189b1dd819d70cd7
MD5 0928b43b2b23b8251e6aef6e88569595
BLAKE2b-256 ae5ecce59d6e39b952bd4d755011c53df23bb86ab0ea65bfa6da327c46f15c7d

See more details on using hashes here.

Provenance

The following attestation bundles were made for eps_sdk-1.0.0.tar.gz:

Publisher: release.yml on ekoindia/eps-platform

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file eps_sdk-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: eps_sdk-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 14.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for eps_sdk-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 4e5e7fb0793dfb6d736ca6b54fd7d90bb2b92fdf8352e9e6bd55fc9c4dc715db
MD5 6e998e27e892c78b2af118576cee1767
BLAKE2b-256 e4908881a1184c58c70dc9c098d69384f4f065b4a52fc5bf3be649ea93a76f8a

See more details on using hashes here.

Provenance

The following attestation bundles were made for eps_sdk-1.0.0-py3-none-any.whl:

Publisher: release.yml on ekoindia/eps-platform

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

1.0.1

2 files

This release

1.0.0 This release

2 files

0.1.0

2 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