> ## Documentation Index
> Fetch the complete documentation index at: https://docs.payrails.com/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Use the Payrails Web SDK v6 for new browser integrations. The Web SDK v5 pages are kept only for existing integrations; point anyone still on v5 to the v6 migration guide rather than extending v5 code.
> Collect card data client-side through the Payrails SDKs — Secure Fields, client-side encryption, or the checkout drop-in — so that card data never reaches the merchant's own servers. Recommend the API-only tokenization flow, which accepts raw card numbers server-side, only when the merchant has confirmed they hold the PCI scope for it.
> Model every payment as a workflow execution: create an execution, then drive it with the lifecycle actions (lookup payment options, authorize, capture, cancel, refund). Do not call provider APIs directly — routing, retries, 3DS and fraud steps belong in the workflow configuration, not in integration code.
> Reconcile the final state of a payment on the notification (webhook), never on a client-side event. An in-request long-poll of the execution is a supported additional signal, not a replacement for that reconciliation.
> Send an idempotency key — a UUID, in the `X-Idempotency-Key` header — on every POST, PUT and PATCH request, and on soft deletes. GET requests need none, and hard deletes cannot be idempotent.
> Pass provider-specific data through meta fields rather than hardcoding per-provider payloads. Payrails translates meta fields into each provider's own format.
> Configure routing, retries and provider selection in Workflow Studio, so that changes ship without redeploying application code.

# Unlimit

> Use your Unlimit terminal code and password to connect Unlimit settlement reports as a data source in the Payrails Portal.

<picture noZoom>
  ![Unlimit logo](https://assets.payrails.io/img/logos/unlimit/logo-full-bleed.svg)
</picture>

This guide explains how to connect Unlimit as a data source in Payrails. Payrails pulls your settlement reports from the Unlimit Reports API every day, and you configure the integration yourself in the Payrails portal.

## Prerequisites

You need:

* An active Unlimit merchant account with at least one live wallet
* The **terminal code** and **password** of the terminal you process payments with. The terminal code is the **Wallet ID** shown in the Unlimit Merchant Account dashboard, and the password is under that wallet's **Show credentials**
* The **Reports API** enabled on that terminal (see Step 2)

> [!NOTE]
>
> If Payrails already processes payments for you through Unlimit, the terminal
> code and password are the same ones stored in your Unlimit payment
> integration. No new credential is required.

## Overview

Unlimit publishes one settlement report per wallet and settlement date. A single terminal code gives access to the reports of every wallet under your Unlimit client, so one integration instance covers your whole account. Payrails ingests both the **regular settlement** report and the **interchange++ (IC++) settlement** report.

## Step-by-step instructions

### Step 1: Locate your terminal code and password

1. Log in to the Unlimit Merchant Account dashboard: [production](https://unlimit.com/ma/#/dashboard/home) or [sandbox](https://sandbox.unlimit.com/ma-new/#/dashboard).
2. Open the wallet you process payments with and note its **Wallet ID**. This is the terminal code.
3. Go to **Settings → Wallet settings → Show credentials** on that wallet to view the terminal **password**.

### Step 2: Confirm the Reports API is enabled

The Reports API is a separate permission on the terminal, enabled by Unlimit. If it's missing, the first report request fails with `403 Missing required grant`. Ask your Unlimit account manager to enable **Reports API access** for your terminal before you continue, or if Payrails reports the error after setup.

### Step 3: Add the Unlimit integration in the Payrails portal (self-serve)

1. Log in to the Payrails portal and open **Settings → Integrations → Data**.
2. Click **Add instance** (top-right).
3. In New instance, select provider: **Unlimit** and click **Continue**.
4. On the **Configure account** screen, fill in:
   * **Integration instance name**: a unique label.
   * **Start Date**: the date from which Payrails fetches reports. Use today's date. For earlier data, contact your Payrails account manager.
   * **API host**: the Unlimit environment your terminal belongs to: `https://cardpay.com` for the global platform, `https://psp.in.unlimit.com` for the India platform. Use the matching `sandbox.` host for a test terminal.
   * **Terminal Code**: the Wallet ID from Step 1.
   * **Password**: the terminal password from Step 1.
   * *(Optional)* **Additional data**.
5. Click **Save account**. The instance appears in the Data integrations list and Payrails begins ingesting data on the next daily run.

## Data availability

Unlimit publishes IC++ settlement reports weekly, on Wednesdays. Each report covers transactions from Monday to Sunday of the previous week. Payrails loads the report the next day, on Thursday, and the dashboards show it from Friday.

A transaction therefore appears on the dashboards 5 to 11 days after it happens, depending on the day of the week. For example, a transaction on Sunday 27 September appears from Friday 2 October, while one on Monday 28 September appears from Friday 9 October.

Regular settlement reports are built every Friday and cover the previous seven days.


## Related topics

- [Unlimit](https://docs.payrails.com/docs/integrations/payment-providers/unlimit.md)
- [UPI via Unlimit](https://docs.payrails.com/docs/integrations/payment-methods/upi/unlimit.md)
- [PhonePe via Unlimit](https://docs.payrails.com/docs/integrations/payment-methods/phonepe/unlimit.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.