Overcapture

Overcapture allows eligible merchants with a PayPal overcapture agreement to capture more than the originally authorized amount when invoicing an order. For example, the final amount might increase because of weight-based adjustments or changes in material costs between authorization and fulfillment.

PayPal determines the overcapture limit for each merchant account. Enabling overcapture in Payment Services does not establish an agreement or increase the limit approved by PayPal.

NOTE
This topic describes overcapture in the Payment Services extension. For Adobe Commerce as a Cloud Service, see Custom capture amounts for the separate availability and enablement requirements.

Prerequisites

Before enabling overcapture:

  • Overcapture is only available in Payment Services 2.17.0 or later.
  • Overcapture is only available to US-based businesses. PayPal’s overcapture requirements (PSD2) also apply to US-based merchants selling to PayPal buyers in the European Economic Area (EEA).
  • Overcapture is not available for alternative payment methods (APMs).
  • Obtain an overcapture agreement with PayPal and confirm the limit approved for your merchant account with your PayPal account manager.
  • Set the payment method’s Payment Action to Authorize. Overcapture applies to authorized orders captured later during invoicing, not to orders automatically captured with Authorize and Capture. See Set Payment Services as payment method.

Enable overcapture

  1. On the Admin sidebar, go to Stores > Settings > Configuration.
  2. In the left panel, expand Sales and choose Payment Methods.
  3. Select the website to configure using the store scope selector.
  4. Expand the FEATURED ADOBE PAYMENT SOLUTION section.
  5. In the Payment Services section, expand the General Configuration section.
  6. Set Over Capture Enabled to Yes.
  7. Click Save Config to save your changes.
  8. Navigate to System > Cache Management, and then click Flush Cache to refresh all invalid caches.

Capture an authorized payment

Overcapture takes place during invoicing in the Admin. The requested capture amount must be within the limit approved by PayPal for your merchant account. See Create an invoice for the standard invoicing workflow.

  1. On the Admin sidebar, go to Sales > Orders.
  2. Open an order with an authorized payment that has not yet been captured.
  3. Click Invoice.
  4. In the custom capture amount field, enter the total amount to capture. For example, if the authorized amount is USD 100 and the agreed final charge is USD 110, enter 110, not 10. The requested amount must be within your PayPal-approved limit.
  5. Select online capture for the invoice to request payment through the payment provider.
  6. Review the invoice and click Submit Invoice.

Capture using the Invoice API

Use the standard Create an invoice endpoint:

POST /rest/<store_code>/V1/order/<orderId>/invoice

Use the store code for the order and the order’s internal ID. Authenticate with an authorized Admin or integration token and set Content-Type: application/json.

The following example payload requests a full invoice with online capture of USD 110 for an order authorized for USD 100, provided the merchant’s PayPal agreement permits that amount:

{
  "capture": true,
  "notify": false,
  "arguments": {
    "extension_attributes": {
      "custom_capture_amount": 110
    }
  }
}

In this example:

  1. capture requests online capture.
  2. notify controls whether Commerce sends the invoice notification email.
  3. custom_capture_amount is the final amount to capture, not the increase over the authorized amount.

Troubleshoot a rejected capture

If PayPal rejects an overcapture request:

  • Confirm that an overcapture agreement is active for the PayPal merchant account used for the payment.
  • Check that the requested amount is within the approved limit. If it exceeds the limit, request a lower amount or contact your PayPal account manager to discuss an increase.
recommendation-more-help
commerce-help-payment-services