---
title: "Get Sender Profile API Reference"
description: "Fetch the DMT-Fino profile of a registered sender by mobile number."
canonical: "https://eps.eko.in/docs/dmt-get-sender"
---


> **Canonical URL:** https://eps.eko.in/docs/dmt-get-sender
> This is a machine-readable Markdown version of the page for AI agents and LLMs. The primary (HTML) version lives at the canonical URL above.

# Get Sender Profile API Reference

`GET https://staging.eko.in/ekoapi/v3/customer/payment/dmt-fino/sender/{customer_id}`

Fetch the DMT-Fino profile of a registered sender by mobile number.

The first step in the DMT flow. Call this to check whether a customer is already registered as a DMT sender. If the sender exists, the response returns their profile and remaining transfer limits so you can skip registration. If not found (response_status_id 463), proceed to Onboard Sender.

> View product & pricing details: [Domestic Money Transfer (DMT)](https://eps.eko.in/products/dmt-api.md)

## Path parameters

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| customer_id | string | yes | Sender's 10-digit mobile number. e.g. 9123456789 |

## Query parameters

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| initiator_id | string | yes | Registered mobile number of the API user (see Platform Credentials). e.g. 9962981729 |
| user_code | string | yes | User code of the retailer/agent the service is run for. e.g. 20810200 |

## Headers

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| developer_key | string | yes | Static API key issued to your account after KYC. |
| secret-key | string | yes | Dynamic per-request signature: base64(HMAC-SHA256(timestamp, base64(access_key))). |
| secret-key-timestamp | string | yes | Current time in milliseconds since UNIX epoch, used to compute secret-key. Must match server time. |
| content-type | string | yes | application/json e.g. application/json |

## Response

⭐ marks fields highlighted as verifiable.

| Field | Type | Description |
| --- | --- | --- |
| status | number | Primary success indicator (0 = success). |
| message | string | Human-readable response / error message. |
| response_status_id | number | Granular status id; see the shared error-codes table. |
| response_type_id | number | A unique id for every possible response shape (success or error) — useful for client logic branching and analytics. |
| data | object | API-specific response payload. |
| data.customer_id | string | Sender's mobile number (echoed back). |
| data.name ⭐ | string | Registered name of the sender. |
| data.dob | string | Date of birth in YYYY-MM-DD format. |
| data.kyc_verified | boolean | Whether the sender has completed eKYC verification. |
| data.available_limit ⭐ | number | Remaining transfer limit for the current month (in INR). |
| data.used_limit | number | Transfer amount already used this month (in INR). |
| data.monthly_limit | number | Total allowed monthly transfer limit for this sender (in INR). |
| data.state | number | Sender account state: 0=Active, 10=Pending verification. |

## Example response

```json
{
  "status": 0,
  "response_status_id": 0,
  "message": "Customer found",
  "response_type_id": 1388,
  "data": {
    "customer_id": "9123456789",
    "name": "Ramesh Kumar",
    "dob": "1990-05-15",
    "kyc_verified": true,
    "available_limit": 25000,
    "used_limit": 0,
    "monthly_limit": 25000,
    "state": 0
  }
}
```

## Error scenarios

| Status | Scenario |
| --- | --- |
| 200 | Sender not found — proceed to Onboard Sender |
