Overcapture
Overview
In card payments, Over Capture occurs when a merchant captures (settles) an amount greater than the originally authorized amount.
This is particularly useful in scenarios such as:
- Additional charges (e.g., shipping, handling, gratuities).
- Price adjustments made after initial authorization.
- Reducing the risk of under-capturing when final order values differ.
Enabling Over Capture
1. Profile-level Configuration (via Dashboard)
- Navigate to:\ Developer โ Payment Settings โ Always Enable Over Capture
- Toggle Enable/Disable as required.
2. Per-request Configuration (via API)
Use the boolean field enable_overcapture in your payment request.
This can be passed in:
โ ๏ธ Note:
- The request-level
enable_overcapturewill override the profile-level setting. - Over Capture is only applicable for manual capture payments i.e.
capture_method = manual.
Example: API Request
curl --location 'https://sandbox.hyperswitch.io/payments' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'api-key: <your_publishable_key>' \
--data '{
"amount": 100,
"currency": "USD",
"confirm": true,
"capture_method": "manual",
"enable_overcapture": true,
}'
Example: API Response
{
"payment_id": "pay_GPnTPs4e56yZ8FKAcj0K",
"status": "requires_capture",
"amount": 100,
"amount_capturable": 100,
"connector": "adyen",
"enable_overcapture": true,
"is_overcapture_enabled": true,
"capture_method": "manual",
"payment_method": "card",
"payment_method_type": "debit",
"network_transaction_id": "112181545921495",
"created": "2025-09-24T11:29:55.629Z",
"expires_on": "2025-09-24T11:44:55.629Z"
}
Field Semantics
enable_overcapture Indicates merchant intent.
| Value | Meaning |
|---|---|
true |
Over-capture requested |
false |
Over-capture not requested |
is_overcapture_enabled Indicates connector capability acceptance.
| Value | Meaning |
|---|---|
true |
Connector supports and enabled over-capture |
false |
Connector does not support over-capture |
Monitoring & Settlement
- After authorization, merchants can view the
amount_capturablefield (under More Payment Details) to see the maximum amount that can be captured. - Once the payment is captured (or overcaptured), the final amount will be reflected in the
amount_receivedfield.
Merchant Action
- Use Dashboard settings for global enablement
- Use API overrides for payment-specific enablement
- Monitor capturable and received amounts to track final settlements