Refunds & Disputes
Process refunds and manage chargebacks.
Processing Refunds
- Open the booking with the payment to refund
- Click Refund on the payment transaction
- Choose full or partial refund
- Review the refund preview showing the amount to be returned
- Confirm the refund
Refunds are processed through Stripe back to the customer's original payment method. Processing time depends on the customer's bank (typically 5--10 business days).
Refund Types
| Type | Description |
|---|---|
| Full | Refunds the entire remaining refundable amount on the transaction |
| Partial | Refunds a specific amount, leaving the rest of the payment intact |
Partial Refund Amount Types
When issuing a partial refund, you can specify the amount in two ways:
| Amount Type | Description |
|---|---|
| Dollar | A fixed dollar amount to refund (e.g., $25.00) |
| Percent | A percentage of the remaining refundable amount (e.g., 50%) |
Refund Methods
Resytech supports two refund methods depending on how the original payment was made:
| Method | When Used | Description |
|---|---|---|
| Stripe | Original payment was a card transaction | Refund is processed through Stripe back to the original card. Requires the PaymentIntent ID. |
| Manual | Original payment was cash, check, or other non-card method | Refund is recorded in the system. The actual return of funds is handled outside Resytech. |
Stripe Refund Details
For Stripe refunds, the system validates the following before processing:
- The payment intent status must be
succeeded - The charge must not already be fully refunded
- The refund amount cannot exceed the remaining refundable balance (captured minus already refunded)
The refund preview shows a breakdown:
| Field | Description |
|---|---|
| Refundable Amount | Maximum amount that can still be refunded on this transaction |
| Intent Amount | The original charge amount |
| Collected Amount | The amount that was actually captured |
| Application Fee Amount | The platform fee that was collected |
| Operator Charge Amount | The amount that went to your Stripe account (collected minus application fee) |
You can optionally choose to refund application fees along with the payment. If enabled, the platform fee is refunded proportionally to the refund amount.
Manual Refund Details
Manual refunds support the following fields:
| Field | Required | Description |
|---|---|---|
| Refund Method | No | How the refund was returned (e.g., "cash", "check") |
| Reference ID | No | External reference (check number, etc.). Auto-generated if not provided. |
| Reason | No | Reason for the refund |
| Notes | No | Additional notes for internal tracking |
| Add to Balance | Yes | Whether to add the refund amount back to the booking balance (default: yes) |
Manual refund reference IDs are auto-generated in the format REF-{YYYYMMDD}-{RANDOM} if not provided.
Cancellation Refunds
When a booking is canceled, refunds can be processed automatically based on the cancellation policy. The system supports processing multiple refund requests in a single cancellation, splitting across both Stripe and manual refunds as needed. If a single payment does not have enough refundable balance, the system automatically splits the refund across multiple payments.
Partial Refunds
For partial refunds, enter the specific amount to refund. This is useful for:
- Removing a single line item from a multi-item booking
- Applying a discount after the fact
- Goodwill credits
- Cancellation policies that refund a percentage of the total
A single payment can be partially refunded multiple times until the full amount has been returned. The system tracks existing refunds for each payment and prevents over-refunding.
Chargeback & Dispute Management
When a customer files a chargeback with their bank:
- Resytech alerts you in the dashboard and marks the transaction as disputed
- Evidence is automatically gathered from multiple sources
- You can review and supplement the evidence
- The dispute response is submitted to Stripe
Automatic Evidence Collection
Resytech automatically compiles a comprehensive evidence document that includes:
| Evidence Category | Details Collected |
|---|---|
| Customer Information | Name, email, IP address, phone number |
| Booking Details | Confirmation code, activity, date/time, location, status |
| Payment Verification | CVC check result, address verification, postal code check, 3D Secure status |
| Risk Assessment | Stripe risk score (0--99), risk level, network status, outcome type |
| Waiver Evidence | Signed waivers with timestamps, signer IP addresses, and waiver names |
| Service Delivery | Whether service was delivered, delivery confirmation date |
| Billing Address | Full billing address from the payment method |
| Access Activity Log | Booking creation time, IP address, booking source, browser fingerprint, user agent |
Evidence Submission
The evidence is compiled into a PDF document and uploaded to Stripe as dispute evidence. The submission includes:
- Service documentation -- The compiled evidence PDF
- Receipt -- Attached as proof of the transaction
- Customer communication -- Included if waiver submissions exist
- Product description -- Activity name, date, time, location, and confirmation code
- Uncategorized text -- Risk assessment details, security verification results, and waiver evidence
You can choose to submit immediately to the bank or stage for review before submission. Evidence files are retained for 60 days.
Resytech helps you respond to disputes quickly with pre-compiled evidence, improving your chances of winning the case.
Related How-To Guides
- Issue a Refund -- Step-by-step guide to processing refunds
- Handle Payment Disputes -- Respond to chargebacks effectively
- Adjust Booking Pricing -- Set a custom grand total using Pricing Override
