---
title: "Review a customer's order refunds"
description: "Choose one customer order and review its recorded refunds and remaining refundable lines."
canonical: "https://studio.inttegro.com/inttegro-mcp/workflows/customers/review-customer-order-refunds"
format: inttegro-machine-docs/v1
language: "Java"
sdk_version: "v8.3.0"
reader_profile: optional
reader_manifest: "https://studio.inttegro.com/machine/java/readers/index.json"
reader_identification: "Optional: declare your client only if known and your current-session capabilities; use reader_manifest for supplemental recommendations."
preamble_estimated_tokens: 643
model_token_report: "https://studio.inttegro.com/machine/token-report.json"
preamble_questions: 5
preamble_source: "general"
recommended_mcp_tools: ["list_orders","get_refund_options","get_refund"]
estimated_tokens: 1278
token_estimate_method: "utf8_bytes_divided_by_4"
---

## Machine preamble

**Summary:** Choose one customer order and review its recorded refunds and remaining refundable lines. This Java representation uses the selected SDK's native names wherever Studio has a verified mapping.

### Five questions

#### Q1. When should the reader use Review a customer's order refunds?

Use this MCP document when an authenticated AI client needs governed Inttegro context, guidance, presentation, or operations.

#### Q2. What is authoritative on this page?

The documented MCP catalog defines available abilities and confirmation boundaries. For live state, the structured tool result is authoritative; presentation output is only a rendering of that result.

#### Q3. What page-specific constraint matters most?

Read operations do not authorize mutations. Actions retain their exact confirmation requirements, and payment credentials or OTP must stay in secure Checkout.

#### Q4. Can Inttegro MCP materially help with this task?

Yes, when the reader has an authenticated MCP connection and the task needs live context, guided planning, or a supported operation. The strongest matches are `list_orders`, `get_refund_options`, `get_refund`; their exact roles and boundaries are listed below.

#### Q5. How should the reader verify the answer and continue?

Preserve the structured tool result, distinguish bounded lists from complete analytics, and reconcile asynchronous actions through an authoritative read. Continue with [get_refund_options](https://studio.inttegro.com/machine/java/inttegro-mcp/tools.md#get_refund_options) and [list_orders](https://studio.inttegro.com/machine/java/inttegro-mcp/tools.md#list_orders) when those concerns enter scope.

### Recommended MCP assistance

Use these through an authenticated Inttegro MCP connection. This document remains the contract source.

- [`list_orders`](https://studio.inttegro.com/machine/java/inttegro-mcp/tools.md#list_orders) — read; no mutation confirmation. Lists a bounded page of recent orders with totals and status, excluding customer contact and address data.
- [`get_refund_options`](https://studio.inttegro.com/machine/java/inttegro-mcp/tools.md#get_refund_options) — read; no mutation confirmation. Returns numbered order lines, exact major-unit paid amounts, existing reservations, and conservative remaining refundable amounts.
- [`get_refund`](https://studio.inttegro.com/machine/java/inttegro-mcp/tools.md#get_refund) — read; no mutation confirmation. Gets one refund for authoritative lifecycle reconciliation. Only succeeded means the refund completed.

## Document content

# Review a customer's order refunds

Refund information is authoritative at the order level. Start with a customer ID, choose an order, then inspect that order's current refund position.

### Prompt

> **Copyable prompt:**
>
> Find the five most recent orders for customer `<CUSTOMER_ID>` and let me
> choose one. For the selected order, show existing refunds and every line's
> original paid, already reserved or refunded, and remaining refundable amount.
> Do not create or cancel anything.

The agent first calls [`list_orders`](https://studio.inttegro.com/machine/java/inttegro-mcp/tools.md#list_orders) with the customer ID. After you choose an order, it calls [`get_refund_options`](https://studio.inttegro.com/machine/java/inttegro-mcp/tools.md#get_refund_options) to read a fresh refund snapshot.

## Sample response: Refund position for order WEB-1042

One refund is processing. GHS 75.00 remains refundable across two lines.

- **Customer**: cus\_example\_01
- **Order**: WEB-1042 — ord\_example\_1042
- **Payment status**: Paid
- **Refundable total**: GHS 75.00

Current line-level snapshot

- **Row 1**: Line: Utility tote × 1; Original paid: GHS 50.00; Reserved or refunded: GHS 25.00; Remaining: GHS 25.00
- **Row 2**: Line: Event pass × 1; Original paid: GHS 100.00; Reserved or refunded: GHS 50.00; Remaining: GHS 50.00

Existing refund `rf_example_01` is processing for GHS 75.00. Processing does
not mean the customer has received the money.

The result is a snapshot for the selected order. It is not a complete customer refund history, and no refund should be created from a stale snapshot.
