Unreferenced Refund (Card Present)
Process an unreferenced refund without a matching completed sale or capture transaction using a physical payment terminal where the card is present.
Note regarding Unreferenced Refunds - Unreferenced refunds are refunds that do not require a previously completed payment transaction to be referenced. They are only available on certain accounts by request to support@integratedcommerce.io.
Webhook Events
The following webhook events will be triggered during the refund process:
refund.completed
- when an unreferenced refund is completed.token.created
- when a card is tokenized and stored as a payment method.
Body
Required
The request to process an unreferenced refund using a physical payment terminal.
-
amount
number(uint32) Required The requested amount to refund.
Minimum value is
1
, maximum value is999999999
. -
paymentMethodId
string The ID of the physical payment terminal that will process this Card Present unreferenced refund.
- Example format:
pmt_trm_01JRZPTMTBN41PC3VPQNZ5T3HF
- OPTIONAL ONLY if you have a single terminal configured
- REQUIRED if you have multiple physical terminals configured
You can retrieve all available physical payment terminal IDs for your account using the
GET /payment-methods
endpoint. - Example format:
-
invoiceNumber
string An optional alphanumeric invoice number for this transaction. If provided, the same value will be populated in the response.
Maximum length is
100
. -
orderNumber
string An optional alphanumeric order number for this transaction. If provided, the same value will be populated in the response.
Maximum length is
100
. -
referenceId
string An optional custom reference ID for this transaction. Include this if you want to use your own reference system for linking transactions together (for example, when processing captures and refunds). If provided, this value must be unique per merchant. The reference ID can be used for processing captures and referenced refunds by including it in the originalReferenceId field of subsequent transactions. If not provided, a unique reference ID will be generated automatically by the system.
Maximum length is
100
.
curl \
--request POST 'https://api.omni.integratedcommerce.io/v1/transactions/unreferenced-physical-refund' \
--header "x-api-key: $API_KEY" \
--header "Content-Type: application/json" \
--data '{"amount":1000,"orderNumber":"order_number_1234","referenceId":"ref_s192i49i","invoiceNumber":"inv_12345678","paymentMethodId":"pmt_trm_01JRZPTMTBN41PC3VPQNZ5T3HF"}'
{
"amount": 1000,
"orderNumber": "order_number_1234",
"referenceId": "ref_s192i49i",
"invoiceNumber": "inv_12345678",
"paymentMethodId": "pmt_trm_01JRZPTMTBN41PC3VPQNZ5T3HF"
}
{
"id": "trx_01J2F0ZJ2JW5B63CJFPXRGAB1S",
"type": "Refund",
"receipt": {
"lines": [
" Test Merchant ",
" 300 S Wacker ",
" Loop, ",
" ",
" ",
"TERM # 11000367",
"RECORD # 0656191",
"HOST INVOICE # 000038",
"HOST SEQ # 1720656191",
"MERCH INVOICE. fgj24344",
"------------------------",
"CARD ************0011",
"VISA Contact",
"07/10/2024 20:03:05",
"------------------------",
" REFUND ",
" ",
"TOTAL USD $10.00",
"------------------------",
"AUTH#:000AAA B:171",
" ",
" APPROVED 00 ",
" THANK YOU ",
" ",
" Visa Credit ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" MERCHANT COPY ",
" Test Merchant ",
" 300 S Wacker ",
" Loop, ",
" ",
" ",
"TERM # 11000367",
"RECORD # 0656191",
"HOST INVOICE # 000038",
"HOST SEQ # 1720656191",
"MERCH INVOICE. fgj24344",
"------------------------",
"CARD ************0011",
"VISA Contact",
"07/10/2024 20:03:05",
"------------------------",
" REFUND ",
" ",
"TOTAL USD $10.00",
"------------------------",
"AUTH#:000AAA B:171",
" ",
" APPROVED 00 ",
" THANK YOU ",
" ",
" Visa Credit ",
" ",
" ",
" ",
" ",
" ",
" ",
" ",
" CUSTOMER COPY "
]
},
"timestamp": "2025-05-27T18:49:31Z",
"resultCode": 0,
"resultText": "Successful transaction request",
"orderNumber": "order_number_1234",
"referenceId": "ref_s192i49i",
"invoiceNumber": "inv_12345678",
"paymentMethod": {
"id": "pmt_trm_01JRZPTMTBN41PC3VPQNZ5T3HF",
"type": "Physical",
"currency": "USD",
"description": "Main Store Terminal"
},
"approvedAmount": 1000,
"requestedAmount": 1000
}
{
"code": 2000,
"status": "Rejected",
"message": "One or more validation errors occurred.",
"traceId": "1-6838bcce-5c0074e82ac7170d4f990d87",
"timestamp": "2025-05-29T20:00:15.5752808Z",
"errorDetails": [
{
"code": 2000,
"field": "Amount",
"details": "The Amount field must be a positive number between 1 and 999999999.",
"message": "Request validation failed"
}
]
}
{
"code": 1000,
"status": "Rejected",
"message": "Invalid or missing API key",
"traceId": "1-6838be96-74c62f8e2804352739e63476",
"timestamp": "2025-05-29T20:07:50.4723483Z",
"errorDetails": []
}