Capture
Captures funds from an authorized payment instrument.
Description
To capture funds from an authorized payment instrument, call the Capture operation. To successfully capture a payment, you must call this operation on an Authorization object before it expires, as specified by the ExpirationTimestamp returned in response of the Authorize operation call. You must specify a capture amount, and the amount cannot exceed the original amount that was authorized.
You can query the status of a capture request by calling the GetCaptureDetails operation.
This operation has a maximum request quota of 10 and a restore rate of one request every second in the production environment. It has a maximum request quota of two and a restore rate of one request every two seconds in the sandbox environment. For definitions of throttling terminology and for a complete explanation of throttling, see Throttling: Limits to how often you can submit requests in the Amazon MWS Developer Guide.
This API call is idempotent. If called multiple times, with unchanged parameters (including CaptureReferenceId), the same result is produced.
Request parameters
For more information about the request parameters that are required for all Amazon MWS operations, see Required request parameters in the Amazon MWS Developer Guide.
Parameter name | Required | Type | Description |
AmazonAuthorizationId | Yes | xs:string | The authorization identifier that was generated by Amazon in the earlier call to Authorize or AuthorizeOnBillingAgreement. |
CaptureReferenceId | Yes | xs:string |
This identifier is defined by you and must be unique for every single API request, unless you plan to leverage the API idempotency.
Use only the following characters:
|
CaptureAmount | Yes | Price |
The amount to capture in this transaction.
This amount cannot exceed the original amount that was authorized. Maximum values:
|
SellerCaptureNote | No | xs:string |
A description for the capture transaction that is shown to the buyer in emails.
Maximum: 255 characters |
SoftDescriptor | No | xs:string |
The description to be shown on the buyer's payment instrument statement. The soft descriptor sent to the payment processor is: "AMZ* <soft descriptor specified here>".
Default: "AMZ*<SELLER_NAME> pay.amazon.com" Maximum: 16 characters |
Response elements
Element name | Description |
CaptureDetails |
Encapsulates details about the Capture object and its status.
Type: CaptureDetails |
Examples
Sample query request
POST /OffAmazonPayments/2013-01-01 HTTP/1.1
Content-Type: x-www-form-urlencoded
Host: mws.amazonservices.com
User-Agent: <Your User Agent Header>
AWSAccessKeyId=AKIAFBM3LG5JEEXAMPLE
&Action=Capture
&AmazonAuthorizationId=P01-1234567-1234567-0000001
&CaptureAmount.Amount=94.50
&CaptureAmount.CurrencyCode=USD
&CaptureReferenceId=test_capture_1
&SellerCaptureNote=Lorem%20ipsum
&SellerId=YOUR_SELLER_ID_HERE
&SignatureMethod=HmacSHA256
&SignatureVersion=2
&Timestamp=2012-11-05T19%3A01%3A11Z
&Version=2013-01-01
&Signature=WlQ708aqyHXMkoUBk69Hjxj8qdh3aDcqpY71hVgEXAMPLE
Sample response
<CaptureResponse xmlns="https://mws.amazonservices.com/schema/OffAmazonPayments/2013-01-01">
<CaptureResult>
<CaptureDetails>
<AmazonCaptureId>P01-1234567-1234567-0000002</AmazonCaptureId>
<CaptureReferenceId>test_capture_1</CaptureReferenceId>
<SellerCaptureNote>Lorem ipsum</SellerCaptureNote>
<CaptureAmount>
<CurrencyCode>USD</CurrencyCode>
<Amount>94.50</Amount>
</CaptureAmount>
<CaptureStatus>
<State>Completed</State>
<LastUpdateTimestamp>2012-11-03T19:10:16Z</LastUpdateTimestamp>
</CaptureStatus>
<CreationTimestamp>2012-11-03T19:10:16Z</CreationTimestamp>
</CaptureDetails>
</CaptureResult>
<ResponseMetadata>
<RequestId>b4ab4bc3-c9ea-44f0-9a3d-67cccef565c6</RequestId>
</ResponseMetadata>
</CaptureResponse>