Developer Console

Adjust Charge

The Payment service API provides the Company a single point of integration with Amazon to facilitate payment processor integration. The payment service allows the Company to complete one integration while getting access to multiple payment processors.

Note: In the future, new attributes might be added. We recommend that you structure your code so that it can handle new attributes gracefully

Adjust Charge

POST /v1/adjust/charge

The Adjust method is used to allow the Company to charge the total price for the cart to the shopper payment instrument authrozied on store entry. While the company provides the cart total price in the adjust call, Amazon will perform the incremental adjustment based upon the difference between the total cart price and the initial pre-auth.

Body parameter

{
  "storeId": "string",
  "shoppingTripId": "string",
  "amount": {
    "amount": 0,
    "code": "str"
  }
}
Data Field Required Description
storeId Required string <= 255 characters ^[0-9a-zA-Z_-]*$. The storeId field contains the store identifier designated during your onboarding process. If you have multiple stores, each store will have a unique identifier. You use this field to identify in which one of your store locations a shopper is requesting access
shoppingTripId Required string <= 255 characters ^[0-9a-zA-Z_-]+$. The ShoppingTripId field contains a Universally Unique ID (UUID) for the current shopping trip. Amazon generates a UUID for each shopping trip.
amount Required number, The amount field contains the calculated price for the cart that will be charged to the shopper payment mechanism.
Data Field Required Description
amount Required number. The amount field contains the calculated price for the cart that will be charged to the shopper payment mechanism.
code Required string <= 3 characters ^[A-Z]{3}$. CurrencyCode field contains an enumerated string representing the type of currency you are collecting. For example, if you’re collecting U.S. dollars, you would enter USD into this field.

Success example responses

> 200 Response
{
  "status": "APPROVED",
  "authorizedAmount": {
    "amount": 0,
    "code": "str"
  }
}
Data Field Required Description
status Required string (AdjustStatus). Enum: "APPROVED" "DECLINED" "PENDING". Shows the status of the Adjust transactions. Approved and Declined are terminal states. Pending require retries till Payment reaches terminal state.
authorizedAmount Required
Data Field Required Description
amount Required number. The amount field contains the calculated price for the cart that will be charged to the shopper payment mechanism.
code Required string <= 3 characters ^[A-Z]{3}$. CurrencyCode field contains an enumerated string representing the type of currency you are collecting. For example, if you’re collecting U.S. dollars, you would enter USD into this field.

Failure example responses

{
  "errorMsg": "string"
}
Status Meaning Description
400 UnknownShoppingTrip You will receive a 400 UnknownShoppingTrip if you attempt to checkout using an invalid shoppingTrip
400 BadRequestException The API returns a 400 Bad Request Error when requests to the payment service might be missing a required value or an incorrect data type is passed to the API. For example an incorrect storeId or shoppingTripId
429 Too Many Requests Too Many Requests – The client has sent too many requests in a given amount of time (rate limiting. A Retry-After header will be included in the response indicating how long to wait before making a new request. Retry-After: 600 (5 minutes) is the current setting
500 ServiceException A 500 ServerError is received when the payment servie call fails due to a server issue. For example an un-handled exception or error occurs when processing the API call. You are encouraged to retry the API call to Amazon using an exponential backoff algorithm

503 ServiceUnavailableException, example responses

{
  "errorMsg": "string",
  "retryAfter": "string"
}
Data Field Required Description
errorMsg Required string. A 503 ServiceUnavailable is returned when the payment serivce is unavailable. If you receive a 503, you should re-try the API call after the indicated time in the API response.
retryAfter Required string. The the time to wait for retry in seconds.