---
title: "Elevate Per-Transaction Limit"
method: POST
path: "/v1/issuing/cards/{id}/elevate_limit"
tags: ["Card Add-ons"]
---

# Elevate Per-Transaction Limit

`POST /v1/issuing/cards/{id}/elevate_limit`

<a href="/card-issuance/v1.6/guide/card-products" style={{display:'inline-block',padding:'2px 10px',borderRadius:'9999px',fontSize:'12px',fontWeight:600,lineHeight:'18px',background:'#EEF2FF',color:'#4338CA',border:'1px solid #C7D2FE',textDecoration:'none'}}>Personal Visa only</a>

Temporarily raise the per-transaction limit on an `ACTIVE` card without an approval flow. The elevated limit auto-reverts to the card's standard per-transaction limit when the elevation expires; the card's long-term limit settings stay unchanged.

**Per-currency caps**

| Currency | Maximum elevated per-transaction limit |
|---|---|
| USD / XUSD | 80,000 |
| SGD | 100,000 |

**Concurrency**

A card can hold only one elevation in `processing` or `active` state at a time. Submitting another request while one is still in effect returns `400`.

**Fields managed by the server (do not send in the request body)**

| Field | Reason |
|---|---|
| `currency` | Resolved from the card's currency. |
| `intent` | Fixed by the server to an internal enum. |
| `reason` | Not accepted. |

**Asynchronous result**

The synchronous response only acknowledges the request and returns `order_status: PENDING`. The final outcome is delivered via the [`card.elevate_limit.succeeded`](/card-issuance/v1.6/webhooks/card-elevate-limit) or [`card.elevate_limit.failed`](/card-issuance/v1.6/webhooks/card-elevate-limit) webhook. Match the webhook to the request by `card_id` — a card can only have one elevation in flight at a time.

## Path parameters

- `id` string, uuid, required

## Headers

- `x-on-behalf-of` string
- `x-idempotency-key` string, uuid

## Request body

- ElevateLimitRequest
  - `limit_amount` number, required — The new per-transaction limit to apply, denominated in the card's currency. Must be greater than `0`, up to two decimal places, and within the per-currency cap (`80000` for USD/XUSD, `100000` for SGD).
  - `duration_in_days` integer — Number of days the elevation remains in effect. When the elevation expires, the per-transaction limit auto-reverts to the card's standard cap.

## Response `200`

Elevation request accepted. Listen on the webhook for the final result.

- ElevateLimitResponse
  - `card_id` string, required — Unique identifier for the card.
  - `card_order_id` string, required — ID of the card order.
  - `order_status` 'PENDING', required — Always `PENDING` on a freshly accepted elevation request. Listen on the [`card.elevate_limit.succeeded`](/card-issuance/v1.6/webhooks/card-elevate-limit) or [`card.elevate_limit.failed`](/card-issuance/v1.6/webhooks/card-elevate-limit) webhook for the terminal outcome.

---

[API](https://skmtc.dev/uqpay/apis/authentication-api.md) · [All operations](https://skmtc.dev/uqpay/apis/authentication-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/uqpay/authentication-api/revisions/cef532a10777/schema)
