---
title: "POST /#X-Amz-Target=AWSMPCommerceService_v20200301.BatchCreateBillingAdjustmentRequest"
method: POST
path: "/#X-Amz-Target=AWSMPCommerceService_v20200301.BatchCreateBillingAdjustmentRequest"
---

# POST /#X-Amz-Target=AWSMPCommerceService_v20200301.BatchCreateBillingAdjustmentRequest

`POST /#X-Amz-Target=AWSMPCommerceService_v20200301.BatchCreateBillingAdjustmentRequest`

Allows sellers (proposers) to submit billing adjustment requests for one or more invoices within an agreement. Each entry in the batch specifies an invoice and the adjustment amount. The operation returns successfully created adjustment request IDs and any errors for entries that failed to process.

Each entry requires a unique `clientToken` for idempotency.

## Headers

- `X-Amz-Target` 'AWSMPCommerceService_v20200301.BatchCreateBillingAdjustmentRequest', required

## Request body

- BatchCreateBillingAdjustmentRequestInput
  - `billingAdjustmentRequestEntries` BatchCreateBillingAdjustmentRequestEntry[], required — A list of billing adjustment request entries. Each entry specifies the invoice and adjustment details.
    - `agreementId` string, required — The unique identifier of the agreement associated with the invoice.
    - `originalInvoiceId` string, required — The identifier of the original invoice to adjust.
    - `adjustmentAmount` string, required — The adjustment amount as a string representation of a decimal number in the currency of the invoice.
    - `currencyCode` string, required — The 3-letter ISO 4217 currency code for the adjustment amount. Must match the currency code of the offer associated with the agreement (e.g., <code>USD</code>).
    - `adjustmentReasonCode` 'INCORRECT_TERMS_ACCEPTED' | 'INCORRECT_METERING' | 'TEST_ENVIRONMENT_CHARGES' | 'ALTERNATIVE_PROCUREMENT_CHANNEL' | 'UNINTENDED_RENEWAL' | 'BUYER_DISSATISFACTION' | 'OTHER', required — The reason code for the billing adjustment.
    - `description` string, password — An optional detailed description of the adjustment reason.
    - `clientToken` string, required — A unique, case-sensitive identifier that you provide to ensure the idempotency of the request.

## Response `200`

Success

- BatchCreateBillingAdjustmentRequestOutput
  - `items` BatchCreateBillingAdjustmentItem[], required — A list of successfully created billing adjustment items, each containing the <code>billingAdjustmentRequestId</code> and <code>clientToken</code>.
    - `billingAdjustmentRequestId` string, required — The unique identifier of the created billing adjustment request.
    - `clientToken` string, required — The client token provided in the corresponding request entry.
  - `errors` BatchCreateBillingAdjustmentError[], required — A list of errors for entries that failed validation, each containing the <code>clientToken</code>, error <code>code</code>, and <code>message</code>.
    - `code` 'CONFLICT_EXCEPTION' | 'VALIDATION_EXCEPTION' | 'RESOURCE_NOT_FOUND_EXCEPTION' | 'INTERNAL_FAILURE', required — The error code indicating the reason for failure.
    - `message` string, required — A human-readable message describing the error.
    - `clientToken` string, required — The client token of the request entry that failed.

## Other responses

- `480` — ValidationException
- `481` — AccessDeniedException
- `482` — ThrottlingException
- `483` — InternalServerException
- `484` — ConflictException

---

[API](https://skmtc.net/aws/apis/marketplace-agreement.md) · [All operations](https://skmtc.net/aws/apis/marketplace-agreement/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/aws/marketplace-agreement/revisions/a16aac0fa99c/schema)
