top of page

Capture an authorization

Submit a previously authorized payment for the intended capture amount.

Prerequisites

You need the payment ID returned by authorization. The requested amount must not exceed the original authorized amount. A capture acts on that existing payment; it is not another token sale.

Capture request

Replace the path placeholder with the authorization payment ID. The example follows the numeric field type in the endpoint reference. POST /api/v5/payments/<payment-id>/capture HTTP/1.1 Host: sandbox.nmi.com Authorization: <sandbox-private-key> Content-Type: application/json { "amount": 10.0 } Sandbox verified 2026-10-16: full and partial capture of synthetic-card authorizations passed; captured test payments were voided before settlement.

Field guide

The capture endpoint requires the payment identifier in its path and amount in the JSON body. Field Placement Meaning payment_id Path Gateway ID from authorization. amount JSON body Amount to capture, equal to or below the authorization. tracking_number JSON body, optional Shipment tracking reference where applicable.

Recommended capture controls

Perform the capture from a server operation tied to fulfillment. Protect it from repeated job execution and simultaneous staff actions. Load the order and its recorded authorization. Confirm the intended capture amount and currency in your own ledger. Submit once and record the returned outcome. Reconcile the gateway record before retrying an ambiguous attempt.

What to test

Exercise full and smaller captures, an amount above the authorization, an unknown payment ID and a network interruption. Record the actual processor behavior for canceled or expired authorizations. A successful capture response does not replace reconciliation with settlement records.

Join the community and get the latest biz news & tips

Thanks for submitting!

© 2025 Betterpay. All Rights Reserved.

bottom of page