- [HTTP request](https://developers.google.com/pay/card-fop-v1/payment-integrator-card-fop-api/asynchronousCaptureFundsReservation#body.HTTP_TEMPLATE)
- [Request body](https://developers.google.com/pay/card-fop-v1/payment-integrator-card-fop-api/asynchronousCaptureFundsReservation#body.request_body)
  - [JSON representation](https://developers.google.com/pay/card-fop-v1/payment-integrator-card-fop-api/asynchronousCaptureFundsReservation#body.request_body.SCHEMA_REPRESENTATION)
- [Response body](https://developers.google.com/pay/card-fop-v1/payment-integrator-card-fop-api/asynchronousCaptureFundsReservation#body.response_body)
- [AsynchronousCaptureFundsReservationResponse](https://developers.google.com/pay/card-fop-v1/payment-integrator-card-fop-api/asynchronousCaptureFundsReservation#AsynchronousCaptureFundsReservationResponse)
  - [JSON representation](https://developers.google.com/pay/card-fop-v1/payment-integrator-card-fop-api/asynchronousCaptureFundsReservation#AsynchronousCaptureFundsReservationResponse.SCHEMA_REPRESENTATION)
- [AsynchronousCaptureFundsReservationResultCode](https://developers.google.com/pay/card-fop-v1/payment-integrator-card-fop-api/asynchronousCaptureFundsReservation#AsynchronousCaptureFundsReservationResultCode)

Initiates money movement by capturing funds that were previously reserved in a call to `https://developers.google.com/pay/card-fop-v1/payment-integrator-card-fop-api/reserveFunds#google.standardpayments.flows.card_fop_reserve_capture.v1.PaymentIntegratorCardReserveCaptureService.ReserveFunds`.

This initiates money movement by capturing funds that were previously reserved in a call to `https://developers.google.com/pay/card-fop-v1/payment-integrator-card-fop-api/reserveFunds#google.standardpayments.flows.card_fop_reserve_capture.v1.PaymentIntegratorCardReserveCaptureService.ReserveFunds`. The `reservationRequestId` specifies which funds reservation is to be captured. The amount captured can be less than or equal to the amount reserved but each reservation may only be captured once. The final result of the capture request is supplied by a call to `captureFundsReservationResultNotification`. The `requestId` within the header is the idempotency key and uniquely identifies this transaction. All mutations on this transaction (e.g. `asynchronousRefund`, `chargebackNotification`) populate this request's `requestId` value in their `captureRequestId` field.

If the endpoint encounters an error while processing the request, the response body from this endpoint should be of type `https://developers.google.com/pay/card-fop-v1/payment-integrator-card-fop-api/ErrorResponse`.

An example request looks like:


    {
      "requestHeader": {
        "protocolVersion": {
          "major": 1,
          "minor": 0,
          "revision": 0
        },
        "requestId": "G112YZH4XPDV88J",
        "requestTimestamp": "1481907920000"
      },
      "paymentIntegratorAccountId": "SpeedyPaymentsIndia_INR",
      "reservationRequestId": "G1MQ0YERJ0Q7LPM",
      "amount": "728000000"
    }

An example response looks like:


    {
      "responseHeader": {
        "responseTimestamp": "1481907920760"
      },
      "result": "ACKNOWLEDGED"
    }

### HTTP request

`POST https://www.integratorhost.example.com/integrator-base-path/v1/payment-integrator-card-fop-api/asynchronousCaptureFundsReservation`

### Request body

The request body contains data with the following structure:

| JSON representation |
|---|
| ``` { "requestHeader": { object (`https://developers.google.com/pay/card-fop-v1/payment-integrator-card-fop-api/RequestHeader`) }, "paymentIntegratorAccountId": string, "reservationRequestId": string, "amount": string } ``` |

| Fields ||
|---|---|
| `requestHeader` | ``object (`https://developers.google.com/pay/card-fop-v1/payment-integrator-card-fop-api/RequestHeader`)`` **REQUIRED**: Common header for all requests. |
| `paymentIntegratorAccountId` | `string` **REQUIRED**: This is the payment integrator account identifier that identifies contractual constraints around this transaction. |
| `reservationRequestId` | `string` **REQUIRED** : This is the `requestId` generated by Google during the `reserveFunds` call which this request is associated with. This call will capture the funds previously reserved by that request. |
| `amount` | `string (https://developers.google.com/discovery/v1/type-format format)` **REQUIRED**: The amount of the purchase, in micros of the currency unit specified in the prior funds reservation. This amount can be less than or equal to the amount specified in the prior funds reservation. An example situation when this would occur would be, if Google runs out of stock for one item in an order with multiple items. |

### Response body

This method supports multiple return types. For additional information about what 4XX or 5XX HTTP status code to return with an `ErrorResponse`, consult the `ErrorResponse` object and [HTTP status codes documentation](https://developers.google.com/pay/card-fop-v1/guides/connectivity/protocol-standards#http_status_codes).

| Possible response messages ||
|---|---|
| HTTP 200 Status | ``object (`https://developers.google.com/pay/card-fop-v1/payment-integrator-card-fop-api/asynchronousCaptureFundsReservation#AsynchronousCaptureFundsReservationResponse`)`` |
| HTTP 4XX / 5XX Status | ``object (`https://developers.google.com/pay/card-fop-v1/payment-integrator-card-fop-api/ErrorResponse`)`` |
| End of mutually exclusive fields. ||

## AsynchronousCaptureFundsReservationResponse

Response object for the payment integrator hosted card-fop-v1.asynchronousCaptureFundsReservation method.

| JSON representation |
|---|
| ``` { "responseHeader": { object (`https://developers.google.com/pay/card-fop-v1/payment-integrator-card-fop-api/ResponseHeader`) }, "result": enum (`https://developers.google.com/pay/card-fop-v1/payment-integrator-card-fop-api/asynchronousCaptureFundsReservation#AsynchronousCaptureFundsReservationResultCode`), "paymentIntegratorCaptureId": string } ``` |

| Fields ||
|---|---|
| `responseHeader` | ``object (`https://developers.google.com/pay/card-fop-v1/payment-integrator-card-fop-api/ResponseHeader`)`` **REQUIRED**: Common header for all responses. |
| `result` | ``enum (`https://developers.google.com/pay/card-fop-v1/payment-integrator-card-fop-api/asynchronousCaptureFundsReservation#AsynchronousCaptureFundsReservationResultCode`)`` **REQUIRED**: The result of the asynchronous capture call. |
| `paymentIntegratorCaptureId` | `string` **OPTIONAL**: This identifier is specific to the integrator and is generated by the integrator. This is the identifier that the integrator knows this capture by. For convenience, this identifier is included in the remittance details. |

## AsynchronousCaptureFundsReservationResultCode

Result codes for asynchronousCapture.

| Enums ||
|---|---|
| `ASYNCHRONOUS_CAPTURE_FUNDS_RESERVATION_RESULT_CODE_UNSPECIFIED` | Do not ever set this default value! |
| `ACKNOWLEDGED` | The capture has been requested and the integrator will do additional steps to determine if the capture was successful or declined. Once the integrator knows the result of the capture, they must inform Google of the result by calling the CaptureFundsReservationNotification method. |