---
title: Bank Transfer / ECMS — Overview
slug: payments-e-challan
sidebar_label: Overview
excerpt: >-
  Accept payments via Bank Transfer using Electronic Cash Management Services
  (ECMS) with unique customer identifiers and challan generation.
sidebar_order: 0
hidden: false
metadata:
  title: Bank Transfer / ECMS Overview — Challan Payments | Pine Labs
  description: >-
    Generate e-challans with unique customer identifiers for IMPS, NEFT, and
    RTGS payments. Simplify fund transfers through Electronic Cash Management
    Services with online or offline bank payments.
  keywords: >-
    bank transfer, ECMS, e-challan, challan payments, IMPS, NEFT, RTGS,
    electronic cash management, Pine Labs
  robots: index
---

## Bank Transfer / Electronic Cash Management Services

Generate e-challans and assign unique customer identifiers to simplify fund transfers via IMPS, NEFT, or RTGS.

Electronic Cash Management Services (ECMS) is a payment mode that assigns a unique customer identifier ID to each payer and provides a challan with payment details. Customers make payments using the challan details through their bank — online or offline.

[Integration steps](payments-e-challan/integration-steps)  |  [Use cases](payments-e-challan/use-cases)  |  [API reference](/api/e-challans)

---

## How it works

```mermaid
sequenceDiagram
    participant C as Customer
    participant M as Your App
    participant P as Pine Labs Online
    participant B as Customer's Bank

    C->>M: Select Bank Transfer at checkout
    M->>P: Create Order API
    P-->>M: Order created
    M->>P: Create Challan API
    P-->>M: Challan with customer identifier
    M-->>C: Display challan / download option

    alt Online payment
        C->>B: Add customer identifier as beneficiary
        C->>B: Transfer via IMPS / NEFT / RTGS
    else Offline payment
        C->>B: Present challan at bank branch
        B->>B: Process transfer
    end

    B-->>P: Payment confirmation
    P-->>M: Webhook — ORDER_PROCESSED
```

---

## Challan details

The generated challan includes:

| Field | Description |
|---|---|
| **Merchant name** | Your business name |
| **Amount** | Payment amount including convenience fee (if applicable) |
| **Date of generation** | When the challan was created |
| **Payment reference ID** | Challan identifier |
| **Customer identifier** | Unique ID for adding as beneficiary |
| **IFSC code** | Bank branch code for transfers |
| **Expiry date** | Deadline for completing payment |

---

## Key features

| Feature | Description |
|---|---|
| **Unique customer identifier** | Each customer gets a persistent ID — add once, pay anytime |
| **Online + offline** | Pay via NetBanking (IMPS/NEFT/RTGS) or at a bank branch |
| **Convenience fee** | Calculate and pass convenience fees using the [Calculate Convenience Fee API](/api/convenience-fee/calculate-convenience-fee) |
| **Split settlement** | Automatic distribution of settlement amounts to multiple entities |
| **Easy reconciliation** | Unique identifiers simplify payment tracking and matching |
| **Challan download** | Retrieve and download challans via Get Challan and Get Challan PDF APIs |

---

## Payment methods

Customers can complete the transfer using:

| Method | Type | Settlement speed |
|---|---|---|
| **IMPS** | Online | Near-instant |
| **NEFT** | Online | Within 2 hours (batch) |
| **RTGS** | Online | Real-time (≥ ₹2 lakh) |
| **Bank branch** | Offline | Varies |

---

## FAQ

<details>
<summary>Can a customer reuse their customer identifier?</summary>

Yes. The unique customer identifier is persistent — customers add it once as a beneficiary and can make multiple payments using the same ID.
</details>

<details>
<summary>What happens if the customer doesn't pay before the challan expires?</summary>

The challan expires and the order is marked as failed. You can generate a new challan for the customer.
</details>

<details>
<summary>Can I add convenience fees to ECMS payments?</summary>

Yes. Use the [Calculate Convenience Fee API](/docs/convenience-fees) to compute the fee, then pass the breakdown in the Create Challan API.
</details>

