---
title: "Direct Refund API"
method: POST
path: "/?directRefund"
---

# Direct Refund API

`POST /?directRefund`

## Request body

- object
  - `appid` string, required — Merchant APP ID (Alphanumeric - Length of 32 chars and special chars $@%#)
  - `appkey` string, required — Merchant APP KEY (Alphanumeric - Length of 32 chars and special chars $@%#)
  - `epi` string, required — EPI is an end point identifier, Identify the device on valor infrastructure, it's a 10 digit number starts with 2
  - `txn_type` string, required — Txn type should be "direct-refund"
  - `amount` string, required — Transaction amount - Maximum amount $99,999.99 (Ex: 0.1 to 99,999.99). A request should not be sent when the amount is 0. The amount must be greater than zero
  - `customername` string — Customer field must contain a maximum of 100 characters and may include only alphanumeric characters.
  - `phone` string — Customer phone number- 10 digit Numeric (Ex: 5247896523)
  - `card_holder_name` string — Name of the cardholder - Alphabet (Max length of 25 chars)
  - `pan` string, required — Customer card number 15 to 19 digits
  - `expiry_date` string, required — Card expiry date, Accepted expiry MMYY & MM/YY (The expiration date must be exactly 4 characters long, consisting of a 2-digit month (with a leading zero if necessary) followed by a 2-digit year (e.g., "0526"))
  - `cvv` string — Card Verification Value should be 3 or 4 digits (Ex: 999, 9997)
  - `email` string — Customer email id - Varchar (Ex: test@domain.com, Max length of 50 chars)
  - `descriptor` string
  - `invoicenumber` string — Invoice number is a unique number assigned (Alphanumeric - Max length of 12 chars)
  - `orderdescription` string — Add the order description - Optional (Alphanumeric - Max length of 50 chars)
  - `qb_sync` string
  - `surchargeIndicator` string, required — The value '0' represents a transaction being ran on the traditional MID with no custom fee added, while '1' represents a transaction being ran on the cash discounting MID with the custom fee added
  - `s_street_no` string — Shipping address street number - Number with hyphen (Ex: 1-95)
  - `b_street_no` string — Billing address street number - Number with hyphen (Ex: 1-95)
  - `b_customerName` string — Billing address customer name - Alphabet (Max length of 25 chars)
  - `uuid` string, required — 2FA request uuid (Max length of 50 chars)
  - `otp` string, required — Direct refund OTP (Ex: 500654, Max length of 6 chars)
  - `otp_app_id` string, required — Refund OTP API Id
  - `otp_api_key` string, required — Refund OTP APP Key
  - `additional_prompts` object[]
    - `PROMPT_NAME` string — The prompt name should allow up to maximum 30 characters
    - `PROMPT_VALUE` string — The prompt value should allow up to maximum 30 characters

## Response `200`

200

- object

## Other responses

- `400` — 400

---

[API](https://skmtc.net/valorpaytech/apis/ecommerce-api.md) · [All operations](https://skmtc.net/valorpaytech/apis/ecommerce-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/valorpaytech/ecommerce-api/revisions/c6468b606325/schema)
