Method: asynchronousCaptureFundsReservation

Initiates money movement by capturing funds that were previously reserved in a call to reserveFunds.

This initiates money movement by capturing funds that were previously reserved in a call to 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 combination of requestId within the header and paymentIntegratorAccountId 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 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 (RequestHeader)
  },
  "paymentIntegratorAccountId": string,
  "reservationRequestId": string,
  "amount": string
}
Fields
requestHeader

object (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 (Int64Value 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.

Possible response messages
HTTP 200 Status

object (AsynchronousCaptureFundsReservationResponse)

HTTP 4XX / 5XX Status

object (ErrorResponse)

AsynchronousCaptureFundsReservationResponse

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

JSON representation
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "result": enum (AsynchronousCaptureFundsReservationResultCode)
}
Fields
responseHeader

object (ResponseHeader)

REQUIRED: Common header for all responses.

result

enum (AsynchronousCaptureFundsReservationResultCode)

REQUIRED: The result of the asynchronous capture call.

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.