# Paddle API error reference

> All errors returned by the Paddle Billing API, grouped by category.

HTML version: https://main--ai-dev-docs.netlify.app/errors

## Addresses

Encountered when working with address entities.

- [**Address cannot be created or updated with this country**](https://main--ai-dev-docs.netlify.app/errors/addresses/address_location_not_allowed.md) — `address_location_not_allowed` (HTTP 400): You are trying to create or update an address with a location not supported by Paddle.

## Adjustments

Encountered when creating or working with transaction adjustments.

- [**Adjustment item amount defined is above the remaining allowed**](https://main--ai-dev-docs.netlify.app/errors/adjustments/adjustment_amount_above_remaining_allowed.md) — `adjustment_amount_above_remaining_allowed` (HTTP 400): Adjustments to the transaction item exceed the total amount left to adjust on the item.
- [**Adjustment amount cannot be zero**](https://main--ai-dev-docs.netlify.app/errors/adjustments/adjustment_amount_cannot_be_zero.md) — `adjustment_amount_cannot_be_zero` (HTTP 400): You are attempting to make an adjustment with zero amount on a transaction item.
- [**Cannot adjust imported transaction**](https://main--ai-dev-docs.netlify.app/errors/adjustments/adjustment_cannot_adjust_imported_transaction.md) — `adjustment_cannot_adjust_imported_transaction` (HTTP 400): You are trying to adjust a transaction that was imported.
- [**The adjustment has an invalid combination of types**](https://main--ai-dev-docs.netlify.app/errors/adjustments/adjustment_invalid_combination_of_types.md) — `adjustment_invalid_combination_of_types` (HTTP 400): The adjustment specifies a combination of items whose type is not compatible together.
- [**The adjustment action provided (credit) cannot be performed on the specified transaction**](https://main--ai-dev-docs.netlify.app/errors/adjustments/adjustment_invalid_credit_action.md) — `adjustment_invalid_credit_action` (HTTP 400): Adjustment is a credit, which is not compatible with the transaction specified
- [**No tax available to adjust**](https://main--ai-dev-docs.netlify.app/errors/adjustments/adjustment_no_tax_available_to_adjust.md) — `adjustment_no_tax_available_to_adjust` (HTTP 400): You are attempting to make a tax adjustment on a transaction item but there's not available tax for it.
- [**Adjustment refund amount is below the minimum refundable amount**](https://main--ai-dev-docs.netlify.app/errors/adjustments/adjustment_payout_earnings_cannot_be_zero.md) — `adjustment_payout_earnings_cannot_be_zero` (HTTP 400): You're attempting to create a refund adjustment whose payout totals earnings round to zero in the payout currency.
- [**Pending refund adjustment**](https://main--ai-dev-docs.netlify.app/errors/adjustments/adjustment_pending_refund_request.md) — `adjustment_pending_refund_request` (HTTP 400): You are attempting to create an adjustment but there is a pending refund request open
- [**You can only provide an external tax_mode when partially refunding.**](https://main--ai-dev-docs.netlify.app/errors/adjustments/adjustment_tax_mode_not_allowed.md) — `adjustment_tax_mode_not_allowed` (HTTP 400): You're attempting to pass `tax_mode: external` with a `type` other than `partial` or an `action` other than `refund`.
- [**Adjustment amount defined is above the remaining allowed**](https://main--ai-dev-docs.netlify.app/errors/adjustments/adjustment_total_amount_above_remaining_allowed.md) — `adjustment_total_amount_above_remaining_allowed` (HTTP 400): The adjustment amount exceeds the total amount left to adjust.
- [**Adjustment customer mismatch**](https://main--ai-dev-docs.netlify.app/errors/adjustments/adjustment_transaction_customer_mismatch.md) — `adjustment_transaction_customer_mismatch` (HTTP 400): The customer_id specified in the adjustment doesn't match the one from the transaction.
- [**The transaction being adjusted (credit) has a non supported status**](https://main--ai-dev-docs.netlify.app/errors/adjustments/adjustment_transaction_invalid_status_for_credit.md) — `adjustment_transaction_invalid_status_for_credit` (HTTP 400): The transaction being adjusted (credit) has a non supported status.
- [**The transaction being adjusted (refund) has a non supported status**](https://main--ai-dev-docs.netlify.app/errors/adjustments/adjustment_transaction_invalid_status_for_refund.md) — `adjustment_transaction_invalid_status_for_refund` (HTTP 400): The transaction being adjusted (refund) has a non supported status.
- [**Adjustment has already been made in full**](https://main--ai-dev-docs.netlify.app/errors/adjustments/adjustment_transaction_item_has_already_been_fully_adjusted.md) — `adjustment_transaction_item_has_already_been_fully_adjusted` (HTTP 400): You are attempting to adjust a line item that has already been fully adjusted
- [**One or more adjustment items cannot be processed**](https://main--ai-dev-docs.netlify.app/errors/adjustments/adjustment_transaction_item_invalid.md) — `adjustment_transaction_item_invalid` (HTTP 400): One or more adjustment items cannot be processed
- [**One or more adjustment items are being over adjusted.**](https://main--ai-dev-docs.netlify.app/errors/adjustments/adjustment_transaction_item_over_adjustment.md) — `adjustment_transaction_item_over_adjustment` (HTTP 400): One or more adjustment items are being over adjusted
- [**Cannot create adjustments for a transaction with a missing customer_id**](https://main--ai-dev-docs.netlify.app/errors/adjustments/adjustment_transaction_missing_customer_id.md) — `adjustment_transaction_missing_customer_id` (HTTP 400): You are creating and adjustment for a transaction that doesn't have a Customer ID attached.
- [**Adjustment subscription mismatch**](https://main--ai-dev-docs.netlify.app/errors/adjustments/adjustment_transaction_subscription_mismatch.md) — `adjustment_transaction_subscription_mismatch` (HTTP 400): The subscription_id specified in the adjustment doesn't match the one from the transaction.
- [**The transaction being adjusted doesn't have a captured payment**](https://main--ai-dev-docs.netlify.app/errors/adjustments/adjustment_transaction_without_captured_payment.md) — `adjustment_transaction_without_captured_payment` (HTTP 400): The transaction being adjusted doesn't have a captured payment.

## Businesses

Encountered when working with business entities on a customer.

- [**Business cannot be created or updated with this contact email address**](https://main--ai-dev-docs.netlify.app/errors/businesses/business_contact_email_domain_not_allowed.md) — `business_contact_email_domain_not_allowed` (HTTP 400): You are trying to create or update a business with a contact email address indicating a location not supported by Paddle.

## Currencies

Encountered when working with currencies or currency-related settings.

- [**Invalid Currency Code**](https://main--ai-dev-docs.netlify.app/errors/currencies/currency_code_invalid.md) — `currency_code_invalid` (HTTP 404): The currency provided is not supported.
- [**Invalid Currency Codes**](https://main--ai-dev-docs.netlify.app/errors/currencies/currency_codes_invalid.md) — `currency_codes_invalid` (HTTP 400): At least one currency code provided is not supported.
- [**Invalid Primary Balance Currency**](https://main--ai-dev-docs.netlify.app/errors/currencies/currency_primary_balance_invalid.md) — `currency_primary_balance_invalid` (HTTP 400): The currency provided cannot be set as the primary balance currency.

## Customers

Encountered when working with customer entities.

- [**Attempt to create a customer with an existing email.**](https://main--ai-dev-docs.netlify.app/errors/customers/customer_already_exists.md) — `customer_already_exists` (HTTP 409): The customer being created already exists.
- [**Customer cannot be created or updated with this email address**](https://main--ai-dev-docs.netlify.app/errors/customers/customer_email_domain_not_allowed.md) — `customer_email_domain_not_allowed` (HTTP 400): You are trying to create or update a customer with an email address indicating a location not supported by Paddle.
- [**Customer email address is invalid**](https://main--ai-dev-docs.netlify.app/errors/customers/customer_email_invalid.md) — `customer_email_invalid` (HTTP 400): You are trying to create or update a customer with an invalid email address.

## Discounts

Encountered when working with discount entities.

- [**Duplicated discount code**](https://main--ai-dev-docs.netlify.app/errors/discounts/discount_code_conflict.md) — `discount_code_conflict` (HTTP 409): Each of your Discounts must have a unique code, the requested code is in conflict with another Discount.
- [**Discount has expired**](https://main--ai-dev-docs.netlify.app/errors/discounts/discount_expired.md) — `discount_expired` (HTTP 400): You are trying to apply a discount which has passed its expiration date.
- [**Duplicated discount group name**](https://main--ai-dev-docs.netlify.app/errors/discounts/discount_group_name_conflict.md) — `discount_group_name_conflict` (HTTP 409): Discount groups must have a unique name.
- [**Discount maximum recurring intervals must be equal to or lower than 999**](https://main--ai-dev-docs.netlify.app/errors/discounts/discount_maximum_recurring_intervals_greater_than_maximum.md) — `discount_maximum_recurring_intervals_greater_than_maximum` (HTTP 400): Occurs when your supplied value for discount.maximum_recurring_intervals is greater than 999.
- [**Product not active**](https://main--ai-dev-docs.netlify.app/errors/discounts/discount_restricted_product_not_active.md) — `discount_restricted_product_not_active` (HTTP 400): Each product ID given in the restricts_to field must be active.
- [**Product Price not active**](https://main--ai-dev-docs.netlify.app/errors/discounts/discount_restricted_product_price_not_active.md) — `discount_restricted_product_price_not_active` (HTTP 400): Each Product Price ID given in the restricts_to field must be active.
- [**Discount usage limit exceeded**](https://main--ai-dev-docs.netlify.app/errors/discounts/discount_usage_limit_exceeded.md) — `discount_usage_limit_exceeded` (HTTP 400): You are trying to apply a discount which has exceeded the maximum usage limit.
- [**Unable to reduce usage limit as times used is greater than provided value**](https://main--ai-dev-docs.netlify.app/errors/discounts/discount_usage_limit_less_than_times_used.md) — `discount_usage_limit_less_than_times_used` (HTTP 400): Unable to reduce usage limit as times used is greater than provided value.

## Notifications

Encountered when working with notification and webhook entities.

- [**Email Notification Setting destination must be an email**](https://main--ai-dev-docs.netlify.app/errors/notifications/email_notification_setting_incorrect.md) — `email_notification_setting_incorrect` (HTTP 400): You're attempting to change an email Notification Setting destination to something other than an email.
- [**Notification cannot be replayed**](https://main--ai-dev-docs.netlify.app/errors/notifications/notification_cannot_replay.md) — `notification_cannot_replay` (HTTP 400): You're attempting to replay a notification that's not `delivered` or `failed`.
- [**Maximum notification settings reached**](https://main--ai-dev-docs.netlify.app/errors/notifications/notification_maximum_active_settings_reached.md) — `notification_maximum_active_settings_reached` (HTTP 400): You tried to add a new active notification setting but already have 10 active settings.
- [**Can only replay notifications with an origin of event**](https://main--ai-dev-docs.netlify.app/errors/notifications/notification_replay_invalid_origin_type.md) — `notification_replay_invalid_origin_type` (HTTP 400): You're attempting to replay a notification with an invalid origin type.
- [**Simulation already running**](https://main--ai-dev-docs.netlify.app/errors/notifications/notification_simulation_already_running_conflict.md) — `notification_simulation_already_running_conflict` (HTTP 409): You're trying to run a simulation while another run for this simulation is pending.
- [**Invalid simulation configuration**](https://main--ai-dev-docs.netlify.app/errors/notifications/notification_simulation_run_configuration_conflict.md) — `notification_simulation_run_configuration_conflict` (HTTP 409): You're trying to run a simulation with invalid configuration.
- [**Notification settings invalid for a simulation**](https://main--ai-dev-docs.netlify.app/errors/notifications/notification_simulation_run_notification_settings_conflict.md) — `notification_simulation_run_notification_settings_conflict` (HTTP 409): You're trying to run a simulation with an invalid notification setting.
- [**URL Notification Setting destination must be a URL**](https://main--ai-dev-docs.netlify.app/errors/notifications/url_notification_setting_incorrect.md) — `url_notification_setting_incorrect` (HTTP 400): You're attempting to change a URL Notification Setting destination to something other than a URL.

## Payment methods

Encountered when working with saved payment method entities.

- [**Payment method cannot be deleted as its in use on an active, trialing, paused or past_due subscription**](https://main--ai-dev-docs.netlify.app/errors/payment-methods/payment_method_in_use.md) — `payment_method_in_use` (HTTP 400): You are trying to delete a payment method that is in use on an active, trialing, paused or past_due subscription.

## Prices

Encountered when working with price entities.

- [**Billing cycle frequency must be equal to or higher than 1**](https://main--ai-dev-docs.netlify.app/errors/prices/price_billing_cycle_frequency_below_1.md) — `price_billing_cycle_frequency_below_1` (HTTP 400): Occurs when your supplied value for billing_cycle.frequency is below 1.
- [**Billing cycle frequency must be equal to or lower than 999**](https://main--ai-dev-docs.netlify.app/errors/prices/price_billing_cycle_frequency_greater_than_maximum.md) — `price_billing_cycle_frequency_greater_than_maximum` (HTTP 400): Occurs when your supplied value for billing_cycle.frequency is greater than 999.
- [**Duplicate currency override for country**](https://main--ai-dev-docs.netlify.app/errors/prices/price_duplicate_currency_override_for_country.md) — `price_duplicate_currency_override_for_country` (HTTP 400): duplicate currency override for country
- [**Quantity maximum must be equal to or lower than 999999999**](https://main--ai-dev-docs.netlify.app/errors/prices/price_quantity_maximum_greater_than_maximum.md) — `price_quantity_maximum_greater_than_maximum` (HTTP 400): Occurs when your supplied value for quantity.maximum is greater than 999999999.
- [**Quantity minimum must be equal to or lower than 999999999**](https://main--ai-dev-docs.netlify.app/errors/prices/price_quantity_minimum_greater_than_maximum.md) — `price_quantity_minimum_greater_than_maximum` (HTTP 400): Occurs when your supplied value for quantity.minimum is greater than 999999999.
- [**Trial period frequency must be 1 or greater**](https://main--ai-dev-docs.netlify.app/errors/prices/price_trial_period_frequency_below_1.md) — `price_trial_period_frequency_below_1` (HTTP 400): Occurs when your supplied value for trial_period.frequency is below 1.
- [**Trial period frequency must be equal to or lower than 999**](https://main--ai-dev-docs.netlify.app/errors/prices/price_trial_period_frequency_greater_than_maximum.md) — `price_trial_period_frequency_greater_than_maximum` (HTTP 400): Occurs when your supplied value for trial_period.frequency is greater than 999.
- [**Interval and frequency required for trial period**](https://main--ai-dev-docs.netlify.app/errors/prices/price_trial_period_missing_fields.md) — `price_trial_period_missing_fields` (HTTP 400): Occurs when your request contains trial_period but interval and frequency are not present.
- [**Billing cycle required for trial period**](https://main--ai-dev-docs.netlify.app/errors/prices/price_trial_period_requires_billing_cycle.md) — `price_trial_period_requires_billing_cycle` (HTTP 400): Occurs when your request contains trial_period but billing_cycle is not set.
- [**Trial Currency Mismatch**](https://main--ai-dev-docs.netlify.app/errors/prices/trial_currency_mismatch.md) — `trial_currency_mismatch` (HTTP 400): trial currency mismatch
- [**Trial Must Be Either Paid or Cardless**](https://main--ai-dev-docs.netlify.app/errors/prices/trial_is_either_paid_or_cardless.md) — `trial_is_either_paid_or_cardless` (HTTP 400): trial type conflict

## Products

Encountered when working with product entities.

- [**Tax category not approved**](https://main--ai-dev-docs.netlify.app/errors/products/product_tax_category_not_approved.md) — `product_tax_category_not_approved` (HTTP 400): Occurs when you supply a tax category which is unapproved for your account.

## Reports

Encountered when working with report entities.

- [**Concurrent report generation not allowed**](https://main--ai-dev-docs.netlify.app/errors/reports/concurrent_report_generation_not_allowed.md) — `concurrent_report_generation_not_allowed` (HTTP 400): Occurs when you attempt to generate more than report at a time.
- [**Report creation limit exceeded**](https://main--ai-dev-docs.netlify.app/errors/reports/report_creation_limit_exceeded.md) — `report_creation_limit_exceeded` (HTTP 400): Occurs when you attempt to create more than 100 reports in last 24 hours
- [**Report empty**](https://main--ai-dev-docs.netlify.app/errors/reports/report_empty.md) — `report_empty` (HTTP 400): Report unavailable to download due to no results
- [**Report expired**](https://main--ai-dev-docs.netlify.app/errors/reports/report_expired.md) — `report_expired` (HTTP 400): Report unavailable to download as it is expired
- [**Report failed**](https://main--ai-dev-docs.netlify.app/errors/reports/report_failed.md) — `report_failed` (HTTP 400): Report unavailable to download as it failed
- [**Report not ready**](https://main--ai-dev-docs.netlify.app/errors/reports/report_not_ready.md) — `report_not_ready` (HTTP 400): Report is still generating

## Generic

General errors that can occur across the API.

- [**Authentication header invalid**](https://main--ai-dev-docs.netlify.app/errors/shared/authentication_malformed.md) — `authentication_malformed` (HTTP 403): An `Authorization` header was sent with your request, but it isn't in a valid format.
- [**Authentication header missing**](https://main--ai-dev-docs.netlify.app/errors/shared/authentication_missing.md) — `authentication_missing` (HTTP 403): No `Authorization` header detected with your request.
- [**Bad gateway**](https://main--ai-dev-docs.netlify.app/errors/shared/bad_gateway.md) — `bad_gateway` (HTTP 502): The endpoint is temporarily unable to handle your request. Your request was not processed.
- [**Bad request**](https://main--ai-dev-docs.netlify.app/errors/shared/bad_request.md) — `bad_request` (HTTP 400): Something isn't right with your request.
- [**Concurrent modification**](https://main--ai-dev-docs.netlify.app/errors/shared/concurrent_modification.md) — `concurrent_modification` (HTTP 409): There were multiple concurrent requests to modify the same entity.
- [**Conflict**](https://main--ai-dev-docs.netlify.app/errors/shared/conflict.md) — `conflict` (HTTP 409): Your request conflicts with another change.
- [**Entity archived and cannot be modified**](https://main--ai-dev-docs.netlify.app/errors/shared/entity_archived.md) — `entity_archived` (HTTP 400): The entity you're trying to modify is archived, so it can't be changed.
- [**Forbidden**](https://main--ai-dev-docs.netlify.app/errors/shared/forbidden.md) — `forbidden` (HTTP 403): The authentication method you used doesn't have permission to perform that request.
- [**Internal error**](https://main--ai-dev-docs.netlify.app/errors/shared/internal_error.md) — `internal_error` (HTTP 500): Something went wrong processing your request. Your request was not processed.
- [**Invalid client-side token**](https://main--ai-dev-docs.netlify.app/errors/shared/invalid_client_token.md) — `invalid_client_token` (HTTP 403): The client-side token used for your request isn't valid.
- [**Request does not pass validation**](https://main--ai-dev-docs.netlify.app/errors/shared/invalid_field.md) — `invalid_field` (HTTP 400): One or more of the fields sent with your request aren't valid.
- [**JSON payload invalid**](https://main--ai-dev-docs.netlify.app/errors/shared/invalid_json.md) — `invalid_json` (HTTP 400): Your request isn't valid JSON.
- [**Unable to parse time query parameter**](https://main--ai-dev-docs.netlify.app/errors/shared/invalid_time_query_parameter.md) — `invalid_time_query_parameter` (HTTP 400): You're sending an invalid timestamp as a query parameter.
- [**Invalid API key**](https://main--ai-dev-docs.netlify.app/errors/shared/invalid_token.md) — `invalid_token` (HTTP 403): The API key used for your request isn't valid.
- [**Invalid URL**](https://main--ai-dev-docs.netlify.app/errors/shared/invalid_url.md) — `invalid_url` (HTTP 404): The URL you called is invalid.
- [**Method not allowed**](https://main--ai-dev-docs.netlify.app/errors/shared/method_not_allowed.md) — `method_not_allowed` (HTTP 405): The endpoint does not support the HTTP method you used.
- [**Not available in sandbox**](https://main--ai-dev-docs.netlify.app/errors/shared/not_available_in_sandbox.md) — `not_available_in_sandbox` (HTTP 404): This endpoint is not available in the sandbox environment.
- [**Entity not found**](https://main--ai-dev-docs.netlify.app/errors/shared/not_found.md) — `not_found` (HTTP 404): The entity you're trying to work with doesn't exist.
- [**Not implemented**](https://main--ai-dev-docs.netlify.app/errors/shared/not_implemented.md) — `not_implemented` (HTTP 501): The method used to make your request isn't recognized.
- [**Paddle Billing is not enabled**](https://main--ai-dev-docs.netlify.app/errors/shared/paddle_billing_not_enabled.md) — `paddle_billing_not_enabled` (HTTP 403): Your authentication is valid, but Paddle Billing is not activated for this account.
- [**Receipt data has not been enabled**](https://main--ai-dev-docs.netlify.app/errors/shared/receipt_data_not_enabled.md) — `receipt_data_not_enabled` (HTTP 400): You're attempting to pass `receipt_data` as part of your request, but it's not enabled for your account.
- [**Content Too Large**](https://main--ai-dev-docs.netlify.app/errors/shared/request_body_too_large.md) — `request_body_too_large` (HTTP 413): The provided request body is too large.
- [**Request Header Fields Too Large**](https://main--ai-dev-docs.netlify.app/errors/shared/request_headers_too_large.md) — `request_headers_too_large` (HTTP 431): The provided request URI length or headers are too large.
- [**Service unavailable**](https://main--ai-dev-docs.netlify.app/errors/shared/service_unavailable.md) — `service_unavailable` (HTTP 503): The endpoint is down for maintenance or temporarily unable to handle your request. Your request was not processed.
- [**Temporarily unavailable**](https://main--ai-dev-docs.netlify.app/errors/shared/temporarily_unavailable.md) — `temporarily_unavailable` (HTTP 540): Endpoint is temporarily disabled for your account.
- [**Too many requests**](https://main--ai-dev-docs.netlify.app/errors/shared/too_many_requests.md) — `too_many_requests` (HTTP 429): There have been too many requests to the API from your IP address, so it's been temporarily rate-limited.
- [**Unexpected request body**](https://main--ai-dev-docs.netlify.app/errors/shared/unexpected_request_body.md) — `unexpected_request_body` (HTTP 400): Your request contains a body, but this is not expected for this endpoint.
- [**Invalid Content-Type header**](https://main--ai-dev-docs.netlify.app/errors/shared/unsupported_media_type.md) — `unsupported_media_type` (HTTP 415): The request has an invalid Content-Type header.

## Subscriptions

Encountered when working with subscription entities.

- [**Address entity not valid for current collection mode**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_address_not_suitable_for_collection_mode.md) — `subscription_address_not_suitable_for_collection_mode` (HTTP 400): You are attempting to update a subscription but the address entity is not valid for the current collection mode
- [**Subscription update removes all items**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_all_items_removed.md) — `subscription_all_items_removed` (HTTP 400): The subscription update request removes all items.
- [**Archived discount cannot be applied**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_archived_discount_application_attempt.md) — `subscription_archived_discount_application_attempt` (HTTP 400): You cannot apply an archived discount to a subscription.
- [**Billing details required when creating transaction for manual collection mode subscription**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_billing_details_required.md) — `subscription_billing_details_required` (HTTP 400): Billing details need to be set to create a transaction when a subscriptions collection_mode is set to manual.
- [**Subscription cannot activate**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_cannot_activate.md) — `subscription_cannot_activate` (HTTP 400): You are attempting to activate a subscription which does not have trialing status
- [**Action can't be performed on paused subscription**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_cannot_be_paused.md) — `subscription_cannot_be_paused` (HTTP 400): The action or change you are performing can't be performed on a paused subscription
- [**Duplicate `price_id` fields sent in the items list**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_charge_duplicate_price_ids.md) — `subscription_charge_duplicate_price_ids` (HTTP 400): You're attempting to create a one-time charge for one or more of the same items in the same request.
- [**Consent requirement cannot be granted before consent period starts**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_consent_granted_too_early.md) — `subscription_consent_granted_too_early` (HTTP 400): Occurs when an attempt to grant a subscription consent requirement is made before the consent period starts.
- [**Cannot activate subscription due to consent requirement**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_consent_requirement_cannot_activate.md) — `subscription_consent_requirement_cannot_activate` (HTTP 400): Occurs when you try to activate a trialing subscription, but there is a consent requirement.
- [**Cannot continue the existing billing period**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_continuing_existing_billing_period_not_allowed.md) — `subscription_continuing_existing_billing_period_not_allowed` (HTTP 400): You can't choose to continue the existing billing period, as the billing period ended already.
- [**Cannot continue the existing billing period for a past due subscription**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_continuing_existing_billing_period_not_allowed_subscription_past_due.md) — `subscription_continuing_existing_billing_period_not_allowed_subscription_past_due` (HTTP 400): You can't choose to continue the existing billing period, as the subscription is past due
- [**Cannot make a change to a subscription that generates a credit for a transaction that is currently being processed**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_credit_creation_against_processing_transaction.md) — `subscription_credit_creation_against_processing_transaction` (HTTP 400): You can't make a change to a subscription that generates a credit for a transaction that is currently being processed.
- [**Cannot make a change to a subscription that generates a credit for an uncompleted transaction**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_credit_creation_against_uncompleted_transaction_not_allowed.md) — `subscription_credit_creation_against_uncompleted_transaction_not_allowed` (HTTP 400): You can't make a change to a subscription that generates a credit for an uncompleted transaction
- [**Currency code incompatible with the payment method provider**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_currency_code_incompatible_with_payment_method_provider.md) — `subscription_currency_code_incompatible_with_payment_method_provider` (HTTP 400): You are attempting to update a subscription's currency code to one that is incompatible with the payment method provider
- [**Currency code not valid for manual collection mode**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_currency_code_not_valid_for_manual.md) — `subscription_currency_code_not_valid_for_manual` (HTTP 400): You are attempting to update a subscription to manual billing mode but the currency code is not valid
- [**Updating currency and performing any action creating credits at the same time not allowed**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_currency_update_and_actions_creating_credits_not_allowed.md) — `subscription_currency_update_and_actions_creating_credits_not_allowed` (HTTP 400): You are attempting to update currency and perform action creating credits at the same time
- [**Updating currency not allowed because of pending credits**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_currency_update_not_allowed.md) — `subscription_currency_update_not_allowed` (HTTP 400): You are attempting to update the currency of a subscription when pending credits are present
- [**Cannot create or preview transaction using a customer with this email address**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_customer_email_domain_not_allowed.md) — `subscription_customer_email_domain_not_allowed` (HTTP 400): You are trying to create or preview a transaction using a customer with an email address indicating a location not supported by Paddle.
- [**Customer entity not valid for current collection mode**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_customer_not_suitable_for_collection_mode.md) — `subscription_customer_not_suitable_for_collection_mode` (HTTP 400): You are attempting to update a subscription but the customer entity is not valid for the current collection mode
- [**Discount not valid for items on subscription**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_discount_not_valid_for_items.md) — `subscription_discount_not_valid_for_items` (HTTP 400): The discount is not valid for any items in subscription.
- [**Duplicate `price_id` fields sent in the items list**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_duplicate_price_ids.md) — `subscription_duplicate_price_ids` (HTTP 400): The subscription cannot have multiple items with the same `price_id`.
- [**Too many immediate charges made in 24 hours**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_immediate_charge_24_hour_limit_exceeded.md) — `subscription_immediate_charge_24_hour_limit_exceeded` (HTTP 429): You've reached the daily limit for immediate charges to this subscription.
- [**Too many immediate charges made in one hour**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_immediate_charge_hour_limit_exceeded.md) — `subscription_immediate_charge_hour_limit_exceeded` (HTTP 429): You've reached the hourly limit for immediate charges to this subscription.
- [**Proration billing mode not accepted on paused subscription**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_incorrect_proration_on_paused_subscription.md) — `subscription_incorrect_proration_on_paused_subscription` (HTTP 400): `do_not_bill` is the only valid `proration_billing_mode` for paused subscriptions.
- [**Invalid billing mode when updating subscription with scheduled change**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_invalid_billing_mode_for_scheduled_change.md) — `subscription_invalid_billing_mode_for_scheduled_change` (HTTP 400): Subscriptions with a scheduled pause or cancel can only be updated with a supported `proration_billing_mode`
- [**Flat discount is for a currency other than that of the subscription**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_invalid_discount_currency.md) — `subscription_invalid_discount_currency` (HTTP 400): You are attempting to apply a flat discount that has a different currency to that of the subscription
- [**Action can't be performed on canceled subscription**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_is_canceled_action_invalid.md) — `subscription_is_canceled_action_invalid` (HTTP 400): The action or change you are performing can't be performed when the subscription is canceled
- [**Action can't be performed on inactive subscription**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_is_inactive_action_invalid.md) — `subscription_is_inactive_action_invalid` (HTTP 400): The action or change you are performing can't be performed when the subscription is inactive
- [**Subscription items update without proration billing mode**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_items_update_missing_proration_billing_mode.md) — `subscription_items_update_missing_proration_billing_mode` (HTTP 400): Subscription items cannot be updated without providing a valid proration billing mode.
- [**Cannot modify subscription during consent review period**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_locked_consent_review_period.md) — `subscription_locked_consent_review_period` (HTTP 409): Occurs when an attempt to modify a subscription is made during a required consent review period.
- [**Subscription locked for editing while there are pending changes**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_locked_pending_changes.md) — `subscription_locked_pending_changes` (HTTP 400): Occurs when you attempt to make a change to a subscription while there is a change that is still pending.
- [**Subscription locked for editing due to processing**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_locked_processing.md) — `subscription_locked_processing` (HTTP 409): Occurs when you attempt to make a change to a subscription within the 30 minute subscription lock period before processing.
- [**Subscription locked for editing due to renewal**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_locked_renewal.md) — `subscription_locked_renewal` (HTTP 409): Occurs when you attempt to make a change to a subscription within the 30 minute subscription lock period before renewal.
- [**Cannot activate a manually-collected subscription**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_manual_collection_mode_activation_not_allowed.md) — `subscription_manual_collection_mode_activation_not_allowed` (HTTP 400): You can't activate a subscription where `collection_mode` is `manual`.
- [**Cannot retry payments for manually-collected subscription transactions**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_manual_retry_payment_not_allowed.md) — `subscription_manual_retry_payment_not_allowed` (HTTP 400): You're trying to retry a payment for a transaction created for a manually-collected subscription.
- [**Transaction for a subscription has more than the maximum number of line items**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_maximum_number_of_line_items_reached.md) — `subscription_maximum_number_of_line_items_reached` (HTTP 400): You can't make a change to a subscription that creates a related transaction with more than 100 items.
- [**Cannot activate trialing subscription without payment method**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_missing_payment_method_cannot_activate.md) — `subscription_missing_payment_method_cannot_activate` (HTTP 400): You're trying to activate an automatically-collected subscription, but it doesn't have a payment method.
- [**Cannot resume subscription without payment method**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_missing_payment_method_cannot_resume.md) — `subscription_missing_payment_method_cannot_resume` (HTTP 400): You're trying to resume an automatically-collected subscription, but it doesn't have a payment method.
- [**Cannot retry subscription payment without payment method**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_missing_payment_method_cannot_retry_payment.md) — `subscription_missing_payment_method_cannot_retry_payment` (HTTP 400): You're trying to retry a payment for an automatically-collected subscription, but it doesn't have a payment method.
- [**Cannot perform an update on a subscription without a payment method**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_missing_payment_method_cannot_update.md) — `subscription_missing_payment_method_cannot_update` (HTTP 400): You're trying make a change to an automatically-collected subscription that results in a charge, but it doesn't have a payment method.
- [**Action can only be performed when subscription is paused**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_must_be_paused.md) — `subscription_must_be_paused` (HTTP 400): The action or change you are performing requires the subscription to be in a paused state
- [**New items not valid in subscription update**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_new_items_not_valid.md) — `subscription_new_items_not_valid` (HTTP 400): The new items requested to be added are not valid when updating this subscription.
- [**New next_billed_at timestamp is less than 30m from now**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_next_billed_at_too_soon.md) — `subscription_next_billed_at_too_soon` (HTTP 409): The new value set for next_billed_at needs to be at least 30m from now
- [**No recurring items on subscription**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_no_recurring_items_remain.md) — `subscription_no_recurring_items_remain` (HTTP 400): After performing this update there would be no recurring items remaining. At least one recurring item is required.
- [**Subscription not active**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_not_active.md) — `subscription_not_active` (HTTP 400): The action or change you are performing requires the subscription to be active
- [**Subscription not in automatic collection mode**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_not_automatic_collection.md) — `subscription_not_automatic_collection` (HTTP 400): The action or change you are performing requires the subscription to be in automatic collection mode
- [**Cannot add one-off charges to a cardless trial subscription**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_one_off_charges_not_allowed_on_cardless_trial.md) — `subscription_one_off_charges_not_allowed_on_cardless_trial` (HTTP 400): One-off charges cannot be added to cardless trial subscriptions before a payment method has been added.
- [**One-off discount not valid for subscription**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_one_off_discount_not_valid.md) — `subscription_one_off_discount_not_valid` (HTTP 400): The one-off discount added is not valid for subscription.
- [**Only items can be updated when subscription paused**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_only_update_items_on_paused_subscription.md) — `subscription_only_update_items_on_paused_subscription` (HTTP 400): You can only update items on a paused subscription.
- [**Subscription pending refund**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_outstanding_pending_refund.md) — `subscription_outstanding_pending_refund` (HTTP 400): The subscription change is attempting to create an adjustment but there is a pending refund request open
- [**Subscription cannot update due to outstanding transaction**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_outstanding_transaction.md) — `subscription_outstanding_transaction` (HTTP 409): Cannot update subscription due to an outstanding transaction
- [**Pausing not allowed for cardless trial subscription before the payment method is added**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_pausing_not_allowed_for_cardless_trial.md) — `subscription_pausing_not_allowed_for_cardless_trial` (HTTP 400): Pausing isn't supported on cardless trial subscriptions before a payment method is added.
- [**Payment declined**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_payment_declined.md) — `subscription_payment_declined` (HTTP 400): When requesting to charge the payment was declined.
- [**Maximum payment retry attempts exceeded**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_payment_retry_attempts_exceeded.md) — `subscription_payment_retry_attempts_exceeded` (HTTP 400): You are trying to retry payment of a transaction which has exceeded its maximum retry attempts
- [**Price ID cannot be found for subscription**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_price_not_found.md) — `subscription_price_not_found` (HTTP 400): One or more price IDs sent in the items array could not be found or are not available for this subscription.
- [**Cannot add a price requiring a payment method to a cardless trial subscription**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_price_requires_payment_method_on_cardless_trial.md) — `subscription_price_requires_payment_method_on_cardless_trial` (HTTP 400): Prices that require a payment method cannot be added to cardless trial subscriptions before a payment method has been added.
- [**Tax category not approved**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_product_tax_category_not_approved.md) — `subscription_product_tax_category_not_approved` (HTTP 400): Occurs when you supply a tax category for a non-catalog item that is not approved for your account.
- [**Quantity field missing for new items in subscription update**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_quantity_missing_for_new_items.md) — `subscription_quantity_missing_for_new_items` (HTTP 400): When adding new items the quantity field must be included for each item.
- [**Item quantity out of range**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_quantity_not_valid.md) — `subscription_quantity_not_valid` (HTTP 400): Quantity of item requested is out of range of the allowed values.
- [**Attempt to update a scheduled change**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_scheduled_change_invalid_update.md) — `subscription_scheduled_change_invalid_update` (HTTP 400): You can't change `scheduled_change`, except for `null`.
- [**Scheduled change not allowed for cardless trial subscription before the payment method is added**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_scheduled_change_not_allowed_for_cardless_trial.md) — `subscription_scheduled_change_not_allowed_for_cardless_trial` (HTTP 400): Scheduled changes aren't allowed for cardless trial subscriptions before a payment method is added.
- [**Invalid update options for discount on a trialing subscription**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_trialing_discount_update_invalid_options.md) — `subscription_trialing_discount_update_invalid_options` (HTTP 400): You are attempting to add or update a discount on a trialing subscription with invalid options
- [**Invalid update options for items on a trialing subscription**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_trialing_items_update_invalid_options.md) — `subscription_trialing_items_update_invalid_options` (HTTP 400): You are attempting to update items on a trialing subscription with invalid options
- [**Cannot make a subscription update resulting in a mismatch between customer entities**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_update_causing_customer_mismatch_not_allowed.md) — `subscription_update_causing_customer_mismatch_not_allowed` (HTTP 400): You are attempting to make an update to a subscription that will result in a mismatch between customer entities.
- [**Creating credits after currency was updated**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_update_different_currency_credits.md) — `subscription_update_different_currency_credits` (HTTP 400): You are attempting to update subscription by generating credits after currency was updated
- [**Subscription update is less than charge limit**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_update_transaction_balance_less_than_charge_limit.md) — `subscription_update_transaction_balance_less_than_charge_limit` (HTTP 400): A subscription update must result in a transaction balance which is above the lower limit of 70 cent USD
- [**Subscription cannot be updated when canceled**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_update_when_canceled.md) — `subscription_update_when_canceled` (HTTP 400): Occurs when you try to update a canceled subscription.
- [**Subscription cannot be updated when past due**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_update_when_past_due.md) — `subscription_update_when_past_due` (HTTP 400): Occurs when you try to update a past_due subscription.
- [**Subscription cannot be updated when trialing**](https://main--ai-dev-docs.netlify.app/errors/subscriptions/subscription_update_when_trialing.md) — `subscription_update_when_trialing` (HTTP 400): Occurs when you try to update a trialing subscription.

## Transactions

Encountered when working with transaction entities.

- [**Address entity not valid for current collection mode**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_address_not_suitable_for_collection_mode.md) — `transaction_address_not_suitable_for_collection_mode` (HTTP 400): You are attempting to create a transaction but the address entity is not valid for the current collection mode
- [**Cannot revise address region or city**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_address_region_or_city_already_set.md) — `transaction_address_region_or_city_already_set` (HTTP 400): You're trying to revise a transaction to update the city or region, but these fields are already set and can't be changed.
- [**A transaction cannot be revised if it has been adjusted.**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_adjusted_unable_to_revise.md) — `transaction_adjusted_unable_to_revise` (HTTP 400): A transaction cannot be revised if it has been adjusted.
- [**Transaction balance is less than charge limit**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_balance_less_than_charge_limit.md) — `transaction_balance_less_than_charge_limit` (HTTP 400): For a transaction to be ready for payment it must have a chargeable amount greater than 70 cent USD
- [**Billing details must be null if the collection mode is automatic**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_billing_details_must_be_null.md) — `transaction_billing_details_must_be_null` (HTTP 400): You are attempting to set billing details when the collection mode is automatic
- [**Billing details must not be null if the collection mode is manual**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_billing_details_object_required.md) — `transaction_billing_details_object_required` (HTTP 400): You are attempting to set collection mode as manual without Billing Details being provided
- [**New `billing_period.starts_at` timestamp is greater than now**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_billing_period_starts_at_greater_than_now.md) — `transaction_billing_period_starts_at_greater_than_now` (HTTP 400): The value for `billing_period.starts_at` cannot be in future
- [**Cannot send both price ID and Price Object in the same line item**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_both_price_id_and_object_found.md) — `transaction_both_price_id_and_object_found` (HTTP 400): You are attempting to send both the Price ID and Price Object on the same line item
- [**Transaction cannot be modified and canceled**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_cannot_be_modified_and_canceled.md) — `transaction_cannot_be_modified_and_canceled` (HTTP 400): You are attempting to cancel a transaction whilst passing fields to update
- [**Cannot revise transaction with invalid tax identifier**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_cannot_be_revised_with_invalid_tax_identifier.md) — `transaction_cannot_be_revised_with_invalid_tax_identifier` (HTTP 400): You're trying to revise a transaction with an invalid tax identifier.
- [**Cannot revise transaction when the tax amount is higher than the grand total or tax is negative.**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_cannot_be_revised_with_tax_higher_than_grand_total_or_negative_tax.md) — `transaction_cannot_be_revised_with_tax_higher_than_grand_total_or_negative_tax` (HTTP 400): You're trying to revise a transaction with a valid tax_identifier, when tax amount is higher than the grand total or tax is negative.
- [**Cannot provide both Discount Code and ID**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_cannot_provide_both_discount_code_and_id.md) — `transaction_cannot_provide_both_discount_code_and_id` (HTTP 400): You are attempting to add a Discount Code and ID
- [**Checkout has not been enabled**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_checkout_not_enabled.md) — `transaction_checkout_not_enabled` (HTTP 400): You are trying to create/update a transaction but checkouts are disabled for this account.
- [**Checkout URL domain has not yet been approved**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_checkout_url_domain_is_not_approved.md) — `transaction_checkout_url_domain_is_not_approved` (HTTP 400): The value you passed for `checkout.url` does not contain a domain that has been approved by Paddle
- [**Transaction creation not permitted**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_creation_blocked.md) — `transaction_creation_blocked` (HTTP 400): Transaction not created because of legal or compliance restrictions on your account.
- [**Currency code not valid for manual collection mode**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_currency_code_not_valid_for_manual.md) — `transaction_currency_code_not_valid_for_manual` (HTTP 400): You are attempting to create a manual transaction but the currency code is not valid
- [**Custom data contains a numeric value larger than the maximum allowed**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_custom_data_numeric_value_too_large.md) — `transaction_custom_data_numeric_value_too_large` (HTTP 400): You are attempting to create or update a transaction with custom data that contains a numeric value larger than the maximum allowed.
- [**Customer ID is required for validating a business**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_customer_is_required_for_business_validation.md) — `transaction_customer_is_required_for_business_validation` (HTTP 400): CustomerID is required for validating a business
- [**Customer ID is required for validating an address**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_customer_is_required_with_address.md) — `transaction_customer_is_required_with_address` (HTTP 400): customerID is required for validating an address
- [**Customer entity not valid for current collection mode**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_customer_not_suitable_for_collection_mode.md) — `transaction_customer_not_suitable_for_collection_mode` (HTTP 400): You are attempting to create a transaction but the customer entity is not valid for the current collection mode
- [**Default payment link hasn't been set**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_default_checkout_url_not_set.md) — `transaction_default_checkout_url_not_set` (HTTP 400): You're trying to create a transaction or open a checkout, but you haven't set a default payment link in your Paddle dashboard.
- [**Discount not applicable for transaction items**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_discount_not_eligible.md) — `transaction_discount_not_eligible` (HTTP 400): You are applying a discount that doesn't apply to any of the transaction items.
- [**Discount Code or ID cannot be found**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_discount_not_found.md) — `transaction_discount_not_found` (HTTP 400): You are attempting to add a Discount Code/ID that cant be found
- [**Duplicate Price IDs were passed as separate items**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_duplicate_price_ids.md) — `transaction_duplicate_price_ids` (HTTP 400): Cannot have duplicate Price IDs passed as separate items
- [**Transaction is in immutable state**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_immutable.md) — `transaction_immutable` (HTTP 400): You are trying to update a transaction which is not in the draft or ready state.
- [**Cannot update transaction while payment in progress**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_immutable_while_processing_payment.md) — `transaction_immutable_while_processing_payment` (HTTP 409): You're trying to update a transaction while a payment attempt is in progress.
- [**Cannot have a mix of trial prices requiring payment method**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_invalid_combination_of_requires_payment_method_prices.md) — `transaction_invalid_combination_of_requires_payment_method_prices` (HTTP 400): You're trying to create a transaction where some items require a payment method in trial and others don't.
- [**Flat discount is for a currency other than that of the transaction**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_invalid_discount_currency.md) — `transaction_invalid_discount_currency` (HTTP 400): You are attempting to apply a flat discount that has a different currency to that of the transaction
- [**Invalid status change**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_invalid_status_change.md) — `transaction_invalid_status_change` (HTTP 400): Invalid status change attempted
- [**A transaction must be in the status of billed or completed to be revised.**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_invalid_status_to_revise.md) — `transaction_invalid_status_to_revise` (HTTP 400): A transaction must be in the status of billed or completed to be revised.
- [**Quantity provided is not within the price quantity range**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_item_quantity_out_of_range.md) — `transaction_item_quantity_out_of_range` (HTTP 400): You are attempting to provide an item quantity that is not within the price quantity range
- [**Cannot have trialing prices that don't require a payment method on a manually-collected transaction**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_manual_must_require_payment_method.md) — `transaction_manual_must_require_payment_method` (HTTP 400): You're trying to create a manually-collected transaction with items that don't require a payment method in trial.
- [**Maximum number of line items reached**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_maximum_number_of_line_items_reached.md) — `transaction_maximum_number_of_line_items_reached` (HTTP 400): You're trying to add more line items than is currently allowed on a transaction.
- [**Cannot process payment for a transaction with non-ready status**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_not_ready_cannot_process_payment.md) — `transaction_not_ready_cannot_process_payment` (HTTP 422): You are processing payment for a transaction that's not in a ready state
- [**Nothing to revise**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_nothing_to_revise.md) — `transaction_nothing_to_revise` (HTTP 400): Transaction not revised based on your request.
- [**Only customer, address, and business information may be changed for a transaction created to update a payment method.**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_payment_method_change_field_immutable.md) — `transaction_payment_method_change_field_immutable` (HTTP 400): Only customer, address, and business information may be changed for a transaction created to update a payment method.
- [**Payment terms frequency must be equal to or lower than 999**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_payment_terms_frequency_greater_than_maximum.md) — `transaction_payment_terms_frequency_greater_than_maximum` (HTTP 400): Occurs when your supplied value for billing_details.payment_terms.frequency is greater than 999.
- [**Payment Terms must be non null when initially setting Billing Details**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_payment_terms_object_required.md) — `transaction_payment_terms_object_required` (HTTP 400): You have not provided Payment Details whilst setting Billing Details
- [**Payout account is required for processing a transaction**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_payout_account_required.md) — `transaction_payout_account_required` (HTTP 400): You are trying to create/update a transaction but no payout account has been set on this account.
- [**When previewing a transaction with multiple adjustments all the transaction need to belong to the same subscription.**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_preview_adjustment_subscription_conflict.md) — `transaction_preview_adjustment_subscription_conflict` (HTTP 400): You are attempting to preview a transaction with several adjustments, but the transactions associated to them have different subscription IDs
- [**Cannot have different price billing cycle intervals and/or frequencies**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_price_different_billing_cycle.md) — `transaction_price_different_billing_cycle` (HTTP 400): You are attempting to create a transaction with prices that have differing billing cycle intervals and/or frequencies
- [**Cannot have different trial period intervals and/or frequencies**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_price_different_trial_period.md) — `transaction_price_different_trial_period` (HTTP 400): You are attempting to create a transaction with prices that have differing trial period intervals and/or frequencies
- [**Price ID cannot be found**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_price_not_found.md) — `transaction_price_not_found` (HTTP 400): You are attempting to send one or more Price ID(s) that can't be found
- [**Product ID cannot be found**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_product_not_found.md) — `transaction_product_not_found` (HTTP 400): You are attempting to send one or more Product ID(s) that cant be found
- [**Transaction recurring balance is less than charge limit**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_recurring_balance_less_than_charge_limit.md) — `transaction_recurring_balance_less_than_charge_limit` (HTTP 400): For a transaction with recurring prices to be ready for payment, the recurring chargeable amount must be greater than 70 cent USD
- [**Transaction requires a currency_code for custom discounts.**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_requires_currency_code_for_custom_discount.md) — `transaction_requires_currency_code_for_custom_discount` (HTTP 400): You are trying to create a transaction with a custom discount that requires a currency_code to be included.
- [**Cannot revise a transaction without a business name**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_revise_missing_business_name.md) — `transaction_revise_missing_business_name` (HTTP 400): You're trying to revise a transaction to add business information, but you haven't provided a name.
- [**A transaction has already been revised.**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_revised_limit_reached.md) — `transaction_revised_limit_reached` (HTTP 400): A transaction has already been revised.
- [**Transaction status needs to be ready**](https://main--ai-dev-docs.netlify.app/errors/transactions/transaction_status_must_be_ready.md) — `transaction_status_must_be_ready` (HTTP 400): You are attempting to perform an action that requires the transaction to be in the ready status
