---
title: Create installment-based commitment
slug: reference/create-installment-based-commitment
docTags: 
createdAt: 2025-03-18T18:28:02.919Z
---

{
  "id": "YA3q4Ajm-pNrNEUuNfnaZ",
  "type": "api-oas-v2",
  "data": {
    "method": "POST",
    "url": "https://app.amberflo.io/payments/pricing/amberflo/customer-commitment/installments_commitment",
    "servers": [
      {
        "url": "https://app.amberflo.io/payments/pricing/amberflo/customer-commitment/installments_commitment"
      }
    ],
    "name": "Create installment-based commitment",
    "description": "<p>Creates a customer commitment contract with structured installment payment schedules.</p>\n<p>This allows customers to spread payment obligations across multiple billing cycles while securing\nusage-based pricing benefits. Each installment payment automatically provisions corresponding prepaid credits.</p>\n<p>Use this for customers wanting to spread large commitment payments over time,\ncash flow management for enterprise accounts, or seasonal businesses with variable payment capabilities.</p>",
    "contentType": "application/json",
    "request": {
      "pathParameters": [],
      "headerParameters": [],
      "queryParameters": [],
      "bodyDataParameters": [
        {
          "kind": "required",
          "name": "body",
          "type": "object",
          "description": "Installment contract generator with payment cycle schedule and prepaid card configuration for structured payment commitments",
          "customType": "payment.pricing.commitments.generators.InstallmentContractGenerator.in",
          "schema": [
            {
              "name": "type",
              "kind": "optional",
              "type": "string",
              "description": "Contract generator type identifier for installment commitments with scheduled payment plans.",
              "example": "",
              "default": "installments_commitment"
            },
            {
              "name": "customerId",
              "kind": "required",
              "type": "string",
              "description": "Unique identifier of the customer entering into this installment commitment contract.",
              "example": ""
            },
            {
              "name": "notifyOnClientViolation",
              "kind": "optional",
              "type": "boolean",
              "description": "Flag indicating whether to send notifications when customer violates installment commitment terms.",
              "example": "",
              "default": false
            },
            {
              "name": "planId",
              "kind": "required",
              "type": "string",
              "description": "Identifier of the product plan associated with this installment commitment contract.",
              "example": ""
            },
            {
              "name": "planOverrideGenerator",
              "kind": "optional",
              "type": "object",
              "description": "Optional plan generator to override default pricing rules for this installment commitment contract.",
              "modelRef": "#/components/schemas/payment.pricing.plans.generators.PlanGenerator.in",
              "customType": "payment.pricing.plans.generators.PlanGenerator.in",
              "schema": [],
              "complexType": "oneOf",
              "complexItems": [
                {
                  "name": "payment.pricing.plans.generators.CustomPlanGenerator.in",
                  "description": "",
                  "modelRef": "#/components/schemas/payment.pricing.plans.generators.CustomPlanGenerator.in",
                  "schema": [
                    {
                      "name": "type",
                      "kind": "optional",
                      "type": "string",
                      "description": "Type of template, automatically populated.",
                      "example": "",
                      "default": "custom_pricing_plan"
                    },
                    {
                      "name": "id",
                      "kind": "required",
                      "type": "string",
                      "description": "Unique identifier for the pricing plan template.",
                      "example": ""
                    },
                    {
                      "name": "billingPeriod",
                      "kind": "required",
                      "type": "object",
                      "description": "Billing frequency determining invoice generation intervals.",
                      "modelRef": "#/components/schemas/payment.pricing.BillingPeriod.in",
                      "customType": "payment.pricing.BillingPeriod.in",
                      "schema": [
                        {
                          "name": "interval",
                          "kind": "optional",
                          "type": "string",
                          "description": "Time interval unit for billing cycle such as day, month, or year",
                          "modelRef": "#/components/schemas/payment.pricing.BillingPeriodInterval.in",
                          "customType": "payment.pricing.BillingPeriodInterval.in",
                          "schema": []
                        },
                        {
                          "name": "intervalsCount",
                          "kind": "optional",
                          "type": "integer<int32>",
                          "description": "Number of intervals in billing cycle with minimum value of 1",
                          "example": 0
                        }
                      ]
                    },
                    {
                      "name": "planLevelFreeTier",
                      "kind": "optional",
                      "type": "number",
                      "description": "Amount that user can use for free without paying on a plan level.",
                      "example": ""
                    },
                    {
                      "name": "invoiceBasedFeeIds",
                      "kind": "optional",
                      "type": "array",
                      "description": "A set of fee ids that can calculate an invoice's cost in a custom way.",
                      "example": "",
                      "itemType": "string",
                      "customType": "string[]",
                      "itemExample": "",
                      "itemDefault": ""
                    },
                    {
                      "name": "planMinimumPayment",
                      "kind": "optional",
                      "type": "number",
                      "description": "A minimum payment for the entire plan.",
                      "example": ""
                    },
                    {
                      "name": "minimumPaymentGranularity",
                      "kind": "optional",
                      "type": "string",
                      "description": "Determines the granularity of the payment. only 'hourly' and 'entire_invoice_period' are allowed, currently.",
                      "modelRef": "#/components/schemas/payment.pricing.price.UsageGranularity.in",
                      "customType": "payment.pricing.price.UsageGranularity.in",
                      "schema": []
                    },
                    {
                      "name": "planName",
                      "kind": "required",
                      "type": "string",
                      "description": "Human-readable plan name for user interface display.",
                      "example": ""
                    },
                    {
                      "name": "description",
                      "kind": "optional",
                      "type": "string",
                      "description": "Description of the plan. Useful for displaying to users.",
                      "example": ""
                    },
                    {
                      "name": "feeMap",
                      "kind": "optional",
                      "type": "map",
                      "description": "Fee Id to fee that maps to product plan fee.",
                      "example": "",
                      "customType": "map<string, payment.pricing.ProductPlanFee.in>",
                      "schema": []
                    },
                    {
                      "name": "entitlements",
                      "kind": "optional",
                      "type": "array",
                      "description": "A list of entitlements: Entitlement is a feature flag for a specified entitlement id or an api name.",
                      "modelRef": "#/components/schemas/payment.pricing.Entitlements.Entitlement.in",
                      "customType": "payment.pricing.Entitlements.Entitlement.in[]",
                      "schema": [
                        {
                          "name": "id",
                          "kind": "required",
                          "type": "string",
                          "description": "Unique identifier for the entitlement used in feature flag controls and access validation.",
                          "example": ""
                        },
                        {
                          "name": "label",
                          "kind": "optional",
                          "type": "string",
                          "description": "Human-readable display name for the entitlement shown in user interfaces and documentation.",
                          "example": ""
                        },
                        {
                          "name": "apiName",
                          "kind": "required",
                          "type": "string",
                          "description": "User-defined API reference name for programmatic entitlement checks and feature gate logic.",
                          "example": ""
                        }
                      ]
                    },
                    {
                      "name": "lockingStatus",
                      "kind": "optional",
                      "type": "string",
                      "description": "Indicates if the plan can be modified or not.",
                      "modelRef": "#/components/schemas/common.LockingStatus.in",
                      "customType": "common.LockingStatus.in",
                      "schema": []
                    },
                    {
                      "name": "isDefault",
                      "kind": "optional",
                      "type": "boolean",
                      "description": "Indicates if the plan is the default plan for users.",
                      "example": ""
                    },
                    {
                      "name": "successorPlanId",
                      "kind": "optional",
                      "type": "string",
                      "description": "Indicates if the plan has a successor. Gives the option to automatically assign a new plan for a given plan once current plan is deprecated.",
                      "example": ""
                    },
                    {
                      "name": "transitionStrategy",
                      "kind": "optional",
                      "type": "string",
                      "description": "Successor plan transition: whether to wait for end of billing cycle or not.",
                      "modelRef": "#/components/schemas/payment.pricing.SuccessorPlanTransitionStrategy.in",
                      "customType": "payment.pricing.SuccessorPlanTransitionStrategy.in",
                      "schema": []
                    },
                    {
                      "name": "prepaidBuyingRules",
                      "kind": "optional",
                      "type": "object",
                      "description": "Rules for the prepaid",
                      "modelRef": "#/components/schemas/payment.pricing.prepaid.PlanPrepaidBuyingRules.in",
                      "customType": "payment.pricing.prepaid.PlanPrepaidBuyingRules.in",
                      "schema": [
                        {
                          "name": "planFixedFeeIdsToPrepay",
                          "kind": "optional",
                          "type": "array",
                          "description": "List of fixed fee identifiers that must be prepaid for this plan.",
                          "example": "",
                          "itemType": "string",
                          "customType": "string[]",
                          "itemExample": "",
                          "itemDefault": ""
                        },
                        {
                          "name": "planRecurringPrepaidAmount",
                          "kind": "optional",
                          "type": "number",
                          "description": "Recurring prepaid amount purchased every billing period at plan level.",
                          "example": ""
                        },
                        {
                          "name": "productItemRecurringPrepaidAmount",
                          "kind": "optional",
                          "type": "array",
                          "description": "Recurring prepaid amounts purchased every billing period per product item.",
                          "modelRef": "#/components/schemas/payment.pricing.prepaid.PrepaidProductItem.in",
                          "customType": "payment.pricing.prepaid.PrepaidProductItem.in[]",
                          "schema": [
                            {
                              "name": "productItemId",
                              "kind": "optional",
                              "type": "string",
                              "description": "Product item identifier that is associated with the prepaid credit amount.",
                              "example": ""
                            },
                            {
                              "name": "prepaidAmount",
                              "kind": "optional",
                              "type": "number",
                              "description": "Prepaid credit amount allocated to this specific product item for usage.",
                              "example": ""
                            }
                          ]
                        },
                        {
                          "name": "walletMinPrepaidAvailable",
                          "kind": "optional",
                          "type": "number",
                          "description": "Minimum prepaid balance threshold triggering automatic top-up purchases.",
                          "example": ""
                        },
                        {
                          "name": "productItemMinPrepaidAvailable",
                          "kind": "optional",
                          "type": "map",
                          "description": "Product item ID to minimum prepaid balance map for automatic purchases.",
                          "example": "",
                          "customType": "map<string, number>",
                          "schema": []
                        }
                      ]
                    },
                    {
                      "name": "planCurrency",
                      "kind": "optional",
                      "type": "string",
                      "description": "The customized currency for the plan in ISO 4217 format.",
                      "example": "USD"
                    },
                    {
                      "name": "priceGenerators",
                      "kind": "required",
                      "type": "object",
                      "description": "List of price generators to use in the plan. Can be any price generator.",
                      "modelRef": "#/components/schemas/payment.pricing.price.generators.PriceGenerator.in",
                      "customType": "payment.pricing.price.generators.PriceGenerator.in[]",
                      "schema": [],
                      "complexType": "oneOf",
                      "complexItems": [
                        {
                          "name": "payment.pricing.price.generators.CostPlusDimensionPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.CostPlusDimensionPriceGenerator.in",
                          "schema": [
                            {
                              "name": "dimensionKeys",
                              "kind": "required",
                              "type": "array",
                              "description": "Dimension key names used to identify different dimensional variations for cost-plus pricing calculations.",
                              "example": "",
                              "itemType": "string",
                              "customType": "string[]",
                              "itemExample": "",
                              "itemDefault": ""
                            },
                            {
                              "name": "id",
                              "kind": "optional",
                              "type": "string",
                              "description": "Unique identifier for this cost-plus dimensional pricing generator configuration and billing operations.",
                              "example": ""
                            },
                            {
                              "name": "productItemId",
                              "kind": "required",
                              "type": "string",
                              "description": "Product item identifier that this cost-plus dimensional pricing generator applies to for billing.",
                              "example": ""
                            },
                            {
                              "name": "productItemInvoiceLabel",
                              "kind": "optional",
                              "type": "string",
                              "description": "Optional custom label displayed on invoices to override default product item naming conventions.",
                              "example": ""
                            },
                            {
                              "name": "productItemPriceName",
                              "kind": "optional",
                              "type": "string",
                              "description": "Human-readable name for this cost-plus pricing generator displayed in user interfaces and reports.",
                              "example": ""
                            },
                            {
                              "name": "lockingStatus",
                              "kind": "optional",
                              "type": "string",
                              "description": "Lock status indicating whether this cost-plus pricing generator configuration can be modified or deleted.",
                              "modelRef": "#/components/schemas/common.LockingStatus.in",
                              "customType": "common.LockingStatus.in",
                              "schema": []
                            },
                            {
                              "name": "scalar",
                              "kind": "optional",
                              "type": "number",
                              "description": "Numerical multiplier applied to usage values before cost-plus pricing calculations and tier evaluations.",
                              "example": ""
                            },
                            {
                              "name": "dimensionalScalars",
                              "kind": "optional",
                              "type": "array",
                              "description": "Dimension-specific multipliers applied to usage values based on dimensional characteristics for cost-plus pricing.",
                              "modelRef": "#/components/schemas/payment.pricing.price.DimensionalScalar.in",
                              "customType": "payment.pricing.price.DimensionalScalar.in[]",
                              "schema": [
                                {
                                  "name": "dimensionConstraintMap",
                                  "kind": "optional",
                                  "type": "map",
                                  "description": "Map of dimension name value pairs that must match for scalar to apply.",
                                  "example": "",
                                  "customType": "map<string, string>",
                                  "schema": []
                                },
                                {
                                  "name": "scalar",
                                  "kind": "optional",
                                  "type": "number",
                                  "description": "Positive multiplier value applied to usage when dimension constraints are satisfied.",
                                  "example": ""
                                }
                              ]
                            },
                            {
                              "name": "priceTiers",
                              "kind": "required",
                              "type": "array",
                              "description": "Tiered pricing structure defining cost-plus rates and thresholds for different usage volume ranges.",
                              "modelRef": "#/components/schemas/payment.pricing.price.generators.TieredPriceGroupInfo.in",
                              "customType": "payment.pricing.price.generators.TieredPriceGroupInfo.in[]",
                              "schema": [
                                {
                                  "name": "dimensionValues",
                                  "kind": "optional",
                                  "type": "array",
                                  "description": "Dimension values that define the specific dimensional combination for this tiered pricing group configuration.",
                                  "example": "",
                                  "itemType": "string",
                                  "customType": "string[]",
                                  "itemExample": "",
                                  "itemDefault": ""
                                },
                                {
                                  "name": "priceTiers",
                                  "kind": "optional",
                                  "type": "array",
                                  "description": "Tiered pricing structure defining rates and thresholds for different usage volume ranges or billing periods.",
                                  "modelRef": "#/components/schemas/payment.pricing.price.PriceTier.in",
                                  "customType": "payment.pricing.price.PriceTier.in[]",
                                  "schema": [
                                    {
                                      "name": "",
                                      "description": "",
                                      "customType": "Max depth limit reached"
                                    }
                                  ]
                                },
                                {
                                  "name": "leafNodeType",
                                  "kind": "required",
                                  "type": "string",
                                  "description": "Pricing leaf node type that determines how final price calculations are performed for this tier group.",
                                  "example": ""
                                }
                              ]
                            },
                            {
                              "name": "allowPartialBatch",
                              "kind": "optional",
                              "type": "boolean",
                              "description": "Flag indicating whether partial batch processing is allowed for cost-plus pricing tier calculations.",
                              "example": ""
                            },
                            {
                              "name": "type",
                              "kind": "optional",
                              "type": "string",
                              "description": "Fixed generator type identifier for cost-plus dimensional pricing template processing and validation.",
                              "example": "",
                              "default": "cost_plus_dimension"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.CostPlusNoDimensionPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.CostPlusNoDimensionPriceGenerator.in",
                          "schema": [
                            {
                              "name": "id",
                              "kind": "optional",
                              "type": "string",
                              "description": "Unique identifier for this cost-plus pricing generator configuration without dimensional variations.",
                              "example": ""
                            },
                            {
                              "name": "productItemId",
                              "kind": "required",
                              "type": "string",
                              "description": "Product item identifier that this cost-plus pricing generator applies to for billing operations.",
                              "example": ""
                            },
                            {
                              "name": "productItemInvoiceLabel",
                              "kind": "optional",
                              "type": "string",
                              "description": "Optional custom label displayed on invoices to override default product item naming conventions.",
                              "example": ""
                            },
                            {
                              "name": "productItemPriceName",
                              "kind": "optional",
                              "type": "string",
                              "description": "Human-readable name for this cost-plus pricing generator displayed in user interfaces and reports.",
                              "example": ""
                            },
                            {
                              "name": "scalar",
                              "kind": "optional",
                              "type": "number",
                              "description": "Numerical multiplier applied to usage values before cost-plus pricing calculations and tier evaluations.",
                              "example": ""
                            },
                            {
                              "name": "dimensionalScalars",
                              "kind": "optional",
                              "type": "array",
                              "description": "Dimension-specific multipliers applied to usage values despite this generator having no primary dimensions.",
                              "modelRef": "#/components/schemas/payment.pricing.price.DimensionalScalar.in",
                              "customType": "payment.pricing.price.DimensionalScalar.in[]",
                              "schema": [
                                {
                                  "name": "",
                                  "description": "",
                                  "customType": "Max depth limit reached"
                                }
                              ]
                            },
                            {
                              "name": "priceTiers",
                              "kind": "required",
                              "type": "array",
                              "description": "Tiered pricing structure defining cost-plus rates and thresholds for different usage volume ranges.",
                              "modelRef": "#/components/schemas/payment.pricing.price.PriceTier.in",
                              "customType": "payment.pricing.price.PriceTier.in[]",
                              "schema": [
                                {
                                  "name": "",
                                  "description": "",
                                  "customType": "Max depth limit reached"
                                }
                              ]
                            },
                            {
                              "name": "allowPartialBatch",
                              "kind": "optional",
                              "type": "boolean",
                              "description": "Flag indicating whether partial batch processing is allowed for cost-plus pricing tier calculations.",
                              "example": ""
                            },
                            {
                              "name": "type",
                              "kind": "optional",
                              "type": "string",
                              "description": "Fixed generator type identifier for cost-plus non-dimensional pricing template processing and validation.",
                              "example": "",
                              "default": "cost_plus_no_dimension"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.FlatRatePriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.FlatRatePriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.FlatRateWithOveragesPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.FlatRateWithOveragesPriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.InterchangePlusNoDimensionPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.InterchangePlusNoDimensionPriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.InterchangePlusDimensionPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.InterchangePlusDimensionPriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.SubscriptionWithOveragePriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.SubscriptionWithOveragePriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.TieredSeatBasedGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.TieredSeatBasedGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.TieredSeatBasedDimensionGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.TieredSeatBasedDimensionGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.UltraFrequencyNoDimensionPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.UltraFrequencyNoDimensionPriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.UltraFrequencyDimensionPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.UltraFrequencyDimensionPriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.UltraFrequencySubscriptionWithOveragePriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.UltraFrequencySubscriptionWithOveragePriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.UsageBasedDimensionPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedDimensionPriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.MaxUsageBasedDimensionPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.MaxUsageBasedDimensionPriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.SumUsageBasedDimensionPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.SumUsageBasedDimensionPriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.UsageBasedNoDimensionPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedNoDimensionPriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.MaxUsageBasedNoDimensionPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.MaxUsageBasedNoDimensionPriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.SumUsageBasedNoDimensionPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.SumUsageBasedNoDimensionPriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.UsageBasedVolumePriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedVolumePriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.UsageBasedVolumeDimensionPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedVolumeDimensionPriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "name": "invoiceBasedFees",
                      "kind": "optional",
                      "type": "object",
                      "description": "The service fees for the invoice.",
                      "modelRef": "#/components/schemas/payment.pricing.invoice_based_fees.InvoiceBasedFee.in",
                      "customType": "payment.pricing.invoice_based_fees.InvoiceBasedFee.in[]",
                      "schema": [],
                      "complexType": "oneOf",
                      "complexItems": [
                        {
                          "name": "payment.pricing.invoice_based_fees.ConstantInvoiceRatioFee.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.invoice_based_fees.ConstantInvoiceRatioFee.in",
                          "schema": [
                            {
                              "name": "type",
                              "kind": "optional",
                              "type": "string",
                              "description": "Discriminator field identifying this as a constant ratio fee type.",
                              "example": "",
                              "default": "constant_invoice_ratio_fee"
                            },
                            {
                              "name": "productId",
                              "kind": "optional",
                              "type": "string",
                              "description": "Product identifier this invoice-based fee applies to.",
                              "example": ""
                            },
                            {
                              "name": "id",
                              "kind": "optional",
                              "type": "string",
                              "description": "Unique identifier for this invoice-based fee configuration.",
                              "example": ""
                            },
                            {
                              "name": "name",
                              "kind": "optional",
                              "type": "string",
                              "description": "Human-readable name for this fee configuration.",
                              "example": ""
                            },
                            {
                              "name": "description",
                              "kind": "optional",
                              "type": "string",
                              "description": "Detailed explanation of this fee's purpose and calculation method.",
                              "example": ""
                            },
                            {
                              "name": "lockingStatus",
                              "kind": "optional",
                              "type": "string",
                              "description": "Current locking status indicating if the fee is active or locked.",
                              "modelRef": "#/components/schemas/common.LockingStatus.in",
                              "customType": "common.LockingStatus.in",
                              "schema": []
                            },
                            {
                              "name": "lastUpdateTimeInMillis",
                              "kind": "optional",
                              "type": "integer<int64>",
                              "description": "Unix timestamp in milliseconds of the last update to this fee.",
                              "example": 0
                            },
                            {
                              "name": "percentsOfInvoice",
                              "kind": "optional",
                              "type": "number",
                              "description": "Percentage of invoice total to charge as fee in decimal format.",
                              "example": ""
                            },
                            {
                              "name": "minimumFeePerFullCycle",
                              "kind": "optional",
                              "type": "number",
                              "description": "Optional minimum fee amount charged per complete billing cycle.",
                              "example": ""
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "name": "realTimePricing",
                      "kind": "optional",
                      "type": "boolean",
                      "description": "To indicate if the pricing plan should allow real-time workflows (e.g. top-ups)",
                      "example": ""
                    }
                  ]
                },
                {
                  "name": "payment.pricing.plans.generators.FlatRatePlanGenerator.in",
                  "description": "",
                  "modelRef": "#/components/schemas/payment.pricing.plans.generators.FlatRatePlanGenerator.in",
                  "schema": [
                    {
                      "name": "id",
                      "kind": "required",
                      "type": "string",
                      "description": "Unique identifier for this flat rate pricing plan template.",
                      "example": ""
                    },
                    {
                      "name": "billingPeriod",
                      "kind": "required",
                      "type": "object",
                      "description": "Billing frequency determining how often invoices are generated for this plan.",
                      "modelRef": "#/components/schemas/payment.pricing.BillingPeriod.in",
                      "customType": "payment.pricing.BillingPeriod.in",
                      "schema": [
                        {
                          "name": "interval",
                          "kind": "optional",
                          "type": "string",
                          "description": "Time interval unit for billing cycle such as day, month, or year",
                          "modelRef": "#/components/schemas/payment.pricing.BillingPeriodInterval.in",
                          "customType": "payment.pricing.BillingPeriodInterval.in",
                          "schema": []
                        },
                        {
                          "name": "intervalsCount",
                          "kind": "optional",
                          "type": "integer<int32>",
                          "description": "Number of intervals in billing cycle with minimum value of 1",
                          "example": 0
                        }
                      ]
                    },
                    {
                      "name": "planName",
                      "kind": "required",
                      "type": "string",
                      "description": "Human-readable name for this flat rate pricing plan.",
                      "example": ""
                    },
                    {
                      "name": "priceGenerators",
                      "kind": "required",
                      "type": "array",
                      "description": "List of flat rate price generators defining the billing logic.",
                      "modelRef": "#/components/schemas/payment.pricing.price.generators.FlatRatePriceGenerator.in",
                      "customType": "payment.pricing.price.generators.FlatRatePriceGenerator.in[]",
                      "schema": [
                        {
                          "name": "id",
                          "kind": "required",
                          "type": "string",
                          "description": "Unique identifier for this flat rate pricing generator configuration and billing operations.",
                          "example": ""
                        },
                        {
                          "name": "flatRate",
                          "kind": "required",
                          "type": "number",
                          "description": "Fixed monetary amount charged regardless of usage volume for flat rate pricing model.",
                          "example": ""
                        },
                        {
                          "name": "productItemId",
                          "kind": "required",
                          "type": "string",
                          "description": "Product item identifier that this flat rate pricing generator applies to for billing operations.",
                          "example": ""
                        },
                        {
                          "name": "lockingStatus",
                          "kind": "optional",
                          "type": "string",
                          "description": "Lock status indicating whether this flat rate pricing generator configuration can be modified.",
                          "modelRef": "#/components/schemas/common.LockingStatus.in",
                          "customType": "common.LockingStatus.in",
                          "schema": []
                        },
                        {
                          "name": "productItemInvoiceLabel",
                          "kind": "optional",
                          "type": "string",
                          "description": "Optional custom label displayed on invoices to override default product item naming conventions.",
                          "example": ""
                        },
                        {
                          "name": "productItemPriceName",
                          "kind": "optional",
                          "type": "string",
                          "description": "Human-readable name for this flat rate pricing generator displayed in user interfaces.",
                          "example": ""
                        },
                        {
                          "name": "scalar",
                          "kind": "optional",
                          "type": "number",
                          "description": "Optional numerical multiplier applied to usage values before flat rate pricing calculations.",
                          "example": ""
                        },
                        {
                          "name": "dimensionalScalars",
                          "kind": "optional",
                          "type": "array",
                          "description": "Optional dimension-specific multipliers applied to usage values for flat rate pricing variations.",
                          "modelRef": "#/components/schemas/payment.pricing.price.DimensionalScalar.in",
                          "customType": "payment.pricing.price.DimensionalScalar.in[]",
                          "schema": [
                            {
                              "name": "dimensionConstraintMap",
                              "kind": "optional",
                              "type": "map",
                              "description": "Map of dimension name value pairs that must match for scalar to apply.",
                              "example": "",
                              "customType": "map<string, string>",
                              "schema": []
                            },
                            {
                              "name": "scalar",
                              "kind": "optional",
                              "type": "number",
                              "description": "Positive multiplier value applied to usage when dimension constraints are satisfied.",
                              "example": ""
                            }
                          ]
                        },
                        {
                          "name": "usageTransformer",
                          "kind": "optional",
                          "type": "object",
                          "description": "Optional usage data transformer configuration for modifying usage before flat rate pricing.",
                          "modelRef": "#/components/schemas/payment.pricing.UsageTransformer.in",
                          "customType": "payment.pricing.UsageTransformer.in",
                          "schema": [
                            {
                              "name": "id",
                              "kind": "optional",
                              "type": "string",
                              "description": "Unique identifier for a particular usage transformer.",
                              "example": ""
                            },
                            {
                              "name": "name",
                              "kind": "optional",
                              "type": "string",
                              "description": "Name given to the usage transformer.",
                              "example": ""
                            },
                            {
                              "name": "transformUsageDimensionName",
                              "kind": "optional",
                              "type": "string",
                              "description": "Name of the dimension used to transform / scale usage.",
                              "example": ""
                            },
                            {
                              "name": "productItemId",
                              "kind": "optional",
                              "type": "string",
                              "description": "Product item id associated with the usage transformer.",
                              "example": ""
                            },
                            {
                              "name": "dimensionsInterpolations",
                              "kind": "optional",
                              "type": "object",
                              "description": "List of dimension interpolations, used to derive new dimensions and their values.",
                              "modelRef": "#/components/schemas/common.dimensions_interpolation.DimensionsInterpolation.in",
                              "customType": "common.dimensions_interpolation.DimensionsInterpolation.in[]",
                              "schema": [],
                              "complexType": "oneOf",
                              "complexItems": [
                                {
                                  "name": "common.dimensions_interpolation.ListNumericInterpolation.in",
                                  "description": "",
                                  "modelRef": "#/components/schemas/common.dimensions_interpolation.ListNumericInterpolation.in",
                                  "schema": [
                                    {
                                      "name": "",
                                      "description": "",
                                      "customType": "Max depth limit reached"
                                    }
                                  ]
                                },
                                {
                                  "name": "common.dimensions_interpolation.TableInterpolation.in",
                                  "description": "",
                                  "modelRef": "#/components/schemas/common.dimensions_interpolation.TableInterpolation.in",
                                  "schema": [
                                    {
                                      "name": "",
                                      "description": "",
                                      "customType": "Max depth limit reached"
                                    }
                                  ]
                                },
                                {
                                  "name": "common.dimensions_interpolation.TiersInterpolation.in",
                                  "description": "",
                                  "modelRef": "#/components/schemas/common.dimensions_interpolation.TiersInterpolation.in",
                                  "schema": [
                                    {
                                      "name": "",
                                      "description": "",
                                      "customType": "Max depth limit reached"
                                    }
                                  ]
                                }
                              ]
                            },
                            {
                              "name": "requiredDimensions",
                              "kind": "optional",
                              "type": "array",
                              "description": "Required dimensions.",
                              "example": "",
                              "itemType": "string",
                              "customType": "string[]",
                              "itemExample": "",
                              "itemDefault": ""
                            },
                            {
                              "name": "lockingStatus",
                              "kind": "optional",
                              "type": "string",
                              "description": "Indicates if the plan can be modified or not.",
                              "modelRef": "#/components/schemas/common.LockingStatus.in",
                              "customType": "common.LockingStatus.in",
                              "schema": [
                                {
                                  "name": "",
                                  "description": "",
                                  "customType": "Max depth limit reached"
                                }
                              ]
                            },
                            {
                              "name": "lastUpdateTimeInMillis",
                              "kind": "optional",
                              "type": "integer<int64>",
                              "description": "Last update time, in [Unix time](https://en.wikipedia.org/wiki/Unix_time) (milliseconds).",
                              "example": 0
                            }
                          ]
                        },
                        {
                          "name": "type",
                          "kind": "optional",
                          "type": "string",
                          "description": "Fixed generator type identifier for flat rate pricing template processing and validation.",
                          "example": "",
                          "default": "flat_rate"
                        }
                      ]
                    },
                    {
                      "name": "description",
                      "kind": "optional",
                      "type": "string",
                      "description": "Detailed description of the flat rate plan for user interface.",
                      "example": ""
                    },
                    {
                      "name": "invoiceBasedFeeIds",
                      "kind": "optional",
                      "type": "array",
                      "description": "List of fee identifiers for custom invoice-based cost calculations.",
                      "example": "",
                      "itemType": "string",
                      "customType": "string[]",
                      "itemExample": "",
                      "itemDefault": ""
                    },
                    {
                      "name": "isDefault",
                      "kind": "optional",
                      "type": "boolean",
                      "description": "Indicates if this is the default flat rate plan for users.",
                      "example": ""
                    },
                    {
                      "name": "lockingStatus",
                      "kind": "optional",
                      "type": "string",
                      "description": "Current locking status indicating if the plan can be modified.",
                      "modelRef": "#/components/schemas/common.LockingStatus.in",
                      "customType": "common.LockingStatus.in",
                      "schema": []
                    },
                    {
                      "name": "planLevelFreeTier",
                      "kind": "optional",
                      "type": "number",
                      "description": "Free usage amount available at the plan level before charges apply.",
                      "example": ""
                    },
                    {
                      "name": "successorPlanId",
                      "kind": "optional",
                      "type": "string",
                      "description": "Successor plan identifier for automatic migration when this plan is deprecated.",
                      "example": ""
                    },
                    {
                      "name": "transitionStrategy",
                      "kind": "optional",
                      "type": "string",
                      "description": "Strategy for transitioning to successor plan at deprecation time.",
                      "modelRef": "#/components/schemas/payment.pricing.SuccessorPlanTransitionStrategy.in",
                      "customType": "payment.pricing.SuccessorPlanTransitionStrategy.in",
                      "schema": []
                    },
                    {
                      "name": "entitlements",
                      "kind": "optional",
                      "type": "array",
                      "description": "List of feature entitlements or API access rights included in plan.",
                      "modelRef": "#/components/schemas/payment.pricing.Entitlements.Entitlement.in",
                      "customType": "payment.pricing.Entitlements.Entitlement.in[]",
                      "schema": [
                        {
                          "name": "id",
                          "kind": "required",
                          "type": "string",
                          "description": "Unique identifier for the entitlement used in feature flag controls and access validation.",
                          "example": ""
                        },
                        {
                          "name": "label",
                          "kind": "optional",
                          "type": "string",
                          "description": "Human-readable display name for the entitlement shown in user interfaces and documentation.",
                          "example": ""
                        },
                        {
                          "name": "apiName",
                          "kind": "required",
                          "type": "string",
                          "description": "User-defined API reference name for programmatic entitlement checks and feature gate logic.",
                          "example": ""
                        }
                      ]
                    },
                    {
                      "name": "type",
                      "kind": "optional",
                      "type": "string",
                      "description": "Discriminator field identifying this as a flat rate plan generator.",
                      "example": "",
                      "default": "flat_rate"
                    }
                  ]
                },
                {
                  "name": "payment.pricing.plans.generators.PayAndGoPlanGenerator.in",
                  "description": "",
                  "modelRef": "#/components/schemas/payment.pricing.plans.generators.PayAndGoPlanGenerator.in",
                  "schema": [
                    {
                      "name": "id",
                      "kind": "required",
                      "type": "string",
                      "description": "Unique identifier for this pay-and-go pricing plan template.",
                      "example": ""
                    },
                    {
                      "name": "billingPeriod",
                      "kind": "required",
                      "type": "object",
                      "description": "Billing frequency determining how often invoices are generated for this plan.",
                      "modelRef": "#/components/schemas/payment.pricing.BillingPeriod.in",
                      "customType": "payment.pricing.BillingPeriod.in",
                      "schema": [
                        {
                          "name": "interval",
                          "kind": "optional",
                          "type": "string",
                          "description": "Time interval unit for billing cycle such as day, month, or year",
                          "modelRef": "#/components/schemas/payment.pricing.BillingPeriodInterval.in",
                          "customType": "payment.pricing.BillingPeriodInterval.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "intervalsCount",
                          "kind": "optional",
                          "type": "integer<int32>",
                          "description": "Number of intervals in billing cycle with minimum value of 1",
                          "example": 0
                        }
                      ]
                    },
                    {
                      "name": "planName",
                      "kind": "required",
                      "type": "string",
                      "description": "Human-readable name for this pay-and-go pricing plan.",
                      "example": ""
                    },
                    {
                      "name": "prepaidBuyingRules",
                      "kind": "required",
                      "type": "object",
                      "description": "Rules governing prepaid credit purchases for this pay-and-go plan.",
                      "modelRef": "#/components/schemas/payment.pricing.prepaid.PlanPrepaidBuyingRules.in",
                      "customType": "payment.pricing.prepaid.PlanPrepaidBuyingRules.in",
                      "schema": [
                        {
                          "name": "planFixedFeeIdsToPrepay",
                          "kind": "optional",
                          "type": "array",
                          "description": "List of fixed fee identifiers that must be prepaid for this plan.",
                          "example": "",
                          "itemType": "string",
                          "customType": "string[]",
                          "itemExample": "",
                          "itemDefault": ""
                        },
                        {
                          "name": "planRecurringPrepaidAmount",
                          "kind": "optional",
                          "type": "number",
                          "description": "Recurring prepaid amount purchased every billing period at plan level.",
                          "example": ""
                        },
                        {
                          "name": "productItemRecurringPrepaidAmount",
                          "kind": "optional",
                          "type": "array",
                          "description": "Recurring prepaid amounts purchased every billing period per product item.",
                          "modelRef": "#/components/schemas/payment.pricing.prepaid.PrepaidProductItem.in",
                          "customType": "payment.pricing.prepaid.PrepaidProductItem.in[]",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "walletMinPrepaidAvailable",
                          "kind": "optional",
                          "type": "number",
                          "description": "Minimum prepaid balance threshold triggering automatic top-up purchases.",
                          "example": ""
                        },
                        {
                          "name": "productItemMinPrepaidAvailable",
                          "kind": "optional",
                          "type": "map",
                          "description": "Product item ID to minimum prepaid balance map for automatic purchases.",
                          "example": "",
                          "customType": "map<string, number>",
                          "schema": []
                        }
                      ]
                    },
                    {
                      "name": "priceGenerators",
                      "kind": "required",
                      "type": "object",
                      "description": "List of usage-based price generators defining the billing logic.",
                      "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedPriceGenerator.in",
                      "customType": "payment.pricing.price.generators.UsageBasedPriceGenerator.in[]",
                      "schema": [],
                      "complexType": "oneOf",
                      "complexItems": [
                        {
                          "name": "payment.pricing.price.generators.UsageBasedDimensionPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedDimensionPriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.UsageBasedNoDimensionPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedNoDimensionPriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.UsageBasedVolumePriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedVolumePriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.UsageBasedVolumeDimensionPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedVolumeDimensionPriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "name": "description",
                      "kind": "optional",
                      "type": "string",
                      "description": "Detailed description of the pay-and-go plan for user interface.",
                      "example": ""
                    },
                    {
                      "name": "feeMap",
                      "kind": "optional",
                      "type": "map",
                      "description": "Map of fixed fee identifiers to their product plan configurations.",
                      "example": "",
                      "customType": "map<string, payment.pricing.ProductPlanFee.in>",
                      "schema": []
                    },
                    {
                      "name": "invoiceBasedFeeIds",
                      "kind": "optional",
                      "type": "array",
                      "description": "List of invoice-based fee identifiers added to invoices.",
                      "example": "",
                      "itemType": "string",
                      "customType": "string[]",
                      "itemExample": "",
                      "itemDefault": ""
                    },
                    {
                      "name": "isDefault",
                      "kind": "optional",
                      "type": "boolean",
                      "description": "Indicates if this is the default pay-and-go plan for users.",
                      "example": ""
                    },
                    {
                      "name": "lockingStatus",
                      "kind": "optional",
                      "type": "string",
                      "description": "Current locking status indicating if the plan can be modified.",
                      "modelRef": "#/components/schemas/common.LockingStatus.in",
                      "customType": "common.LockingStatus.in",
                      "schema": []
                    },
                    {
                      "name": "planLevelFreeTier",
                      "kind": "optional",
                      "type": "number",
                      "description": "Free usage amount available at the plan level before charges apply.",
                      "example": ""
                    },
                    {
                      "name": "successorPlanId",
                      "kind": "optional",
                      "type": "string",
                      "description": "Successor plan identifier for automatic migration when this plan is deprecated.",
                      "example": ""
                    },
                    {
                      "name": "transitionStrategy",
                      "kind": "optional",
                      "type": "string",
                      "description": "Strategy for transitioning to successor plan at deprecation time.",
                      "modelRef": "#/components/schemas/payment.pricing.SuccessorPlanTransitionStrategy.in",
                      "customType": "payment.pricing.SuccessorPlanTransitionStrategy.in",
                      "schema": []
                    },
                    {
                      "name": "entitlements",
                      "kind": "optional",
                      "type": "array",
                      "description": "List of feature entitlements or API access rights included in plan.",
                      "modelRef": "#/components/schemas/payment.pricing.Entitlements.Entitlement.in",
                      "customType": "payment.pricing.Entitlements.Entitlement.in[]",
                      "schema": [
                        {
                          "name": "id",
                          "kind": "required",
                          "type": "string",
                          "description": "Unique identifier for the entitlement used in feature flag controls and access validation.",
                          "example": ""
                        },
                        {
                          "name": "label",
                          "kind": "optional",
                          "type": "string",
                          "description": "Human-readable display name for the entitlement shown in user interfaces and documentation.",
                          "example": ""
                        },
                        {
                          "name": "apiName",
                          "kind": "required",
                          "type": "string",
                          "description": "User-defined API reference name for programmatic entitlement checks and feature gate logic.",
                          "example": ""
                        }
                      ]
                    },
                    {
                      "name": "type",
                      "kind": "optional",
                      "type": "string",
                      "description": "Discriminator field identifying this as a pay-and-go plan generator.",
                      "example": "",
                      "default": "pay_and_go"
                    }
                  ]
                },
                {
                  "name": "payment.pricing.plans.generators.UsageBasedPlanGenerator.in",
                  "description": "",
                  "modelRef": "#/components/schemas/payment.pricing.plans.generators.UsageBasedPlanGenerator.in",
                  "schema": [
                    {
                      "name": "id",
                      "kind": "required",
                      "type": "string",
                      "description": "Unique identifier for this usage-based pricing plan template.",
                      "example": ""
                    },
                    {
                      "name": "billingPeriod",
                      "kind": "required",
                      "type": "object",
                      "description": "Billing frequency determining how often invoices are generated for this plan.",
                      "modelRef": "#/components/schemas/payment.pricing.BillingPeriod.in",
                      "customType": "payment.pricing.BillingPeriod.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "planName",
                      "kind": "required",
                      "type": "string",
                      "description": "Human-readable name for this usage-based pricing plan.",
                      "example": ""
                    },
                    {
                      "name": "priceGenerators",
                      "kind": "required",
                      "type": "object",
                      "description": "List of usage-based price generators defining the billing logic.",
                      "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedPriceGenerator.in",
                      "customType": "payment.pricing.price.generators.UsageBasedPriceGenerator.in[]",
                      "schema": [],
                      "complexType": "oneOf",
                      "complexItems": [
                        {
                          "name": "payment.pricing.price.generators.UsageBasedDimensionPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedDimensionPriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.UsageBasedNoDimensionPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedNoDimensionPriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.UsageBasedVolumePriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedVolumePriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "payment.pricing.price.generators.UsageBasedVolumeDimensionPriceGenerator.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedVolumeDimensionPriceGenerator.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "name": "description",
                      "kind": "optional",
                      "type": "string",
                      "description": "Detailed description of the usage-based plan for user interface.",
                      "example": ""
                    },
                    {
                      "name": "invoiceBasedFeeIds",
                      "kind": "optional",
                      "type": "array",
                      "description": "List of fee identifiers for custom invoice-based cost calculations.",
                      "example": "",
                      "itemType": "string",
                      "customType": "string[]",
                      "itemExample": "",
                      "itemDefault": ""
                    },
                    {
                      "name": "isDefault",
                      "kind": "optional",
                      "type": "boolean",
                      "description": "Indicates if this is the default usage-based plan for users.",
                      "example": ""
                    },
                    {
                      "name": "lockingStatus",
                      "kind": "optional",
                      "type": "string",
                      "description": "Current locking status indicating if the plan can be modified.",
                      "modelRef": "#/components/schemas/common.LockingStatus.in",
                      "customType": "common.LockingStatus.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "planLevelFreeTier",
                      "kind": "optional",
                      "type": "number",
                      "description": "Free usage amount available at the plan level before charges apply.",
                      "example": ""
                    },
                    {
                      "name": "successorPlanId",
                      "kind": "optional",
                      "type": "string",
                      "description": "Successor plan identifier for automatic migration when this plan is deprecated.",
                      "example": ""
                    },
                    {
                      "name": "transitionStrategy",
                      "kind": "optional",
                      "type": "string",
                      "description": "Strategy for transitioning to successor plan at deprecation time.",
                      "modelRef": "#/components/schemas/payment.pricing.SuccessorPlanTransitionStrategy.in",
                      "customType": "payment.pricing.SuccessorPlanTransitionStrategy.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "entitlements",
                      "kind": "optional",
                      "type": "array",
                      "description": "List of feature entitlements or API access rights included in plan.",
                      "modelRef": "#/components/schemas/payment.pricing.Entitlements.Entitlement.in",
                      "customType": "payment.pricing.Entitlements.Entitlement.in[]",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "type",
                      "kind": "optional",
                      "type": "string",
                      "description": "Discriminator field identifying this as a usage-based plan generator.",
                      "example": "",
                      "default": "pure_usage_based"
                    }
                  ]
                },
                {
                  "name": "payment.pricing.plans.generators.SeatBasedPlanGenerator.in",
                  "description": "",
                  "modelRef": "#/components/schemas/payment.pricing.plans.generators.SeatBasedPlanGenerator.in",
                  "schema": [
                    {
                      "name": "",
                      "description": "",
                      "customType": "Max depth limit reached"
                    }
                  ]
                },
                {
                  "name": "payment.pricing.plans.generators.SubscriptionPlanGenerator.in",
                  "description": "",
                  "modelRef": "#/components/schemas/payment.pricing.plans.generators.SubscriptionPlanGenerator.in",
                  "schema": [
                    {
                      "name": "",
                      "description": "",
                      "customType": "Max depth limit reached"
                    }
                  ]
                }
              ]
            },
            {
              "name": "label",
              "kind": "required",
              "type": "string",
              "description": "Human-readable label or name for this installment commitment contract for identification purposes.",
              "example": ""
            },
            {
              "name": "startTimeInSeconds",
              "kind": "optional",
              "type": "integer<int64>",
              "description": "Unix timestamp in seconds used to calculate the time range for the installment commitment period.",
              "example": 0
            },
            {
              "name": "cycles",
              "kind": "required",
              "type": "integer<int32>",
              "description": "The amount of billing cycles the commitment is going to last.",
              "example": 0
            },
            {
              "name": "trueup",
              "kind": "optional",
              "type": "object",
              "description": "Optional true-up configuration specifying minimum payment obligations and billing reconciliation rules.",
              "modelRef": "#/components/schemas/payment.pricing.commitments.generators.TrueUpInput.in",
              "customType": "payment.pricing.commitments.generators.TrueUpInput.in",
              "schema": [
                {
                  "name": "minimumPayment",
                  "kind": "required",
                  "type": "number",
                  "description": "Minimum payment amount required for true-up reconciliation, must be greater than zero, required field.",
                  "example": ""
                },
                {
                  "name": "interval",
                  "kind": "required",
                  "type": "string",
                  "description": "True-up interval specifying whether reconciliation applies per cycle or entire commitment period, required field.",
                  "modelRef": "#/components/schemas/payment.pricing.commitments.generators.TrueUpInterval.in",
                  "customType": "payment.pricing.commitments.generators.TrueUpInterval.in",
                  "schema": []
                },
                {
                  "name": "startCycle",
                  "kind": "optional",
                  "type": "integer<int32>",
                  "description": "Optional billing cycle number when true-up period begins, cannot be used with commitment interval.",
                  "example": 0
                },
                {
                  "name": "endCycle",
                  "kind": "optional",
                  "type": "integer<int32>",
                  "description": "Optional billing cycle number when true-up period ends, cannot be used with commitment interval.",
                  "example": 0
                },
                {
                  "name": "productItemIds",
                  "kind": "optional",
                  "type": "array",
                  "description": "Optional list of specific product item IDs included in minimum payment calculation for true-up reconciliation.",
                  "example": "",
                  "itemType": "string",
                  "customType": "string[]",
                  "itemExample": "",
                  "itemDefault": ""
                },
                {
                  "name": "usePriceAfterDiscounts",
                  "kind": "optional",
                  "type": "boolean",
                  "description": "Flag indicating whether minimum payment calculation should include or exclude discount amounts from promotions.",
                  "example": ""
                }
              ]
            },
            {
              "name": "installmentCycleSchedule",
              "kind": "optional",
              "type": "map",
              "description": "Map of billing cycle numbers to payment amounts, must equal total credit amount when both defined.",
              "example": "",
              "customType": "map<string, number>",
              "schema": []
            },
            {
              "name": "credits",
              "kind": "optional",
              "type": "object",
              "description": "Prepaid card input configuration for credit obligations, required when installment schedule is defined.",
              "modelRef": "#/components/schemas/payment.pricing.commitments.generators.PrepaidCardInput.in",
              "customType": "payment.pricing.commitments.generators.PrepaidCardInput.in",
              "schema": [
                {
                  "name": "value",
                  "kind": "required",
                  "type": "number",
                  "description": "Amount of prepaid credit in base currency, must be positive value, required field.",
                  "example": ""
                },
                {
                  "name": "isReward",
                  "kind": "optional",
                  "type": "boolean",
                  "description": "Flag indicating whether this prepaid credit is a free reward or requires customer payment.",
                  "example": ""
                },
                {
                  "name": "priority",
                  "kind": "optional",
                  "type": "number",
                  "description": "Customer prepaid card priority for determining usage order when multiple cards exist, defaults to zero.",
                  "example": ""
                },
                {
                  "name": "prepaidConditions",
                  "kind": "optional",
                  "type": "object",
                  "description": "Optional conditions and restrictions for applying the prepaid credit to customer invoices and product items.",
                  "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidConditions.in",
                  "customType": "payment.billing.prepaid_to_product.PrepaidConditions.in",
                  "schema": [
                    {
                      "name": "prepaidConditionsList",
                      "kind": "optional",
                      "type": "object",
                      "description": "Collection of active prepaid conditions determining when credits can be applied to invoices.",
                      "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidCondition.in",
                      "customType": "payment.billing.prepaid_to_product.PrepaidCondition.in[]",
                      "schema": [],
                      "complexType": "oneOf",
                      "complexItems": [
                        {
                          "name": "payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                          "schema": [
                            {
                              "name": "type",
                              "kind": "optional",
                              "type": "string",
                              "description": "Type identifier for dimension-based prepaid condition, automatically set to class name.",
                              "example": "",
                              "default": "DimensionValueMapPrepaidCondition"
                            },
                            {
                              "name": "dimensionMapValue",
                              "kind": "optional",
                              "type": "map",
                              "description": "Single dimension key-value pair specifying usage dimension criteria for prepaid credit application.",
                              "example": "",
                              "customType": "map<string, string>",
                              "schema": []
                            }
                          ]
                        },
                        {
                          "name": "payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                          "schema": [
                            {
                              "name": "type",
                              "kind": "optional",
                              "type": "string",
                              "description": "Fixed type identifier for product item dimension prepaid condition implementation",
                              "example": "",
                              "default": "ProductItemDimensionPrepaidCondition"
                            },
                            {
                              "name": "productItemId",
                              "kind": "optional",
                              "type": "string",
                              "description": "Unique identifier of product item where prepaid credits should be applied",
                              "example": ""
                            },
                            {
                              "name": "dimensions",
                              "kind": "optional",
                              "type": "map",
                              "description": "Optional dimension key-value pairs for targeted credit application within product item",
                              "example": "",
                              "customType": "map<string, string>",
                              "schema": []
                            }
                          ]
                        },
                        {
                          "name": "payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "name": "prepaidConditionsHistory",
                      "kind": "optional",
                      "type": "map",
                      "description": "Historical record of prepaid conditions keyed by timestamp for audit tracking.",
                      "example": "",
                      "customType": "map<string, payment.billing.prepaid_to_product.PrepaidCondition.in[]>",
                      "schema": []
                    }
                  ]
                },
                {
                  "name": "label",
                  "kind": "required",
                  "type": "string",
                  "description": "Human-readable label for identifying this prepaid card input within commitment contracts, required field.",
                  "example": ""
                },
                {
                  "name": "startTimeInSeconds",
                  "kind": "optional",
                  "type": "integer<int64>",
                  "description": "Unix timestamp when prepaid card becomes active, cannot be in past, mutually exclusive with cycle fields.",
                  "example": 0
                },
                {
                  "name": "endTimeInSeconds",
                  "kind": "optional",
                  "type": "integer<int64>",
                  "description": "Unix timestamp when prepaid card expires, must be at least thirty days after start time.",
                  "example": 0
                },
                {
                  "name": "startCycle",
                  "kind": "optional",
                  "type": "integer<int32>",
                  "description": "Billing cycle number when prepaid card becomes active, mutually exclusive with timestamp fields.",
                  "example": 0
                },
                {
                  "name": "endCycle",
                  "kind": "optional",
                  "type": "integer<int32>",
                  "description": "Billing cycle number when prepaid card expires, used with start cycle for duration calculation.",
                  "example": 0
                },
                {
                  "name": "billOnceCreditIsFinished",
                  "kind": "optional",
                  "type": "boolean",
                  "description": "Flag indicating whether to bill customer in current billing period once prepaid credits are exhausted.",
                  "example": ""
                },
                {
                  "name": "orderItemId",
                  "kind": "optional",
                  "type": "string",
                  "description": "Optional identifier linking this prepaid card input to a specific order item for tracking purposes.",
                  "example": ""
                }
              ]
            },
            {
              "name": "billOnceCreditIsFinished",
              "kind": "optional",
              "type": "boolean",
              "description": "Flag indicating whether to bill customer in current billing period once credits are exhausted.",
              "example": ""
            },
            {
              "name": "promotions",
              "kind": "optional",
              "type": "array",
              "description": "List of promotional offers and discounts to be applied within the installment commitment period.",
              "modelRef": "#/components/schemas/payment.pricing.commitments.generators.PromotionInfo.in",
              "customType": "payment.pricing.commitments.generators.PromotionInfo.in[]",
              "schema": [
                {
                  "name": "id",
                  "kind": "optional",
                  "type": "string",
                  "description": "Existing promotion identifier, required when custom promotion is not specified, cannot be empty.",
                  "example": ""
                },
                {
                  "name": "startAtCycle",
                  "kind": "optional",
                  "type": "integer<int32>",
                  "description": "Billing cycle number when promotion becomes active, must be greater than or equal to one.",
                  "example": 0
                },
                {
                  "name": "endAtCycle",
                  "kind": "optional",
                  "type": "integer<int32>",
                  "description": "Billing cycle number when promotion expires, must be greater than or equal to one.",
                  "example": 0
                },
                {
                  "name": "customPromotion",
                  "kind": "optional",
                  "type": "object",
                  "description": "Custom promotion definition to create new discount rules, alternative to using existing promotion ID.",
                  "modelRef": "#/components/schemas/payment.pricing.promotions.Promotion.in",
                  "customType": "payment.pricing.promotions.Promotion.in",
                  "schema": [],
                  "complexType": "oneOf",
                  "complexItems": [
                    {
                      "name": "payment.pricing.promotions.pre_created.AbsoluteProductAutomaticPromotion.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsoluteProductAutomaticPromotion.in",
                      "schema": [
                        {
                          "name": "id",
                          "kind": "required",
                          "type": "string",
                          "description": "Unique identifier for the promotion within the account scope.",
                          "example": ""
                        },
                        {
                          "name": "type",
                          "kind": "optional",
                          "type": "string",
                          "description": "Fixed promotion type identifier for automatic product-level absolute discounts.",
                          "example": "",
                          "default": "absolute_product_automatic_promotion"
                        },
                        {
                          "name": "promotionName",
                          "kind": "required",
                          "type": "string",
                          "description": "Human-readable name for promotion display and management within admin interfaces.",
                          "example": ""
                        },
                        {
                          "name": "description",
                          "kind": "optional",
                          "type": "string",
                          "description": "Optional detailed description explaining promotion purpose, terms, and usage guidelines.",
                          "example": ""
                        },
                        {
                          "name": "lockingStatus",
                          "kind": "optional",
                          "type": "string",
                          "description": "Modification permissions controlling promotion lifecycle and editing capabilities.",
                          "modelRef": "#/components/schemas/common.LockingStatus.in",
                          "customType": "common.LockingStatus.in",
                          "schema": []
                        },
                        {
                          "name": "dimensionConstraintMap",
                          "kind": "optional",
                          "type": "map",
                          "description": "Key-value pairs defining usage dimension filters for promotion applicability conditions.",
                          "example": "",
                          "customType": "map<string, string>",
                          "schema": []
                        },
                        {
                          "name": "customerTags",
                          "kind": "optional",
                          "type": "map",
                          "description": "Required customer tag criteria for automatic promotion activation and targeting.",
                          "example": "",
                          "customType": "map<string, string>",
                          "schema": []
                        },
                        {
                          "name": "isHidden",
                          "kind": "optional",
                          "type": "boolean",
                          "description": "Controls promotion visibility in customer interfaces and billing communications.",
                          "example": ""
                        },
                        {
                          "name": "discount",
                          "kind": "optional",
                          "type": "number",
                          "description": "Fixed monetary amount deducted from product charges in account currency.",
                          "example": ""
                        },
                        {
                          "name": "totalMaxDiscount",
                          "kind": "optional",
                          "type": "number",
                          "description": "Optional lifetime limit on total discount amount available across all periods.",
                          "example": ""
                        },
                        {
                          "name": "targetProductId",
                          "kind": "optional",
                          "type": "string",
                          "description": "Identifier of the specific product receiving the automatic discount benefits.",
                          "example": ""
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.AbsoluteProductItemAutomaticPromotion.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsoluteProductItemAutomaticPromotion.in",
                      "schema": [
                        {
                          "name": "id",
                          "kind": "required",
                          "type": "string",
                          "description": "Unique identifier for the promotion within the account scope.",
                          "example": ""
                        },
                        {
                          "name": "type",
                          "kind": "optional",
                          "type": "string",
                          "description": "Fixed promotion type identifier for automatic product item absolute discounts.",
                          "example": "",
                          "default": "absolute_product_item_automatic_promotion"
                        },
                        {
                          "name": "promotionName",
                          "kind": "required",
                          "type": "string",
                          "description": "Human-readable name for promotion display and management within admin interfaces.",
                          "example": ""
                        },
                        {
                          "name": "description",
                          "kind": "optional",
                          "type": "string",
                          "description": "Optional detailed description explaining promotion purpose, terms, and usage guidelines.",
                          "example": ""
                        },
                        {
                          "name": "lockingStatus",
                          "kind": "optional",
                          "type": "string",
                          "description": "Modification permissions controlling promotion lifecycle and editing capabilities.",
                          "modelRef": "#/components/schemas/common.LockingStatus.in",
                          "customType": "common.LockingStatus.in",
                          "schema": []
                        },
                        {
                          "name": "dimensionConstraintMap",
                          "kind": "optional",
                          "type": "map",
                          "description": "Key-value pairs defining usage dimension filters with optional regex pattern support.",
                          "example": "",
                          "customType": "map<string, string>",
                          "schema": []
                        },
                        {
                          "name": "customerTags",
                          "kind": "optional",
                          "type": "map",
                          "description": "Required customer tag criteria for automatic promotion activation and targeting.",
                          "example": "",
                          "customType": "map<string, string>",
                          "schema": []
                        },
                        {
                          "name": "isHidden",
                          "kind": "optional",
                          "type": "boolean",
                          "description": "Controls promotion visibility in customer interfaces and billing communications.",
                          "example": ""
                        },
                        {
                          "name": "discount",
                          "kind": "optional",
                          "type": "number",
                          "description": "Fixed monetary amount deducted from product item charges in account currency.",
                          "example": ""
                        },
                        {
                          "name": "totalMaxDiscount",
                          "kind": "optional",
                          "type": "number",
                          "description": "Optional lifetime limit on total discount amount available across all periods.",
                          "example": ""
                        },
                        {
                          "name": "targetProductItemId",
                          "kind": "optional",
                          "type": "string",
                          "description": "Identifier of the specific product item receiving the automatic discount benefits.",
                          "example": ""
                        },
                        {
                          "name": "isRegEx",
                          "kind": "optional",
                          "type": "boolean",
                          "description": "Enables regular expression matching for dimension constraint values and targeting flexibility.",
                          "example": ""
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.AbsoluteProductItemSalesEventPromotion.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsoluteProductItemSalesEventPromotion.in",
                      "schema": [
                        {
                          "name": "id",
                          "kind": "required",
                          "type": "string",
                          "description": "Unique identifier for the sales event promotion within account scope.",
                          "example": ""
                        },
                        {
                          "name": "type",
                          "kind": "optional",
                          "type": "string",
                          "description": "Fixed promotion type identifier for product item sales event absolute discounts.",
                          "example": "",
                          "default": "absolute_product_item_sales_event_promotion"
                        },
                        {
                          "name": "promotionName",
                          "kind": "required",
                          "type": "string",
                          "description": "Human-readable name for promotion display and campaign management interfaces.",
                          "example": ""
                        },
                        {
                          "name": "description",
                          "kind": "optional",
                          "type": "string",
                          "description": "Optional detailed description explaining sales event purpose, terms, and campaign objectives.",
                          "example": ""
                        },
                        {
                          "name": "lockingStatus",
                          "kind": "optional",
                          "type": "string",
                          "description": "Modification permissions controlling promotion lifecycle and campaign editing capabilities.",
                          "modelRef": "#/components/schemas/common.LockingStatus.in",
                          "customType": "common.LockingStatus.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "dimensionConstraintMap",
                          "kind": "optional",
                          "type": "map",
                          "description": "Key-value pairs defining usage dimension filters with optional regex pattern support.",
                          "example": "",
                          "customType": "map<string, string>",
                          "schema": []
                        },
                        {
                          "name": "customerTags",
                          "kind": "optional",
                          "type": "map",
                          "description": "Optional customer tag criteria for targeted promotion activation during events.",
                          "example": "",
                          "customType": "map<string, string>",
                          "schema": []
                        },
                        {
                          "name": "acceptablePromotionTimeRange",
                          "kind": "optional",
                          "type": "object",
                          "description": "Required time boundaries defining when promotion is active during sales events.",
                          "modelRef": "#/components/schemas/payment.common.TimeRange.in",
                          "customType": "payment.common.TimeRange.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "recurrenceInterval",
                          "kind": "optional",
                          "type": "object",
                          "description": "Optional recurring pattern configuration for repeated promotional campaigns and events.",
                          "modelRef": "#/components/schemas/payment.pricing.promotions.PromotionRecurrenceInterval.in",
                          "customType": "payment.pricing.promotions.PromotionRecurrenceInterval.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        },
                        {
                          "name": "discount",
                          "kind": "optional",
                          "type": "number",
                          "description": "Fixed monetary amount deducted from product item charges in account currency.",
                          "example": ""
                        },
                        {
                          "name": "targetProductItemId",
                          "kind": "optional",
                          "type": "string",
                          "description": "Required identifier of specific product item receiving sales event discount benefits.",
                          "example": ""
                        },
                        {
                          "name": "isRegEx",
                          "kind": "optional",
                          "type": "boolean",
                          "description": "Enables regular expression matching for dimension constraint values and targeting flexibility.",
                          "example": ""
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.AbsoluteProductSalesEventPromotion.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsoluteProductSalesEventPromotion.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.FreeTrialPromotion.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.FreeTrialPromotion.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.GenericItemPromotion.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.GenericItemPromotion.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.GenericProductPromotion.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.GenericProductPromotion.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.ProductAbsolutePartnerDiscount.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.ProductAbsolutePartnerDiscount.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.ProductItemAbsolutePartnerDiscount.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.ProductItemAbsolutePartnerDiscount.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.RelativeProductItemPartnerDiscount.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductItemPartnerDiscount.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.RelativeProductAutomaticPromotion.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductAutomaticPromotion.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.RelativeProductItemAutomaticPromotion.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductItemAutomaticPromotion.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.RelativeProductItemSalesEventPromotion.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductItemSalesEventPromotion.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.ProductRelativePartnerDiscount.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.ProductRelativePartnerDiscount.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.RelativeProductSalesEventPromotion.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductSalesEventPromotion.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.TieredAbsoluteProductAutomaticPromotion.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TieredAbsoluteProductAutomaticPromotion.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.TieredAbsoluteProductItemAutomaticPromotion.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TieredAbsoluteProductItemAutomaticPromotion.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.TieredRelativeProductAutomaticPromotion.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TieredRelativeProductAutomaticPromotion.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.TieredRelativeProductItemAutomaticPromotion.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TieredRelativeProductItemAutomaticPromotion.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.TimeLimitedAbsoluteProductItemDiscount.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedAbsoluteProductItemDiscount.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.TimeLimitedAbsoluteProductDiscount.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedAbsoluteProductDiscount.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.TimeLimitedRelativeProductItemDiscount.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedRelativeProductItemDiscount.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.TimeLimitedRelativeProductDiscount.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedRelativeProductDiscount.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.RelativeProductFullDiscount.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductFullDiscount.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.TimeLimitedTieredAbsoluteProductItemDiscount.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedTieredAbsoluteProductItemDiscount.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.TimeLimitedTieredAbsoluteProductDiscount.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedTieredAbsoluteProductDiscount.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.TimeLimitedTieredRelativeProductItemDiscount.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedTieredRelativeProductItemDiscount.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.TimeLimitedTieredRelativeProductDiscount.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedTieredRelativeProductDiscount.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    },
                    {
                      "name": "payment.pricing.promotions.pre_created.AbsolutePlanPromotion.in",
                      "description": "",
                      "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsolutePlanPromotion.in",
                      "schema": [
                        {
                          "name": "",
                          "description": "",
                          "customType": "Max depth limit reached"
                        }
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "name": "reward",
              "kind": "optional",
              "type": "object",
              "description": "Optional reward credits to be provided as free incentives within the installment commitment structure.",
              "modelRef": "#/components/schemas/payment.pricing.commitments.generators.PrepaidCardInput.in",
              "customType": "payment.pricing.commitments.generators.PrepaidCardInput.in",
              "schema": [
                {
                  "name": "value",
                  "kind": "required",
                  "type": "number",
                  "description": "Amount of prepaid credit in base currency, must be positive value, required field.",
                  "example": ""
                },
                {
                  "name": "isReward",
                  "kind": "optional",
                  "type": "boolean",
                  "description": "Flag indicating whether this prepaid credit is a free reward or requires customer payment.",
                  "example": ""
                },
                {
                  "name": "priority",
                  "kind": "optional",
                  "type": "number",
                  "description": "Customer prepaid card priority for determining usage order when multiple cards exist, defaults to zero.",
                  "example": ""
                },
                {
                  "name": "prepaidConditions",
                  "kind": "optional",
                  "type": "object",
                  "description": "Optional conditions and restrictions for applying the prepaid credit to customer invoices and product items.",
                  "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidConditions.in",
                  "customType": "payment.billing.prepaid_to_product.PrepaidConditions.in",
                  "schema": [
                    {
                      "name": "prepaidConditionsList",
                      "kind": "optional",
                      "type": "object",
                      "description": "Collection of active prepaid conditions determining when credits can be applied to invoices.",
                      "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidCondition.in",
                      "customType": "payment.billing.prepaid_to_product.PrepaidCondition.in[]",
                      "schema": [],
                      "complexType": "oneOf",
                      "complexItems": [
                        {
                          "name": "payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                          "schema": [
                            {
                              "name": "type",
                              "kind": "optional",
                              "type": "string",
                              "description": "Type identifier for dimension-based prepaid condition, automatically set to class name.",
                              "example": "",
                              "default": "DimensionValueMapPrepaidCondition"
                            },
                            {
                              "name": "dimensionMapValue",
                              "kind": "optional",
                              "type": "map",
                              "description": "Single dimension key-value pair specifying usage dimension criteria for prepaid credit application.",
                              "example": "",
                              "customType": "map<string, string>",
                              "schema": []
                            }
                          ]
                        },
                        {
                          "name": "payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                          "schema": [
                            {
                              "name": "type",
                              "kind": "optional",
                              "type": "string",
                              "description": "Fixed type identifier for product item dimension prepaid condition implementation",
                              "example": "",
                              "default": "ProductItemDimensionPrepaidCondition"
                            },
                            {
                              "name": "productItemId",
                              "kind": "optional",
                              "type": "string",
                              "description": "Unique identifier of product item where prepaid credits should be applied",
                              "example": ""
                            },
                            {
                              "name": "dimensions",
                              "kind": "optional",
                              "type": "map",
                              "description": "Optional dimension key-value pairs for targeted credit application within product item",
                              "example": "",
                              "customType": "map<string, string>",
                              "schema": []
                            }
                          ]
                        },
                        {
                          "name": "payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                          "description": "",
                          "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                          "schema": [
                            {
                              "name": "",
                              "description": "",
                              "customType": "Max depth limit reached"
                            }
                          ]
                        }
                      ]
                    },
                    {
                      "name": "prepaidConditionsHistory",
                      "kind": "optional",
                      "type": "map",
                      "description": "Historical record of prepaid conditions keyed by timestamp for audit tracking.",
                      "example": "",
                      "customType": "map<string, payment.billing.prepaid_to_product.PrepaidCondition.in[]>",
                      "schema": []
                    }
                  ]
                },
                {
                  "name": "label",
                  "kind": "required",
                  "type": "string",
                  "description": "Human-readable label for identifying this prepaid card input within commitment contracts, required field.",
                  "example": ""
                },
                {
                  "name": "startTimeInSeconds",
                  "kind": "optional",
                  "type": "integer<int64>",
                  "description": "Unix timestamp when prepaid card becomes active, cannot be in past, mutually exclusive with cycle fields.",
                  "example": 0
                },
                {
                  "name": "endTimeInSeconds",
                  "kind": "optional",
                  "type": "integer<int64>",
                  "description": "Unix timestamp when prepaid card expires, must be at least thirty days after start time.",
                  "example": 0
                },
                {
                  "name": "startCycle",
                  "kind": "optional",
                  "type": "integer<int32>",
                  "description": "Billing cycle number when prepaid card becomes active, mutually exclusive with timestamp fields.",
                  "example": 0
                },
                {
                  "name": "endCycle",
                  "kind": "optional",
                  "type": "integer<int32>",
                  "description": "Billing cycle number when prepaid card expires, used with start cycle for duration calculation.",
                  "example": 0
                },
                {
                  "name": "billOnceCreditIsFinished",
                  "kind": "optional",
                  "type": "boolean",
                  "description": "Flag indicating whether to bill customer in current billing period once prepaid credits are exhausted.",
                  "example": ""
                },
                {
                  "name": "orderItemId",
                  "kind": "optional",
                  "type": "string",
                  "description": "Optional identifier linking this prepaid card input to a specific order item for tracking purposes.",
                  "example": ""
                }
              ]
            },
            {
              "name": "commitmentEndingConfig",
              "kind": "optional",
              "type": "object",
              "description": "Configuration specifying actions and conditions when the installment commitment contract ends or expires.",
              "modelRef": "#/components/schemas/payment.pricing.commitments.CommitmentEndingConfig.in",
              "customType": "payment.pricing.commitments.CommitmentEndingConfig.in",
              "schema": [
                {
                  "name": "commitmentRestartConfig",
                  "kind": "optional",
                  "type": "object",
                  "description": "Configuration for transitioning to successor plan when commitment ends without extension.",
                  "modelRef": "#/components/schemas/payment.pricing.commitments.CommitmentRestartConfig.in",
                  "customType": "payment.pricing.commitments.CommitmentRestartConfig.in",
                  "schema": [
                    {
                      "name": "latestDecisionTimeSeconds",
                      "kind": "optional",
                      "type": "integer<int64>",
                      "description": "Unix timestamp deadline for customer to decide on commitment renewal before automatic action.",
                      "example": 0
                    },
                    {
                      "name": "optOut",
                      "kind": "optional",
                      "type": "boolean",
                      "description": "Whether customer explicitly chooses not to renew commitment requiring no further action.",
                      "example": ""
                    }
                  ]
                },
                {
                  "name": "extendPrepaidCardEndTimeInSeconds",
                  "kind": "optional",
                  "type": "integer<int64>",
                  "description": "Unix timestamp extending prepaid card validity beyond commitment end for credits rollover.",
                  "example": 0
                }
              ]
            },
            {
              "name": "exitClauses",
              "kind": "optional",
              "type": "object",
              "description": "List of exit clause conditions allowing early termination of the installment commitment contract.",
              "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.ExitClause.in",
              "customType": "payment.pricing.commitments.exit_clauses.ExitClause.in[]",
              "schema": [],
              "complexType": "oneOf",
              "complexItems": [
                {
                  "name": "payment.pricing.commitments.exit_clauses.ExitBeforeCommitmentStartWithGracePeriod.in",
                  "description": "",
                  "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.ExitBeforeCommitmentStartWithGracePeriod.in",
                  "schema": [
                    {
                      "name": "type",
                      "kind": "optional",
                      "type": "string",
                      "description": "Fixed type identifier for exit clauses with grace period deadline before contract starts.",
                      "example": "",
                      "default": "termination_grace_period"
                    },
                    {
                      "name": "id",
                      "kind": "optional",
                      "type": "string",
                      "description": "Unique identifier for this specific exit clause within the commitment contract.",
                      "example": ""
                    },
                    {
                      "name": "gracePeriodInDays",
                      "kind": "required",
                      "type": "integer<int32>",
                      "description": "Number of days before contract start time that serves as cancellation deadline, must be non-negative.",
                      "example": 0
                    }
                  ]
                },
                {
                  "name": "payment.pricing.commitments.exit_clauses.TerminationWithNoticePeriod.in",
                  "description": "",
                  "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.TerminationWithNoticePeriod.in",
                  "schema": [
                    {
                      "name": "type",
                      "kind": "optional",
                      "type": "string",
                      "description": "Fixed type identifier for termination of convenience exit clauses requiring advance notice period.",
                      "example": "",
                      "default": "termination_notice_period"
                    },
                    {
                      "name": "id",
                      "kind": "optional",
                      "type": "string",
                      "description": "Unique identifier for this specific exit clause within the commitment contract.",
                      "example": ""
                    },
                    {
                      "name": "noticePeriodInDays",
                      "kind": "required",
                      "type": "integer<int32>",
                      "description": "Number of days advance notice required before contract termination, must be positive and shorter than commitment duration.",
                      "example": 0
                    }
                  ]
                },
                {
                  "name": "payment.pricing.commitments.exit_clauses.TerminationByTimeRange.in",
                  "description": "",
                  "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.TerminationByTimeRange.in",
                  "schema": [
                    {
                      "name": "type",
                      "kind": "optional",
                      "type": "string",
                      "description": "Fixed type identifier for exit clauses that allow termination within a specified time window.",
                      "example": "",
                      "default": "termination_time_range"
                    },
                    {
                      "name": "id",
                      "kind": "optional",
                      "type": "string",
                      "description": "Unique identifier for this specific exit clause within the commitment contract.",
                      "example": ""
                    },
                    {
                      "name": "terminationRange",
                      "kind": "required",
                      "type": "object",
                      "description": "Time window during which the commitment contract can be terminated or cancelled, must fall within commitment period.",
                      "modelRef": "#/components/schemas/payment.common.TimeRange.in",
                      "customType": "payment.common.TimeRange.in",
                      "schema": [
                        {
                          "name": "startTimeInSeconds",
                          "kind": "optional",
                          "type": "integer<int64>",
                          "description": "Unix timestamp marking the beginning of the time range in seconds",
                          "example": 0
                        },
                        {
                          "name": "endTimeInSeconds",
                          "kind": "optional",
                          "type": "integer<int64>",
                          "description": "Unix timestamp marking the end of time range or null for open-ended ranges",
                          "example": 0
                        }
                      ]
                    }
                  ]
                }
              ]
            },
            {
              "name": "isProductPlanModifiable",
              "kind": "optional",
              "type": "boolean",
              "description": "Flag indicating whether the associated product plan can be modified during the installment commitment period.",
              "example": ""
            }
          ],
          "modelRef": "#/components/schemas/payment.pricing.commitments.generators.InstallmentContractGenerator.in",
          "isExpanded": true
        }
      ],
      "formDataParameters": [],
      "oAuthParameters": [
        {
          "id": "apiKey",
          "name": "X-API-KEY",
          "kind": "optional",
          "type": "apiKey",
          "in": "header"
        }
      ]
    },
    "responses": [
      {
        "statusCode": "200",
        "description": "Installment commitment successfully created",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "description": "Customer commitment contract with associated plans, promotions, and prepaid cards configured at contract creation time.",
            "customType": "payment.pricing.customer.CustomerCommitmentContract.out",
            "schema": [
              {
                "name": "contractGenerator",
                "kind": "optional",
                "type": "object",
                "description": "Generator configuration used to create this commitment contract with specific terms and conditions.",
                "modelRef": "#/components/schemas/payment.pricing.commitments.generators.ContractGenerator.out",
                "customType": "payment.pricing.commitments.generators.ContractGenerator.out",
                "schema": [],
                "complexType": "oneOf",
                "complexItems": [
                  {
                    "name": "payment.pricing.commitments.generators.CustomerArrearsContractGenerator.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.commitments.generators.CustomerArrearsContractGenerator.out",
                    "schema": [
                      {
                        "name": "type",
                        "kind": "optional",
                        "type": "string",
                        "description": "Contract generator type identifier for arrears commitments with true-up billing reconciliation.",
                        "example": "",
                        "default": "arrears_commitment_with_trueup"
                      },
                      {
                        "name": "customerId",
                        "kind": "required",
                        "type": "string",
                        "description": "Unique identifier of the customer entering into this arrears commitment contract.",
                        "example": ""
                      },
                      {
                        "name": "notifyOnClientViolation",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Flag indicating whether to send notifications when customer violates minimum payment commitments.",
                        "example": ""
                      },
                      {
                        "name": "planId",
                        "kind": "required",
                        "type": "string",
                        "description": "Identifier of the product plan associated with this arrears commitment contract.",
                        "example": ""
                      },
                      {
                        "name": "planOverrideGenerator",
                        "kind": "optional",
                        "type": "object",
                        "description": "Optional plan generator to override default pricing rules for this arrears commitment contract.",
                        "modelRef": "#/components/schemas/payment.pricing.plans.generators.PlanGenerator.out",
                        "customType": "payment.pricing.plans.generators.PlanGenerator.out",
                        "schema": [],
                        "complexType": "oneOf",
                        "complexItems": [
                          {
                            "name": "payment.pricing.plans.generators.CustomPlanGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.plans.generators.CustomPlanGenerator.out",
                            "schema": [
                              {
                                "name": "type",
                                "kind": "optional",
                                "type": "string",
                                "description": "Discriminator field identifying this as a custom pricing plan generator.",
                                "example": "",
                                "default": "custom_pricing_plan"
                              },
                              {
                                "name": "id",
                                "kind": "required",
                                "type": "string",
                                "description": "Unique identifier for this custom pricing plan template.",
                                "example": ""
                              },
                              {
                                "name": "billingPeriod",
                                "kind": "required",
                                "type": "object",
                                "description": "Billing frequency determining how often invoices are generated for this plan.",
                                "modelRef": "#/components/schemas/payment.pricing.BillingPeriod.out",
                                "customType": "payment.pricing.BillingPeriod.out",
                                "schema": [
                                  {
                                    "name": "interval",
                                    "kind": "optional",
                                    "type": "string",
                                    "description": "Time interval unit for billing cycle such as day, month, or year",
                                    "modelRef": "#/components/schemas/payment.pricing.BillingPeriodInterval.in",
                                    "customType": "payment.pricing.BillingPeriodInterval.in",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "intervalsCount",
                                    "kind": "optional",
                                    "type": "integer<int32>",
                                    "description": "Number of intervals in billing cycle with minimum value of 1",
                                    "example": 0
                                  }
                                ]
                              },
                              {
                                "name": "planLevelFreeTier",
                                "kind": "optional",
                                "type": "number",
                                "description": "Free usage amount available at the plan level before charges apply.",
                                "example": ""
                              },
                              {
                                "name": "invoiceBasedFeeIds",
                                "kind": "optional",
                                "type": "array",
                                "description": "List of fee identifiers for custom invoice-based cost calculations.",
                                "example": "",
                                "itemType": "string",
                                "customType": "string[]",
                                "itemExample": "",
                                "itemDefault": ""
                              },
                              {
                                "name": "planMinimumPayment",
                                "kind": "optional",
                                "type": "number",
                                "description": "Minimum payment amount required for this pricing plan.",
                                "example": ""
                              },
                              {
                                "name": "minimumPaymentGranularity",
                                "kind": "optional",
                                "type": "string",
                                "description": "Granularity for minimum payment calculations, either hourly or entire invoice period.",
                                "modelRef": "#/components/schemas/payment.pricing.price.UsageGranularity.in",
                                "customType": "payment.pricing.price.UsageGranularity.in",
                                "schema": []
                              },
                              {
                                "name": "planName",
                                "kind": "required",
                                "type": "string",
                                "description": "Human-readable plan name for user interface display.",
                                "example": ""
                              },
                              {
                                "name": "description",
                                "kind": "optional",
                                "type": "string",
                                "description": "Detailed description of the plan for user interface display.",
                                "example": ""
                              },
                              {
                                "name": "feeMap",
                                "kind": "optional",
                                "type": "map",
                                "description": "Map of fee identifiers to their corresponding product plan fee configurations.",
                                "example": "",
                                "customType": "map<string, payment.pricing.ProductPlanFee.in>",
                                "schema": []
                              },
                              {
                                "name": "entitlements",
                                "kind": "optional",
                                "type": "array",
                                "description": "List of feature entitlements or API access rights included in this plan.",
                                "modelRef": "#/components/schemas/payment.pricing.Entitlements.Entitlement.in",
                                "customType": "payment.pricing.Entitlements.Entitlement.in[]",
                                "schema": [
                                  {
                                    "name": "id",
                                    "kind": "required",
                                    "type": "string",
                                    "description": "Unique identifier for the entitlement used in feature flag controls and access validation.",
                                    "example": ""
                                  },
                                  {
                                    "name": "label",
                                    "kind": "optional",
                                    "type": "string",
                                    "description": "Human-readable display name for the entitlement shown in user interfaces and documentation.",
                                    "example": ""
                                  },
                                  {
                                    "name": "apiName",
                                    "kind": "required",
                                    "type": "string",
                                    "description": "User-defined API reference name for programmatic entitlement checks and feature gate logic.",
                                    "example": ""
                                  }
                                ]
                              },
                              {
                                "name": "lockingStatus",
                                "kind": "optional",
                                "type": "string",
                                "description": "Current locking status indicating if the plan can be modified.",
                                "modelRef": "#/components/schemas/common.LockingStatus.in",
                                "customType": "common.LockingStatus.in",
                                "schema": []
                              },
                              {
                                "name": "isDefault",
                                "kind": "optional",
                                "type": "boolean",
                                "description": "Indicates if this is the default plan for new users.",
                                "example": ""
                              },
                              {
                                "name": "successorPlanId",
                                "kind": "optional",
                                "type": "string",
                                "description": "Successor plan identifier for automatic migration when this plan is deprecated.",
                                "example": ""
                              },
                              {
                                "name": "transitionStrategy",
                                "kind": "optional",
                                "type": "string",
                                "description": "Strategy for transitioning to successor plan at deprecation time.",
                                "modelRef": "#/components/schemas/payment.pricing.SuccessorPlanTransitionStrategy.in",
                                "customType": "payment.pricing.SuccessorPlanTransitionStrategy.in",
                                "schema": []
                              },
                              {
                                "name": "prepaidBuyingRules",
                                "kind": "optional",
                                "type": "object",
                                "description": "Rules governing prepaid card purchases for this pricing plan.",
                                "modelRef": "#/components/schemas/payment.pricing.prepaid.PlanPrepaidBuyingRules.out",
                                "customType": "payment.pricing.prepaid.PlanPrepaidBuyingRules.out",
                                "schema": [
                                  {
                                    "name": "planFixedFeeIdsToPrepay",
                                    "kind": "optional",
                                    "type": "array",
                                    "description": "List of fixed fee identifiers that must be prepaid for this plan.",
                                    "example": "",
                                    "itemType": "string",
                                    "customType": "string[]",
                                    "itemExample": "",
                                    "itemDefault": ""
                                  },
                                  {
                                    "name": "planRecurringPrepaidAmount",
                                    "kind": "optional",
                                    "type": "number",
                                    "description": "Recurring prepaid amount purchased every billing period at plan level.",
                                    "example": ""
                                  },
                                  {
                                    "name": "productItemRecurringPrepaidAmount",
                                    "kind": "optional",
                                    "type": "array",
                                    "description": "Recurring prepaid amounts purchased every billing period per product item.",
                                    "modelRef": "#/components/schemas/payment.pricing.prepaid.PrepaidProductItem.in",
                                    "customType": "payment.pricing.prepaid.PrepaidProductItem.in[]",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "walletMinPrepaidAvailable",
                                    "kind": "optional",
                                    "type": "number",
                                    "description": "Minimum prepaid balance threshold triggering automatic top-up purchases.",
                                    "example": ""
                                  },
                                  {
                                    "name": "productItemMinPrepaidAvailable",
                                    "kind": "optional",
                                    "type": "map",
                                    "description": "Product item ID to minimum prepaid balance map for automatic purchases.",
                                    "example": "",
                                    "customType": "map<string, number>",
                                    "schema": []
                                  }
                                ]
                              },
                              {
                                "name": "planCurrency",
                                "kind": "optional",
                                "type": "string",
                                "description": "Custom currency for this plan in ISO 4217 format.",
                                "example": "USD"
                              },
                              {
                                "name": "priceGenerators",
                                "kind": "required",
                                "type": "object",
                                "description": "List of price generators defining the billing logic for this plan.",
                                "modelRef": "#/components/schemas/payment.pricing.price.generators.PriceGenerator.out",
                                "customType": "payment.pricing.price.generators.PriceGenerator.out[]",
                                "schema": [],
                                "complexType": "oneOf",
                                "complexItems": [
                                  {
                                    "name": "payment.pricing.price.generators.CostPlusDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.CostPlusDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.CostPlusNoDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.CostPlusNoDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.FlatRatePriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.FlatRatePriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.FlatRateWithOveragesPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.FlatRateWithOveragesPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.InterchangePlusNoDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.InterchangePlusNoDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.InterchangePlusDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.InterchangePlusDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.SubscriptionWithOveragePriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.SubscriptionWithOveragePriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.TieredSeatBasedGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.TieredSeatBasedGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.TieredSeatBasedDimensionGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.TieredSeatBasedDimensionGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.UltraFrequencyNoDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.UltraFrequencyNoDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.UltraFrequencyDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.UltraFrequencyDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.UltraFrequencySubscriptionWithOveragePriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.UltraFrequencySubscriptionWithOveragePriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.UsageBasedDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.MaxUsageBasedDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.MaxUsageBasedDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.SumUsageBasedDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.SumUsageBasedDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.UsageBasedNoDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedNoDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.MaxUsageBasedNoDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.MaxUsageBasedNoDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.SumUsageBasedNoDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.SumUsageBasedNoDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.UsageBasedVolumePriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedVolumePriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.UsageBasedVolumeDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedVolumeDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "name": "invoiceBasedFees",
                                "kind": "optional",
                                "type": "object",
                                "description": "List of invoice-based service fees applied to this plan.",
                                "modelRef": "#/components/schemas/payment.pricing.invoice_based_fees.InvoiceBasedFee.out",
                                "customType": "payment.pricing.invoice_based_fees.InvoiceBasedFee.out[]",
                                "schema": [],
                                "complexType": "oneOf",
                                "complexItems": [
                                  {
                                    "name": "payment.pricing.invoice_based_fees.ConstantInvoiceRatioFee.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.invoice_based_fees.ConstantInvoiceRatioFee.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "name": "realTimePricing",
                                "kind": "optional",
                                "type": "boolean",
                                "description": "Enables real-time pricing workflows such as automatic top-ups for this plan.",
                                "example": ""
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.plans.generators.FlatRatePlanGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.plans.generators.FlatRatePlanGenerator.out",
                            "schema": [
                              {
                                "name": "id",
                                "kind": "required",
                                "type": "string",
                                "description": "Unique identifier for this flat rate pricing plan template.",
                                "example": ""
                              },
                              {
                                "name": "billingPeriod",
                                "kind": "required",
                                "type": "object",
                                "description": "Billing frequency determining how often invoices are generated for this plan.",
                                "modelRef": "#/components/schemas/payment.pricing.BillingPeriod.out",
                                "customType": "payment.pricing.BillingPeriod.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "planName",
                                "kind": "required",
                                "type": "string",
                                "description": "Human-readable name for this flat rate pricing plan.",
                                "example": ""
                              },
                              {
                                "name": "priceGenerators",
                                "kind": "required",
                                "type": "array",
                                "description": "List of flat rate price generators defining the billing logic.",
                                "modelRef": "#/components/schemas/payment.pricing.price.generators.FlatRatePriceGenerator.out",
                                "customType": "payment.pricing.price.generators.FlatRatePriceGenerator.out[]",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "description",
                                "kind": "optional",
                                "type": "string",
                                "description": "Detailed description of the flat rate plan for user interface.",
                                "example": ""
                              },
                              {
                                "name": "invoiceBasedFeeIds",
                                "kind": "optional",
                                "type": "array",
                                "description": "List of fee identifiers for custom invoice-based cost calculations.",
                                "example": "",
                                "itemType": "string",
                                "customType": "string[]",
                                "itemExample": "",
                                "itemDefault": ""
                              },
                              {
                                "name": "isDefault",
                                "kind": "optional",
                                "type": "boolean",
                                "description": "Indicates if this is the default flat rate plan for users.",
                                "example": ""
                              },
                              {
                                "name": "lockingStatus",
                                "kind": "optional",
                                "type": "string",
                                "description": "Current locking status indicating if the plan can be modified.",
                                "modelRef": "#/components/schemas/common.LockingStatus.in",
                                "customType": "common.LockingStatus.in",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "planLevelFreeTier",
                                "kind": "optional",
                                "type": "number",
                                "description": "Free usage amount available at the plan level before charges apply.",
                                "example": ""
                              },
                              {
                                "name": "successorPlanId",
                                "kind": "optional",
                                "type": "string",
                                "description": "Successor plan identifier for automatic migration when this plan is deprecated.",
                                "example": ""
                              },
                              {
                                "name": "transitionStrategy",
                                "kind": "optional",
                                "type": "string",
                                "description": "Strategy for transitioning to successor plan at deprecation time.",
                                "modelRef": "#/components/schemas/payment.pricing.SuccessorPlanTransitionStrategy.in",
                                "customType": "payment.pricing.SuccessorPlanTransitionStrategy.in",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "entitlements",
                                "kind": "optional",
                                "type": "array",
                                "description": "List of feature entitlements or API access rights included in plan.",
                                "modelRef": "#/components/schemas/payment.pricing.Entitlements.Entitlement.in",
                                "customType": "payment.pricing.Entitlements.Entitlement.in[]",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "type",
                                "kind": "optional",
                                "type": "string",
                                "description": "Discriminator field identifying this as a flat rate plan generator.",
                                "example": "",
                                "default": "flat_rate"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.plans.generators.PayAndGoPlanGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.plans.generators.PayAndGoPlanGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.plans.generators.UsageBasedPlanGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.plans.generators.UsageBasedPlanGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.plans.generators.SeatBasedPlanGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.plans.generators.SeatBasedPlanGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.plans.generators.SubscriptionPlanGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.plans.generators.SubscriptionPlanGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "name": "label",
                        "kind": "required",
                        "type": "string",
                        "description": "Human-readable label or name for this arrears commitment contract for identification purposes.",
                        "example": ""
                      },
                      {
                        "name": "startTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp in seconds used to calculate the time range for the commitment billing period.",
                        "example": 0
                      },
                      {
                        "name": "cycles",
                        "kind": "required",
                        "type": "integer<int32>",
                        "description": "The amount of billing cycles the commitment is going to last.",
                        "example": 0
                      },
                      {
                        "name": "trueup",
                        "kind": "optional",
                        "type": "object",
                        "description": "True-up configuration specifying minimum payment obligations and billing reconciliation rules, required field.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.generators.TrueUpInput.out",
                        "customType": "payment.pricing.commitments.generators.TrueUpInput.out",
                        "schema": [
                          {
                            "name": "minimumPayment",
                            "kind": "required",
                            "type": "number",
                            "description": "Minimum payment amount required for true-up reconciliation, must be greater than zero, required field.",
                            "example": ""
                          },
                          {
                            "name": "interval",
                            "kind": "required",
                            "type": "string",
                            "description": "True-up interval specifying whether reconciliation applies per cycle or entire commitment period, required field.",
                            "modelRef": "#/components/schemas/payment.pricing.commitments.generators.TrueUpInterval.in",
                            "customType": "payment.pricing.commitments.generators.TrueUpInterval.in",
                            "schema": []
                          },
                          {
                            "name": "startCycle",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Optional billing cycle number when true-up period begins, cannot be used with commitment interval.",
                            "example": 0
                          },
                          {
                            "name": "endCycle",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Optional billing cycle number when true-up period ends, cannot be used with commitment interval.",
                            "example": 0
                          },
                          {
                            "name": "productItemIds",
                            "kind": "optional",
                            "type": "array",
                            "description": "Optional list of specific product item IDs included in minimum payment calculation for true-up reconciliation.",
                            "example": "",
                            "itemType": "string",
                            "customType": "string[]",
                            "itemExample": "",
                            "itemDefault": ""
                          },
                          {
                            "name": "usePriceAfterDiscounts",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Flag indicating whether minimum payment calculation should include or exclude discount amounts from promotions.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "promotions",
                        "kind": "optional",
                        "type": "array",
                        "description": "List of promotional offers and discounts to be applied within the arrears commitment period.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.generators.PromotionInfo.out",
                        "customType": "payment.pricing.commitments.generators.PromotionInfo.out[]",
                        "schema": [
                          {
                            "name": "id",
                            "kind": "optional",
                            "type": "string",
                            "description": "Existing promotion identifier, required when custom promotion is not specified, cannot be empty.",
                            "example": ""
                          },
                          {
                            "name": "startAtCycle",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Billing cycle number when promotion becomes active, must be greater than or equal to one.",
                            "example": 0
                          },
                          {
                            "name": "endAtCycle",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Billing cycle number when promotion expires, must be greater than or equal to one.",
                            "example": 0
                          },
                          {
                            "name": "customPromotion",
                            "kind": "optional",
                            "type": "object",
                            "description": "Custom promotion definition to create new discount rules, alternative to using existing promotion ID.",
                            "modelRef": "#/components/schemas/payment.pricing.promotions.Promotion.out",
                            "customType": "payment.pricing.promotions.Promotion.out",
                            "schema": [],
                            "complexType": "oneOf",
                            "complexItems": [
                              {
                                "name": "payment.pricing.promotions.pre_created.AbsoluteProductAutomaticPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsoluteProductAutomaticPromotion.out",
                                "schema": [
                                  {
                                    "name": "id",
                                    "kind": "required",
                                    "type": "string",
                                    "description": "Unique identifier for the promotion within the account scope.",
                                    "example": ""
                                  },
                                  {
                                    "name": "type",
                                    "kind": "optional",
                                    "type": "string",
                                    "description": "Fixed promotion type identifier for automatic product-level absolute discounts.",
                                    "example": "",
                                    "default": "absolute_product_automatic_promotion"
                                  },
                                  {
                                    "name": "promotionName",
                                    "kind": "required",
                                    "type": "string",
                                    "description": "Human-readable name for promotion display and management within admin interfaces.",
                                    "example": ""
                                  },
                                  {
                                    "name": "description",
                                    "kind": "optional",
                                    "type": "string",
                                    "description": "Optional detailed description explaining promotion purpose, terms, and usage guidelines.",
                                    "example": ""
                                  },
                                  {
                                    "name": "lockingStatus",
                                    "kind": "optional",
                                    "type": "string",
                                    "description": "Current modification permissions and lifecycle state of the promotion.",
                                    "modelRef": "#/components/schemas/common.LockingStatus.in",
                                    "customType": "common.LockingStatus.in",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "lastUpdateTimeInMillis",
                                    "kind": "optional",
                                    "type": "integer<int64>",
                                    "description": "Unix timestamp in milliseconds when promotion was last modified or activated.",
                                    "example": 0
                                  },
                                  {
                                    "name": "dimensionConstraintMap",
                                    "kind": "optional",
                                    "type": "map",
                                    "description": "Key-value pairs defining usage dimension filters for promotion applicability conditions.",
                                    "example": "",
                                    "customType": "map<string, string>",
                                    "schema": []
                                  },
                                  {
                                    "name": "customerTags",
                                    "kind": "optional",
                                    "type": "map",
                                    "description": "Required customer tag criteria for automatic promotion activation and targeting.",
                                    "example": "",
                                    "customType": "map<string, string>",
                                    "schema": []
                                  },
                                  {
                                    "name": "isHidden",
                                    "kind": "optional",
                                    "type": "boolean",
                                    "description": "Controls promotion visibility in customer interfaces and billing communications.",
                                    "example": ""
                                  },
                                  {
                                    "name": "discount",
                                    "kind": "optional",
                                    "type": "number",
                                    "description": "Fixed monetary amount deducted from product charges in account currency.",
                                    "example": ""
                                  },
                                  {
                                    "name": "totalMaxDiscount",
                                    "kind": "optional",
                                    "type": "number",
                                    "description": "Optional lifetime limit on total discount amount available across all periods.",
                                    "example": ""
                                  },
                                  {
                                    "name": "targetProductId",
                                    "kind": "optional",
                                    "type": "string",
                                    "description": "Identifier of the specific product receiving the automatic discount benefits.",
                                    "example": ""
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.AbsoluteProductItemAutomaticPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsoluteProductItemAutomaticPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.AbsoluteProductItemSalesEventPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsoluteProductItemSalesEventPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.AbsoluteProductSalesEventPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsoluteProductSalesEventPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.FreeTrialPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.FreeTrialPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.GenericItemPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.GenericItemPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.GenericProductPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.GenericProductPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.ProductAbsolutePartnerDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.ProductAbsolutePartnerDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.ProductItemAbsolutePartnerDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.ProductItemAbsolutePartnerDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.RelativeProductItemPartnerDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductItemPartnerDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.RelativeProductAutomaticPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductAutomaticPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.RelativeProductItemAutomaticPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductItemAutomaticPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.RelativeProductItemSalesEventPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductItemSalesEventPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.ProductRelativePartnerDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.ProductRelativePartnerDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.RelativeProductSalesEventPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductSalesEventPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TieredAbsoluteProductAutomaticPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TieredAbsoluteProductAutomaticPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TieredAbsoluteProductItemAutomaticPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TieredAbsoluteProductItemAutomaticPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TieredRelativeProductAutomaticPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TieredRelativeProductAutomaticPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TieredRelativeProductItemAutomaticPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TieredRelativeProductItemAutomaticPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TimeLimitedAbsoluteProductItemDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedAbsoluteProductItemDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TimeLimitedAbsoluteProductDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedAbsoluteProductDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TimeLimitedRelativeProductItemDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedRelativeProductItemDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TimeLimitedRelativeProductDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedRelativeProductDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.RelativeProductFullDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductFullDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TimeLimitedTieredAbsoluteProductItemDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedTieredAbsoluteProductItemDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TimeLimitedTieredAbsoluteProductDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedTieredAbsoluteProductDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TimeLimitedTieredRelativeProductItemDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedTieredRelativeProductItemDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TimeLimitedTieredRelativeProductDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedTieredRelativeProductDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.AbsolutePlanPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsolutePlanPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "name": "reward",
                        "kind": "optional",
                        "type": "object",
                        "description": "Optional reward credits to be provided as free incentives within the arrears commitment structure.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.generators.PrepaidCardInput.out",
                        "customType": "payment.pricing.commitments.generators.PrepaidCardInput.out",
                        "schema": [
                          {
                            "name": "value",
                            "kind": "required",
                            "type": "number",
                            "description": "Amount of prepaid credit in base currency, must be positive value, required field.",
                            "example": ""
                          },
                          {
                            "name": "isReward",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Flag indicating whether this prepaid credit is a free reward or requires customer payment.",
                            "example": ""
                          },
                          {
                            "name": "priority",
                            "kind": "optional",
                            "type": "number",
                            "description": "Customer prepaid card priority for determining usage order when multiple cards exist, defaults to zero.",
                            "example": ""
                          },
                          {
                            "name": "prepaidConditions",
                            "kind": "optional",
                            "type": "object",
                            "description": "Optional conditions and restrictions for applying the prepaid credit to customer invoices and product items.",
                            "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidConditions.out",
                            "customType": "payment.billing.prepaid_to_product.PrepaidConditions.out",
                            "schema": [
                              {
                                "name": "prepaidConditionsList",
                                "kind": "optional",
                                "type": "object",
                                "description": "Active set of prepaid conditions determining when credits apply to customer charges",
                                "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidCondition.out",
                                "customType": "payment.billing.prepaid_to_product.PrepaidCondition.out[]",
                                "schema": [],
                                "complexType": "oneOf",
                                "complexItems": [
                                  {
                                    "name": "payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "name": "prepaidConditionsHistory",
                                "kind": "optional",
                                "type": "map",
                                "description": "Historical timeline mapping timestamps to condition sets for audit and tracking purposes",
                                "example": "",
                                "customType": "map<string, payment.billing.prepaid_to_product.PrepaidCondition.out[]>",
                                "schema": []
                              }
                            ]
                          },
                          {
                            "name": "label",
                            "kind": "required",
                            "type": "string",
                            "description": "Human-readable label for identifying this prepaid card input within commitment contracts, required field.",
                            "example": ""
                          },
                          {
                            "name": "startTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp when prepaid card becomes active, cannot be in past, mutually exclusive with cycle fields.",
                            "example": 0
                          },
                          {
                            "name": "endTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp when prepaid card expires, must be at least thirty days after start time.",
                            "example": 0
                          },
                          {
                            "name": "startCycle",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Billing cycle number when prepaid card becomes active, mutually exclusive with timestamp fields.",
                            "example": 0
                          },
                          {
                            "name": "endCycle",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Billing cycle number when prepaid card expires, used with start cycle for duration calculation.",
                            "example": 0
                          },
                          {
                            "name": "billOnceCreditIsFinished",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Flag indicating whether to bill customer in current billing period once prepaid credits are exhausted.",
                            "example": ""
                          },
                          {
                            "name": "orderItemId",
                            "kind": "optional",
                            "type": "string",
                            "description": "Optional identifier linking this prepaid card input to a specific order item for tracking purposes.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "commitmentEndingConfig",
                        "kind": "optional",
                        "type": "object",
                        "description": "Configuration specifying actions and conditions when the arrears commitment contract ends or expires.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.CommitmentEndingConfig.out",
                        "customType": "payment.pricing.commitments.CommitmentEndingConfig.out",
                        "schema": [
                          {
                            "name": "commitmentRestartConfig",
                            "kind": "optional",
                            "type": "object",
                            "description": "Configuration for transitioning to successor plan when commitment ends without extension.",
                            "modelRef": "#/components/schemas/payment.pricing.commitments.CommitmentRestartConfig.in",
                            "customType": "payment.pricing.commitments.CommitmentRestartConfig.in",
                            "schema": [
                              {
                                "name": "latestDecisionTimeSeconds",
                                "kind": "optional",
                                "type": "integer<int64>",
                                "description": "Unix timestamp deadline for customer to decide on commitment renewal before automatic action.",
                                "example": 0
                              },
                              {
                                "name": "optOut",
                                "kind": "optional",
                                "type": "boolean",
                                "description": "Whether customer explicitly chooses not to renew commitment requiring no further action.",
                                "example": ""
                              }
                            ]
                          },
                          {
                            "name": "extendPrepaidCardEndTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp extending prepaid card validity beyond commitment end for credits rollover.",
                            "example": 0
                          }
                        ]
                      },
                      {
                        "name": "exitClauses",
                        "kind": "optional",
                        "type": "object",
                        "description": "List of exit clause conditions allowing early termination of the arrears commitment contract.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.ExitClause.out",
                        "customType": "payment.pricing.commitments.exit_clauses.ExitClause.out[]",
                        "schema": [],
                        "complexType": "oneOf",
                        "complexItems": [
                          {
                            "name": "payment.pricing.commitments.exit_clauses.ExitBeforeCommitmentStartWithGracePeriod.in",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.ExitBeforeCommitmentStartWithGracePeriod.in",
                            "schema": [
                              {
                                "name": "type",
                                "kind": "optional",
                                "type": "string",
                                "description": "Fixed type identifier for exit clauses with grace period deadline before contract starts.",
                                "example": "",
                                "default": "termination_grace_period"
                              },
                              {
                                "name": "id",
                                "kind": "optional",
                                "type": "string",
                                "description": "Unique identifier for this specific exit clause within the commitment contract.",
                                "example": ""
                              },
                              {
                                "name": "gracePeriodInDays",
                                "kind": "required",
                                "type": "integer<int32>",
                                "description": "Number of days before contract start time that serves as cancellation deadline, must be non-negative.",
                                "example": 0
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.commitments.exit_clauses.TerminationWithNoticePeriod.in",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.TerminationWithNoticePeriod.in",
                            "schema": [
                              {
                                "name": "type",
                                "kind": "optional",
                                "type": "string",
                                "description": "Fixed type identifier for termination of convenience exit clauses requiring advance notice period.",
                                "example": "",
                                "default": "termination_notice_period"
                              },
                              {
                                "name": "id",
                                "kind": "optional",
                                "type": "string",
                                "description": "Unique identifier for this specific exit clause within the commitment contract.",
                                "example": ""
                              },
                              {
                                "name": "noticePeriodInDays",
                                "kind": "required",
                                "type": "integer<int32>",
                                "description": "Number of days advance notice required before contract termination, must be positive and shorter than commitment duration.",
                                "example": 0
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.commitments.exit_clauses.TerminationByTimeRange.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.TerminationByTimeRange.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "name": "isProductPlanModifiable",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Flag indicating whether the associated product plan can be modified during the arrears commitment period.",
                        "example": ""
                      }
                    ]
                  },
                  {
                    "name": "payment.pricing.commitments.generators.CustomCommitmentContractGenerator.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.commitments.generators.CustomCommitmentContractGenerator.out",
                    "schema": [
                      {
                        "name": "type",
                        "kind": "optional",
                        "type": "string",
                        "description": "Contract generator type identifier indicating custom commitment structure with flexible payment options.",
                        "example": "",
                        "default": "custom_commitment"
                      },
                      {
                        "name": "customerId",
                        "kind": "required",
                        "type": "string",
                        "description": "Unique identifier of the customer entering into this commitment contract.",
                        "example": ""
                      },
                      {
                        "name": "notifyOnClientViolation",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Flag indicating whether to send notifications when customer violates commitment terms.",
                        "example": ""
                      },
                      {
                        "name": "planId",
                        "kind": "required",
                        "type": "string",
                        "description": "Identifier of the product plan associated with this commitment contract.",
                        "example": ""
                      },
                      {
                        "name": "label",
                        "kind": "required",
                        "type": "string",
                        "description": "Human-readable label or name for this commitment contract for identification purposes.",
                        "example": ""
                      },
                      {
                        "name": "startTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp in seconds when the commitment contract becomes active and billing begins.",
                        "example": 0
                      },
                      {
                        "name": "cycles",
                        "kind": "required",
                        "type": "integer<int32>",
                        "description": "The amount of billing cycles the commitment is going to last.",
                        "example": 0
                      },
                      {
                        "name": "upfrontPayments",
                        "kind": "optional",
                        "type": "array",
                        "description": "List of prepaid credit payments to be purchased upfront as part of the commitment.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.generators.PrepaidCardInput.out",
                        "customType": "payment.pricing.commitments.generators.PrepaidCardInput.out[]",
                        "schema": [
                          {
                            "name": "value",
                            "kind": "required",
                            "type": "number",
                            "description": "Amount of prepaid credit in base currency, must be positive value, required field.",
                            "example": ""
                          },
                          {
                            "name": "isReward",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Flag indicating whether this prepaid credit is a free reward or requires customer payment.",
                            "example": ""
                          },
                          {
                            "name": "priority",
                            "kind": "optional",
                            "type": "number",
                            "description": "Customer prepaid card priority for determining usage order when multiple cards exist, defaults to zero.",
                            "example": ""
                          },
                          {
                            "name": "prepaidConditions",
                            "kind": "optional",
                            "type": "object",
                            "description": "Optional conditions and restrictions for applying the prepaid credit to customer invoices and product items.",
                            "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidConditions.out",
                            "customType": "payment.billing.prepaid_to_product.PrepaidConditions.out",
                            "schema": [
                              {
                                "name": "prepaidConditionsList",
                                "kind": "optional",
                                "type": "object",
                                "description": "Active set of prepaid conditions determining when credits apply to customer charges",
                                "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidCondition.out",
                                "customType": "payment.billing.prepaid_to_product.PrepaidCondition.out[]",
                                "schema": [],
                                "complexType": "oneOf",
                                "complexItems": [
                                  {
                                    "name": "payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "name": "prepaidConditionsHistory",
                                "kind": "optional",
                                "type": "map",
                                "description": "Historical timeline mapping timestamps to condition sets for audit and tracking purposes",
                                "example": "",
                                "customType": "map<string, payment.billing.prepaid_to_product.PrepaidCondition.out[]>",
                                "schema": []
                              }
                            ]
                          },
                          {
                            "name": "label",
                            "kind": "required",
                            "type": "string",
                            "description": "Human-readable label for identifying this prepaid card input within commitment contracts, required field.",
                            "example": ""
                          },
                          {
                            "name": "startTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp when prepaid card becomes active, cannot be in past, mutually exclusive with cycle fields.",
                            "example": 0
                          },
                          {
                            "name": "endTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp when prepaid card expires, must be at least thirty days after start time.",
                            "example": 0
                          },
                          {
                            "name": "startCycle",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Billing cycle number when prepaid card becomes active, mutually exclusive with timestamp fields.",
                            "example": 0
                          },
                          {
                            "name": "endCycle",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Billing cycle number when prepaid card expires, used with start cycle for duration calculation.",
                            "example": 0
                          },
                          {
                            "name": "billOnceCreditIsFinished",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Flag indicating whether to bill customer in current billing period once prepaid credits are exhausted.",
                            "example": ""
                          },
                          {
                            "name": "orderItemId",
                            "kind": "optional",
                            "type": "string",
                            "description": "Optional identifier linking this prepaid card input to a specific order item for tracking purposes.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "installmentSchedule",
                        "kind": "optional",
                        "type": "array",
                        "description": "A dictionary from cycle to the amount of money to pay.",
                        "example": "",
                        "itemType": "object",
                        "customType": "object[]",
                        "itemExample": "",
                        "itemDefault": ""
                      },
                      {
                        "name": "trueups",
                        "kind": "optional",
                        "type": "array",
                        "description": "List of true-up configurations for reconciling actual usage against minimum commitments.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.generators.TrueUpInput.out",
                        "customType": "payment.pricing.commitments.generators.TrueUpInput.out[]",
                        "schema": [
                          {
                            "name": "minimumPayment",
                            "kind": "required",
                            "type": "number",
                            "description": "Minimum payment amount required for true-up reconciliation, must be greater than zero, required field.",
                            "example": ""
                          },
                          {
                            "name": "interval",
                            "kind": "required",
                            "type": "string",
                            "description": "True-up interval specifying whether reconciliation applies per cycle or entire commitment period, required field.",
                            "modelRef": "#/components/schemas/payment.pricing.commitments.generators.TrueUpInterval.in",
                            "customType": "payment.pricing.commitments.generators.TrueUpInterval.in",
                            "schema": []
                          },
                          {
                            "name": "startCycle",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Optional billing cycle number when true-up period begins, cannot be used with commitment interval.",
                            "example": 0
                          },
                          {
                            "name": "endCycle",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Optional billing cycle number when true-up period ends, cannot be used with commitment interval.",
                            "example": 0
                          },
                          {
                            "name": "productItemIds",
                            "kind": "optional",
                            "type": "array",
                            "description": "Optional list of specific product item IDs included in minimum payment calculation for true-up reconciliation.",
                            "example": "",
                            "itemType": "string",
                            "customType": "string[]",
                            "itemExample": "",
                            "itemDefault": ""
                          },
                          {
                            "name": "usePriceAfterDiscounts",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Flag indicating whether minimum payment calculation should include or exclude discount amounts from promotions.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "credits",
                        "kind": "optional",
                        "type": "array",
                        "description": "List of prepaid credit inputs to be granted as part of the commitment contract.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.generators.PrepaidCardInput.out",
                        "customType": "payment.pricing.commitments.generators.PrepaidCardInput.out[]",
                        "schema": [
                          {
                            "name": "value",
                            "kind": "required",
                            "type": "number",
                            "description": "Amount of prepaid credit in base currency, must be positive value, required field.",
                            "example": ""
                          },
                          {
                            "name": "isReward",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Flag indicating whether this prepaid credit is a free reward or requires customer payment.",
                            "example": ""
                          },
                          {
                            "name": "priority",
                            "kind": "optional",
                            "type": "number",
                            "description": "Customer prepaid card priority for determining usage order when multiple cards exist, defaults to zero.",
                            "example": ""
                          },
                          {
                            "name": "prepaidConditions",
                            "kind": "optional",
                            "type": "object",
                            "description": "Optional conditions and restrictions for applying the prepaid credit to customer invoices and product items.",
                            "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidConditions.out",
                            "customType": "payment.billing.prepaid_to_product.PrepaidConditions.out",
                            "schema": [
                              {
                                "name": "prepaidConditionsList",
                                "kind": "optional",
                                "type": "object",
                                "description": "Active set of prepaid conditions determining when credits apply to customer charges",
                                "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidCondition.out",
                                "customType": "payment.billing.prepaid_to_product.PrepaidCondition.out[]",
                                "schema": [],
                                "complexType": "oneOf",
                                "complexItems": [
                                  {
                                    "name": "payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "name": "prepaidConditionsHistory",
                                "kind": "optional",
                                "type": "map",
                                "description": "Historical timeline mapping timestamps to condition sets for audit and tracking purposes",
                                "example": "",
                                "customType": "map<string, payment.billing.prepaid_to_product.PrepaidCondition.out[]>",
                                "schema": []
                              }
                            ]
                          },
                          {
                            "name": "label",
                            "kind": "required",
                            "type": "string",
                            "description": "Human-readable label for identifying this prepaid card input within commitment contracts, required field.",
                            "example": ""
                          },
                          {
                            "name": "startTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp when prepaid card becomes active, cannot be in past, mutually exclusive with cycle fields.",
                            "example": 0
                          },
                          {
                            "name": "endTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp when prepaid card expires, must be at least thirty days after start time.",
                            "example": 0
                          },
                          {
                            "name": "startCycle",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Billing cycle number when prepaid card becomes active, mutually exclusive with timestamp fields.",
                            "example": 0
                          },
                          {
                            "name": "endCycle",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Billing cycle number when prepaid card expires, used with start cycle for duration calculation.",
                            "example": 0
                          },
                          {
                            "name": "billOnceCreditIsFinished",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Flag indicating whether to bill customer in current billing period once prepaid credits are exhausted.",
                            "example": ""
                          },
                          {
                            "name": "orderItemId",
                            "kind": "optional",
                            "type": "string",
                            "description": "Optional identifier linking this prepaid card input to a specific order item for tracking purposes.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "rewards",
                        "kind": "optional",
                        "type": "array",
                        "description": "List of reward credits to be provided as incentives within the commitment structure.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.generators.PrepaidCardInput.out",
                        "customType": "payment.pricing.commitments.generators.PrepaidCardInput.out[]",
                        "schema": [
                          {
                            "name": "value",
                            "kind": "required",
                            "type": "number",
                            "description": "Amount of prepaid credit in base currency, must be positive value, required field.",
                            "example": ""
                          },
                          {
                            "name": "isReward",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Flag indicating whether this prepaid credit is a free reward or requires customer payment.",
                            "example": ""
                          },
                          {
                            "name": "priority",
                            "kind": "optional",
                            "type": "number",
                            "description": "Customer prepaid card priority for determining usage order when multiple cards exist, defaults to zero.",
                            "example": ""
                          },
                          {
                            "name": "prepaidConditions",
                            "kind": "optional",
                            "type": "object",
                            "description": "Optional conditions and restrictions for applying the prepaid credit to customer invoices and product items.",
                            "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidConditions.out",
                            "customType": "payment.billing.prepaid_to_product.PrepaidConditions.out",
                            "schema": [
                              {
                                "name": "prepaidConditionsList",
                                "kind": "optional",
                                "type": "object",
                                "description": "Active set of prepaid conditions determining when credits apply to customer charges",
                                "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidCondition.out",
                                "customType": "payment.billing.prepaid_to_product.PrepaidCondition.out[]",
                                "schema": [],
                                "complexType": "oneOf",
                                "complexItems": [
                                  {
                                    "name": "payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "name": "prepaidConditionsHistory",
                                "kind": "optional",
                                "type": "map",
                                "description": "Historical timeline mapping timestamps to condition sets for audit and tracking purposes",
                                "example": "",
                                "customType": "map<string, payment.billing.prepaid_to_product.PrepaidCondition.out[]>",
                                "schema": []
                              }
                            ]
                          },
                          {
                            "name": "label",
                            "kind": "required",
                            "type": "string",
                            "description": "Human-readable label for identifying this prepaid card input within commitment contracts, required field.",
                            "example": ""
                          },
                          {
                            "name": "startTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp when prepaid card becomes active, cannot be in past, mutually exclusive with cycle fields.",
                            "example": 0
                          },
                          {
                            "name": "endTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp when prepaid card expires, must be at least thirty days after start time.",
                            "example": 0
                          },
                          {
                            "name": "startCycle",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Billing cycle number when prepaid card becomes active, mutually exclusive with timestamp fields.",
                            "example": 0
                          },
                          {
                            "name": "endCycle",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Billing cycle number when prepaid card expires, used with start cycle for duration calculation.",
                            "example": 0
                          },
                          {
                            "name": "billOnceCreditIsFinished",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Flag indicating whether to bill customer in current billing period once prepaid credits are exhausted.",
                            "example": ""
                          },
                          {
                            "name": "orderItemId",
                            "kind": "optional",
                            "type": "string",
                            "description": "Optional identifier linking this prepaid card input to a specific order item for tracking purposes.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "promotions",
                        "kind": "optional",
                        "type": "array",
                        "description": "List of promotional offers and discounts to be applied within the commitment period.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.generators.PromotionInfo.out",
                        "customType": "payment.pricing.commitments.generators.PromotionInfo.out[]",
                        "schema": [
                          {
                            "name": "id",
                            "kind": "optional",
                            "type": "string",
                            "description": "Existing promotion identifier, required when custom promotion is not specified, cannot be empty.",
                            "example": ""
                          },
                          {
                            "name": "startAtCycle",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Billing cycle number when promotion becomes active, must be greater than or equal to one.",
                            "example": 0
                          },
                          {
                            "name": "endAtCycle",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Billing cycle number when promotion expires, must be greater than or equal to one.",
                            "example": 0
                          },
                          {
                            "name": "customPromotion",
                            "kind": "optional",
                            "type": "object",
                            "description": "Custom promotion definition to create new discount rules, alternative to using existing promotion ID.",
                            "modelRef": "#/components/schemas/payment.pricing.promotions.Promotion.out",
                            "customType": "payment.pricing.promotions.Promotion.out",
                            "schema": [],
                            "complexType": "oneOf",
                            "complexItems": [
                              {
                                "name": "payment.pricing.promotions.pre_created.AbsoluteProductAutomaticPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsoluteProductAutomaticPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.AbsoluteProductItemAutomaticPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsoluteProductItemAutomaticPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.AbsoluteProductItemSalesEventPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsoluteProductItemSalesEventPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.AbsoluteProductSalesEventPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsoluteProductSalesEventPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.FreeTrialPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.FreeTrialPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.GenericItemPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.GenericItemPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.GenericProductPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.GenericProductPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.ProductAbsolutePartnerDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.ProductAbsolutePartnerDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.ProductItemAbsolutePartnerDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.ProductItemAbsolutePartnerDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.RelativeProductItemPartnerDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductItemPartnerDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.RelativeProductAutomaticPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductAutomaticPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.RelativeProductItemAutomaticPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductItemAutomaticPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.RelativeProductItemSalesEventPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductItemSalesEventPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.ProductRelativePartnerDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.ProductRelativePartnerDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.RelativeProductSalesEventPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductSalesEventPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TieredAbsoluteProductAutomaticPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TieredAbsoluteProductAutomaticPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TieredAbsoluteProductItemAutomaticPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TieredAbsoluteProductItemAutomaticPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TieredRelativeProductAutomaticPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TieredRelativeProductAutomaticPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TieredRelativeProductItemAutomaticPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TieredRelativeProductItemAutomaticPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TimeLimitedAbsoluteProductItemDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedAbsoluteProductItemDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TimeLimitedAbsoluteProductDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedAbsoluteProductDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TimeLimitedRelativeProductItemDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedRelativeProductItemDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TimeLimitedRelativeProductDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedRelativeProductDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.RelativeProductFullDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductFullDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TimeLimitedTieredAbsoluteProductItemDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedTieredAbsoluteProductItemDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TimeLimitedTieredAbsoluteProductDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedTieredAbsoluteProductDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TimeLimitedTieredRelativeProductItemDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedTieredRelativeProductItemDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.TimeLimitedTieredRelativeProductDiscount.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedTieredRelativeProductDiscount.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.pricing.promotions.pre_created.AbsolutePlanPromotion.out",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsolutePlanPromotion.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "name": "planOverrideGenerator",
                        "kind": "optional",
                        "type": "object",
                        "description": "Optional plan generator to override default pricing rules for this commitment contract.",
                        "modelRef": "#/components/schemas/payment.pricing.plans.generators.PlanGenerator.out",
                        "customType": "payment.pricing.plans.generators.PlanGenerator.out",
                        "schema": [],
                        "complexType": "oneOf",
                        "complexItems": [
                          {
                            "name": "payment.pricing.plans.generators.CustomPlanGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.plans.generators.CustomPlanGenerator.out",
                            "schema": [
                              {
                                "name": "type",
                                "kind": "optional",
                                "type": "string",
                                "description": "Discriminator field identifying this as a custom pricing plan generator.",
                                "example": "",
                                "default": "custom_pricing_plan"
                              },
                              {
                                "name": "id",
                                "kind": "required",
                                "type": "string",
                                "description": "Unique identifier for this custom pricing plan template.",
                                "example": ""
                              },
                              {
                                "name": "billingPeriod",
                                "kind": "required",
                                "type": "object",
                                "description": "Billing frequency determining how often invoices are generated for this plan.",
                                "modelRef": "#/components/schemas/payment.pricing.BillingPeriod.out",
                                "customType": "payment.pricing.BillingPeriod.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "planLevelFreeTier",
                                "kind": "optional",
                                "type": "number",
                                "description": "Free usage amount available at the plan level before charges apply.",
                                "example": ""
                              },
                              {
                                "name": "invoiceBasedFeeIds",
                                "kind": "optional",
                                "type": "array",
                                "description": "List of fee identifiers for custom invoice-based cost calculations.",
                                "example": "",
                                "itemType": "string",
                                "customType": "string[]",
                                "itemExample": "",
                                "itemDefault": ""
                              },
                              {
                                "name": "planMinimumPayment",
                                "kind": "optional",
                                "type": "number",
                                "description": "Minimum payment amount required for this pricing plan.",
                                "example": ""
                              },
                              {
                                "name": "minimumPaymentGranularity",
                                "kind": "optional",
                                "type": "string",
                                "description": "Granularity for minimum payment calculations, either hourly or entire invoice period.",
                                "modelRef": "#/components/schemas/payment.pricing.price.UsageGranularity.in",
                                "customType": "payment.pricing.price.UsageGranularity.in",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "planName",
                                "kind": "required",
                                "type": "string",
                                "description": "Human-readable plan name for user interface display.",
                                "example": ""
                              },
                              {
                                "name": "description",
                                "kind": "optional",
                                "type": "string",
                                "description": "Detailed description of the plan for user interface display.",
                                "example": ""
                              },
                              {
                                "name": "feeMap",
                                "kind": "optional",
                                "type": "map",
                                "description": "Map of fee identifiers to their corresponding product plan fee configurations.",
                                "example": "",
                                "customType": "map<string, payment.pricing.ProductPlanFee.in>",
                                "schema": []
                              },
                              {
                                "name": "entitlements",
                                "kind": "optional",
                                "type": "array",
                                "description": "List of feature entitlements or API access rights included in this plan.",
                                "modelRef": "#/components/schemas/payment.pricing.Entitlements.Entitlement.in",
                                "customType": "payment.pricing.Entitlements.Entitlement.in[]",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "lockingStatus",
                                "kind": "optional",
                                "type": "string",
                                "description": "Current locking status indicating if the plan can be modified.",
                                "modelRef": "#/components/schemas/common.LockingStatus.in",
                                "customType": "common.LockingStatus.in",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "isDefault",
                                "kind": "optional",
                                "type": "boolean",
                                "description": "Indicates if this is the default plan for new users.",
                                "example": ""
                              },
                              {
                                "name": "successorPlanId",
                                "kind": "optional",
                                "type": "string",
                                "description": "Successor plan identifier for automatic migration when this plan is deprecated.",
                                "example": ""
                              },
                              {
                                "name": "transitionStrategy",
                                "kind": "optional",
                                "type": "string",
                                "description": "Strategy for transitioning to successor plan at deprecation time.",
                                "modelRef": "#/components/schemas/payment.pricing.SuccessorPlanTransitionStrategy.in",
                                "customType": "payment.pricing.SuccessorPlanTransitionStrategy.in",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "prepaidBuyingRules",
                                "kind": "optional",
                                "type": "object",
                                "description": "Rules governing prepaid card purchases for this pricing plan.",
                                "modelRef": "#/components/schemas/payment.pricing.prepaid.PlanPrepaidBuyingRules.out",
                                "customType": "payment.pricing.prepaid.PlanPrepaidBuyingRules.out",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "planCurrency",
                                "kind": "optional",
                                "type": "string",
                                "description": "Custom currency for this plan in ISO 4217 format.",
                                "example": "USD"
                              },
                              {
                                "name": "priceGenerators",
                                "kind": "required",
                                "type": "object",
                                "description": "List of price generators defining the billing logic for this plan.",
                                "modelRef": "#/components/schemas/payment.pricing.price.generators.PriceGenerator.out",
                                "customType": "payment.pricing.price.generators.PriceGenerator.out[]",
                                "schema": [],
                                "complexType": "oneOf",
                                "complexItems": [
                                  {
                                    "name": "payment.pricing.price.generators.CostPlusDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.CostPlusDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.CostPlusNoDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.CostPlusNoDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.FlatRatePriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.FlatRatePriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.FlatRateWithOveragesPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.FlatRateWithOveragesPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.InterchangePlusNoDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.InterchangePlusNoDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.InterchangePlusDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.InterchangePlusDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.SubscriptionWithOveragePriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.SubscriptionWithOveragePriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.TieredSeatBasedGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.TieredSeatBasedGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.TieredSeatBasedDimensionGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.TieredSeatBasedDimensionGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.UltraFrequencyNoDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.UltraFrequencyNoDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.UltraFrequencyDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.UltraFrequencyDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.UltraFrequencySubscriptionWithOveragePriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.UltraFrequencySubscriptionWithOveragePriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.UsageBasedDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.MaxUsageBasedDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.MaxUsageBasedDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.SumUsageBasedDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.SumUsageBasedDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.UsageBasedNoDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedNoDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.MaxUsageBasedNoDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.MaxUsageBasedNoDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.SumUsageBasedNoDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.SumUsageBasedNoDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.UsageBasedVolumePriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedVolumePriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.pricing.price.generators.UsageBasedVolumeDimensionPriceGenerator.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedVolumeDimensionPriceGenerator.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "name": "invoiceBasedFees",
                                "kind": "optional",
                                "type": "object",
                                "description": "List of invoice-based service fees applied to this plan.",
                                "modelRef": "#/components/schemas/payment.pricing.invoice_based_fees.InvoiceBasedFee.out",
                                "customType": "payment.pricing.invoice_based_fees.InvoiceBasedFee.out[]",
                                "schema": [],
                                "complexType": "oneOf",
                                "complexItems": [
                                  {
                                    "name": "payment.pricing.invoice_based_fees.ConstantInvoiceRatioFee.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.pricing.invoice_based_fees.ConstantInvoiceRatioFee.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "name": "realTimePricing",
                                "kind": "optional",
                                "type": "boolean",
                                "description": "Enables real-time pricing workflows such as automatic top-ups for this plan.",
                                "example": ""
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.plans.generators.FlatRatePlanGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.plans.generators.FlatRatePlanGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.plans.generators.PayAndGoPlanGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.plans.generators.PayAndGoPlanGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.plans.generators.UsageBasedPlanGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.plans.generators.UsageBasedPlanGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.plans.generators.SeatBasedPlanGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.plans.generators.SeatBasedPlanGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.plans.generators.SubscriptionPlanGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.plans.generators.SubscriptionPlanGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "name": "commitmentEndingConfig",
                        "kind": "optional",
                        "type": "object",
                        "description": "Configuration specifying actions and conditions when the commitment contract ends or expires.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.CommitmentEndingConfig.out",
                        "customType": "payment.pricing.commitments.CommitmentEndingConfig.out",
                        "schema": [
                          {
                            "name": "commitmentRestartConfig",
                            "kind": "optional",
                            "type": "object",
                            "description": "Configuration for transitioning to successor plan when commitment ends without extension.",
                            "modelRef": "#/components/schemas/payment.pricing.commitments.CommitmentRestartConfig.in",
                            "customType": "payment.pricing.commitments.CommitmentRestartConfig.in",
                            "schema": [
                              {
                                "name": "latestDecisionTimeSeconds",
                                "kind": "optional",
                                "type": "integer<int64>",
                                "description": "Unix timestamp deadline for customer to decide on commitment renewal before automatic action.",
                                "example": 0
                              },
                              {
                                "name": "optOut",
                                "kind": "optional",
                                "type": "boolean",
                                "description": "Whether customer explicitly chooses not to renew commitment requiring no further action.",
                                "example": ""
                              }
                            ]
                          },
                          {
                            "name": "extendPrepaidCardEndTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp extending prepaid card validity beyond commitment end for credits rollover.",
                            "example": 0
                          }
                        ]
                      },
                      {
                        "name": "exitClauses",
                        "kind": "optional",
                        "type": "object",
                        "description": "List of exit clause conditions allowing early termination of the commitment contract.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.ExitClause.out",
                        "customType": "payment.pricing.commitments.exit_clauses.ExitClause.out[]",
                        "schema": [],
                        "complexType": "oneOf",
                        "complexItems": [
                          {
                            "name": "payment.pricing.commitments.exit_clauses.ExitBeforeCommitmentStartWithGracePeriod.in",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.ExitBeforeCommitmentStartWithGracePeriod.in",
                            "schema": [
                              {
                                "name": "type",
                                "kind": "optional",
                                "type": "string",
                                "description": "Fixed type identifier for exit clauses with grace period deadline before contract starts.",
                                "example": "",
                                "default": "termination_grace_period"
                              },
                              {
                                "name": "id",
                                "kind": "optional",
                                "type": "string",
                                "description": "Unique identifier for this specific exit clause within the commitment contract.",
                                "example": ""
                              },
                              {
                                "name": "gracePeriodInDays",
                                "kind": "required",
                                "type": "integer<int32>",
                                "description": "Number of days before contract start time that serves as cancellation deadline, must be non-negative.",
                                "example": 0
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.commitments.exit_clauses.TerminationWithNoticePeriod.in",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.TerminationWithNoticePeriod.in",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.commitments.exit_clauses.TerminationByTimeRange.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.TerminationByTimeRange.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "name": "isProductPlanModifiable",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Flag indicating whether the associated product plan can be modified during the commitment period.",
                        "example": ""
                      }
                    ]
                  },
                  {
                    "name": "payment.pricing.commitments.generators.CustomerInstallmentContractGenerator.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.commitments.generators.CustomerInstallmentContractGenerator.out",
                    "schema": [
                      {
                        "name": "type",
                        "kind": "optional",
                        "type": "string",
                        "description": "Contract generator type identifier for customer installment commitments with credit obligations.",
                        "example": "",
                        "default": "customer_installment"
                      },
                      {
                        "name": "id",
                        "kind": "optional",
                        "type": "string",
                        "description": "Unique identifier for this customer installment contract generator instance, required field.",
                        "example": ""
                      },
                      {
                        "name": "customerId",
                        "kind": "required",
                        "type": "string",
                        "description": "Unique identifier of the customer entering into this installment commitment contract.",
                        "example": ""
                      },
                      {
                        "name": "useTrueUp",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Flag indicating whether to enable true-up compensation for customer violation policy.",
                        "example": ""
                      },
                      {
                        "name": "notifyOnClientViolation",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Flag indicating whether to send notifications when customer violates installment commitment terms.",
                        "example": ""
                      },
                      {
                        "name": "planId",
                        "kind": "required",
                        "type": "string",
                        "description": "Identifier of the product plan associated with this installment commitment contract.",
                        "example": ""
                      },
                      {
                        "name": "label",
                        "kind": "required",
                        "type": "string",
                        "description": "Human-readable label or name for this installment commitment contract for identification purposes.",
                        "example": ""
                      },
                      {
                        "name": "startTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp in seconds used to calculate the time range for the installment commitment period.",
                        "example": 0
                      },
                      {
                        "name": "commitmentEndingConfig",
                        "kind": "optional",
                        "type": "object",
                        "description": "Configuration specifying actions and conditions when the installment commitment contract ends or expires.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.CommitmentEndingConfig.out",
                        "customType": "payment.pricing.commitments.CommitmentEndingConfig.out",
                        "schema": [
                          {
                            "name": "commitmentRestartConfig",
                            "kind": "optional",
                            "type": "object",
                            "description": "Configuration for transitioning to successor plan when commitment ends without extension.",
                            "modelRef": "#/components/schemas/payment.pricing.commitments.CommitmentRestartConfig.in",
                            "customType": "payment.pricing.commitments.CommitmentRestartConfig.in",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "extendPrepaidCardEndTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp extending prepaid card validity beyond commitment end for credits rollover.",
                            "example": 0
                          }
                        ]
                      },
                      {
                        "name": "cycles",
                        "kind": "required",
                        "type": "integer<int32>",
                        "description": "The amount of billing cycles the commitment is going to last.",
                        "example": 0
                      },
                      {
                        "name": "creditInstallmentInputs",
                        "kind": "optional",
                        "type": "array",
                        "description": "List of credit installment plan configurations defining payment schedules and credit obligations.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.generators.CreditInstallmentInput.out",
                        "customType": "payment.pricing.commitments.generators.CreditInstallmentInput.out[]",
                        "schema": [
                          {
                            "name": "installmentPlan",
                            "kind": "optional",
                            "type": "map",
                            "description": "Map of installment payment times in seconds to payment amounts per installment, must contain values.",
                            "example": "",
                            "customType": "map<string, number>",
                            "schema": []
                          },
                          {
                            "name": "billWhenTotalInstallmentPaymentExceeded",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Whether to bill customer when total installment payments exceed the committed amount.",
                            "example": ""
                          },
                          {
                            "name": "totalWorth",
                            "kind": "optional",
                            "type": "number",
                            "description": "Total credit amount to be provided through prepaid cards, must be greater than zero.",
                            "example": ""
                          },
                          {
                            "name": "prepaidConditions",
                            "kind": "optional",
                            "type": "object",
                            "description": "Conditions and restrictions for applying the prepaid credit to customer invoices.",
                            "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidConditions.out",
                            "customType": "payment.billing.prepaid_to_product.PrepaidConditions.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "label",
                            "kind": "optional",
                            "type": "string",
                            "description": "Human-readable label for identifying this credit installment plan, required field.",
                            "example": ""
                          },
                          {
                            "name": "creditCardStartTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp for when the credit card becomes active, must be near current time.",
                            "example": 0
                          },
                          {
                            "name": "creditCardEndTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp for credit card expiration, must be at least 30 days after start time.",
                            "example": 0
                          }
                        ]
                      },
                      {
                        "name": "prepaidCardInputs",
                        "kind": "optional",
                        "type": "array",
                        "description": "List of prepaid card input configurations for additional credit obligations within the commitment.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.generators.PrepaidCardInput.out",
                        "customType": "payment.pricing.commitments.generators.PrepaidCardInput.out[]",
                        "schema": [
                          {
                            "name": "value",
                            "kind": "required",
                            "type": "number",
                            "description": "Amount of prepaid credit in base currency, must be positive value, required field.",
                            "example": ""
                          },
                          {
                            "name": "isReward",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Flag indicating whether this prepaid credit is a free reward or requires customer payment.",
                            "example": ""
                          },
                          {
                            "name": "priority",
                            "kind": "optional",
                            "type": "number",
                            "description": "Customer prepaid card priority for determining usage order when multiple cards exist, defaults to zero.",
                            "example": ""
                          },
                          {
                            "name": "prepaidConditions",
                            "kind": "optional",
                            "type": "object",
                            "description": "Optional conditions and restrictions for applying the prepaid credit to customer invoices and product items.",
                            "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidConditions.out",
                            "customType": "payment.billing.prepaid_to_product.PrepaidConditions.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "label",
                            "kind": "required",
                            "type": "string",
                            "description": "Human-readable label for identifying this prepaid card input within commitment contracts, required field.",
                            "example": ""
                          },
                          {
                            "name": "startTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp when prepaid card becomes active, cannot be in past, mutually exclusive with cycle fields.",
                            "example": 0
                          },
                          {
                            "name": "endTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp when prepaid card expires, must be at least thirty days after start time.",
                            "example": 0
                          },
                          {
                            "name": "startCycle",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Billing cycle number when prepaid card becomes active, mutually exclusive with timestamp fields.",
                            "example": 0
                          },
                          {
                            "name": "endCycle",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Billing cycle number when prepaid card expires, used with start cycle for duration calculation.",
                            "example": 0
                          },
                          {
                            "name": "billOnceCreditIsFinished",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Flag indicating whether to bill customer in current billing period once prepaid credits are exhausted.",
                            "example": ""
                          },
                          {
                            "name": "orderItemId",
                            "kind": "optional",
                            "type": "string",
                            "description": "Optional identifier linking this prepaid card input to a specific order item for tracking purposes.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "promotionsByCycle",
                        "kind": "optional",
                        "type": "map",
                        "description": "Map of billing cycle numbers to promotion IDs for applying discounts at specific commitment periods.",
                        "example": "",
                        "customType": "map<string, string[]>",
                        "schema": []
                      },
                      {
                        "name": "committedPriceConfiguration",
                        "kind": "optional",
                        "type": "object",
                        "description": "Configuration for minimum total price obligations ensuring committed payment levels are met.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.generators.CommittedPriceObligationConfiguration.in",
                        "customType": "payment.pricing.commitments.generators.CommittedPriceObligationConfiguration.in",
                        "schema": [
                          {
                            "name": "totalPriceCommitted",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Minimum total price amount in cents that must be committed across all invoices, must be greater than zero.",
                            "example": 0
                          },
                          {
                            "name": "usePriceAfterDiscounts",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Whether to use invoice price after discounts when calculating commitment obligation, defaults to true.",
                            "example": ""
                          },
                          {
                            "name": "subtractCommitmentPrepaid",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Whether to subtract commitment's prepaid amounts from price when evaluating obligation, defaults to true.",
                            "example": ""
                          },
                          {
                            "name": "cycleObligation",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Whether the minimum price obligation applies per billing cycle rather than cumulatively, defaults to false.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "exitClauses",
                        "kind": "optional",
                        "type": "object",
                        "description": "List of exit clause conditions allowing early termination of the installment commitment contract.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.ExitClause.out",
                        "customType": "payment.pricing.commitments.exit_clauses.ExitClause.out[]",
                        "schema": [],
                        "complexType": "oneOf",
                        "complexItems": [
                          {
                            "name": "payment.pricing.commitments.exit_clauses.ExitBeforeCommitmentStartWithGracePeriod.in",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.ExitBeforeCommitmentStartWithGracePeriod.in",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.commitments.exit_clauses.TerminationWithNoticePeriod.in",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.TerminationWithNoticePeriod.in",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.commitments.exit_clauses.TerminationByTimeRange.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.TerminationByTimeRange.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "name": "isProductPlanModifiable",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Flag indicating whether the associated product plan can be modified during the installment commitment period.",
                        "example": ""
                      }
                    ]
                  },
                  {
                    "name": "payment.pricing.commitments.generators.InstallmentByUsageContractGenerator.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.commitments.generators.InstallmentByUsageContractGenerator.out",
                    "schema": [
                      {
                        "name": "type",
                        "kind": "optional",
                        "type": "string",
                        "description": "Contract generator type identifier for installment commitments based on usage-driven payment schedules.",
                        "example": "",
                        "default": "installments_by_usage_commitment"
                      },
                      {
                        "name": "customerId",
                        "kind": "required",
                        "type": "string",
                        "description": "Customer id associated with this commitment.",
                        "example": ""
                      },
                      {
                        "name": "notifyOnClientViolation",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Whether to notify when a customer violation occurs.",
                        "example": ""
                      },
                      {
                        "name": "planId",
                        "kind": "required",
                        "type": "string",
                        "description": "Product plan id associated with this commitment.",
                        "example": ""
                      },
                      {
                        "name": "label",
                        "kind": "required",
                        "type": "string",
                        "description": "Human readable label for the commitment entered by the user.",
                        "example": ""
                      },
                      {
                        "name": "startTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp in seconds used to calculate the time range for the commitment.",
                        "example": 0
                      },
                      {
                        "name": "cycles",
                        "kind": "required",
                        "type": "integer<int32>",
                        "description": "The amount of billing cycles the commitment is going to last.",
                        "example": 0
                      },
                      {
                        "name": "productItemIdToUsagePerInstallmentPeriod",
                        "kind": "optional",
                        "type": "map",
                        "description": "Map of installment periods to product item IDs and their usage commitments, required field.",
                        "example": "",
                        "customType": "map<string, object>",
                        "schema": []
                      },
                      {
                        "name": "trueup",
                        "kind": "optional",
                        "type": "object",
                        "description": "Optional minimum payment commitment configuration for billing reconciliation when usage falls short.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.generators.TrueUpInput.out",
                        "customType": "payment.pricing.commitments.generators.TrueUpInput.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "billOnceCreditIsFinished",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Whether to bill the customer in the current billing period once credits are exhausted.",
                        "example": ""
                      },
                      {
                        "name": "promotions",
                        "kind": "optional",
                        "type": "array",
                        "description": "List of promotions applied to this commitment.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.generators.PromotionInfo.out",
                        "customType": "payment.pricing.commitments.generators.PromotionInfo.out[]",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "reward",
                        "kind": "optional",
                        "type": "object",
                        "description": "Free credits given as part of this commitment.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.generators.PrepaidCardInput.out",
                        "customType": "payment.pricing.commitments.generators.PrepaidCardInput.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "commitmentEndingConfig",
                        "kind": "optional",
                        "type": "object",
                        "description": "Configuration for credit rollover.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.CommitmentEndingConfig.out",
                        "customType": "payment.pricing.commitments.CommitmentEndingConfig.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "exitClauses",
                        "kind": "optional",
                        "type": "object",
                        "description": "Clauses that govern when this contract can be exited.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.ExitClause.out",
                        "customType": "payment.pricing.commitments.exit_clauses.ExitClause.out[]",
                        "schema": [],
                        "complexType": "oneOf",
                        "complexItems": [
                          {
                            "name": "payment.pricing.commitments.exit_clauses.ExitBeforeCommitmentStartWithGracePeriod.in",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.ExitBeforeCommitmentStartWithGracePeriod.in",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.commitments.exit_clauses.TerminationWithNoticePeriod.in",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.TerminationWithNoticePeriod.in",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.commitments.exit_clauses.TerminationByTimeRange.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.TerminationByTimeRange.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "name": "isProductPlanModifiable",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Flag indicating whether the associated product plan can be modified during the commitment period.",
                        "example": ""
                      }
                    ]
                  },
                  {
                    "name": "payment.pricing.commitments.generators.InstallmentContractGenerator.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.commitments.generators.InstallmentContractGenerator.out",
                    "schema": [
                      {
                        "name": "",
                        "description": "",
                        "customType": "Max depth limit reached"
                      }
                    ]
                  },
                  {
                    "name": "payment.pricing.commitments.generators.MinCyclePriceToFixPlanAndDiscounts.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.commitments.generators.MinCyclePriceToFixPlanAndDiscounts.out",
                    "schema": [
                      {
                        "name": "",
                        "description": "",
                        "customType": "Max depth limit reached"
                      }
                    ]
                  },
                  {
                    "name": "payment.pricing.commitments.generators.PerCyclePrepaidContractGenerator.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.commitments.generators.PerCyclePrepaidContractGenerator.out",
                    "schema": [
                      {
                        "name": "",
                        "description": "",
                        "customType": "Max depth limit reached"
                      }
                    ]
                  },
                  {
                    "name": "payment.pricing.commitments.generators.PlanOverrideContractGenerator.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.commitments.generators.PlanOverrideContractGenerator.out",
                    "schema": [
                      {
                        "name": "",
                        "description": "",
                        "customType": "Max depth limit reached"
                      }
                    ]
                  },
                  {
                    "name": "payment.pricing.commitments.generators.MinTotalPriceToFixPlanAndDiscounts.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.commitments.generators.MinTotalPriceToFixPlanAndDiscounts.out",
                    "schema": [
                      {
                        "name": "",
                        "description": "",
                        "customType": "Max depth limit reached"
                      }
                    ]
                  },
                  {
                    "name": "payment.pricing.commitments.generators.SubscriptionContractGenerator.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.commitments.generators.SubscriptionContractGenerator.out",
                    "schema": [
                      {
                        "name": "",
                        "description": "",
                        "customType": "Max depth limit reached"
                      }
                    ]
                  },
                  {
                    "name": "payment.pricing.commitments.generators.SubscriptionUsageCommitmentContractGenerator.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.commitments.generators.SubscriptionUsageCommitmentContractGenerator.out",
                    "schema": [
                      {
                        "name": "",
                        "description": "",
                        "customType": "Max depth limit reached"
                      }
                    ]
                  },
                  {
                    "name": "payment.pricing.commitments.generators.CustomerArrearsByUsageContractGenerator.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.commitments.generators.CustomerArrearsByUsageContractGenerator.out",
                    "schema": [
                      {
                        "name": "",
                        "description": "",
                        "customType": "Max depth limit reached"
                      }
                    ]
                  },
                  {
                    "name": "payment.pricing.commitments.generators.UpfrontByUsageContractGenerator.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.commitments.generators.UpfrontByUsageContractGenerator.out",
                    "schema": [
                      {
                        "name": "",
                        "description": "",
                        "customType": "Max depth limit reached"
                      }
                    ]
                  },
                  {
                    "name": "payment.pricing.commitments.generators.CustomerUpfrontContractGenerator.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.commitments.generators.CustomerUpfrontContractGenerator.out",
                    "schema": [
                      {
                        "name": "",
                        "description": "",
                        "customType": "Max depth limit reached"
                      }
                    ]
                  }
                ]
              },
              {
                "name": "contract",
                "kind": "optional",
                "type": "object",
                "description": "Core commitment contract details including obligations, terms, and payment schedules.",
                "modelRef": "#/components/schemas/payment.pricing.commitments.CommitmentContract.out",
                "customType": "payment.pricing.commitments.CommitmentContract.out",
                "schema": [
                  {
                    "name": "id",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique identifier for the commitment contract between customer and account.",
                    "example": ""
                  },
                  {
                    "name": "type",
                    "kind": "optional",
                    "type": "string",
                    "description": "Classification type of the commitment contract defining its structure and terms.",
                    "example": ""
                  },
                  {
                    "name": "accountId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Identifier of the account providing pricing commitments and benefits to customer.",
                    "example": ""
                  },
                  {
                    "name": "customerId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Identifier of the customer accepting usage or spending guarantees under contract.",
                    "example": ""
                  },
                  {
                    "name": "customerObligations",
                    "kind": "optional",
                    "type": "object",
                    "description": "List of commitments and guarantees the customer must fulfill under this contract.",
                    "modelRef": "#/components/schemas/payment.pricing.commitments.customer.CustomerObligation.out",
                    "customType": "payment.pricing.commitments.customer.CustomerObligation.out[]",
                    "schema": [],
                    "complexType": "oneOf",
                    "complexItems": [
                      {
                        "name": "payment.pricing.commitments.customer.PrepaidPaymentObligation.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.customer.PrepaidPaymentObligation.out",
                        "schema": [
                          {
                            "name": "type",
                            "kind": "optional",
                            "type": "string",
                            "description": "Fixed type identifier for legacy prepaid payment obligations verifying prepaid card settlement status.",
                            "example": "",
                            "default": "PrepaidPaymentObligation"
                          },
                          {
                            "name": "obligationTimeRange",
                            "kind": "optional",
                            "type": "object",
                            "description": "Time period during which the prepaid card payment settlement status is checked and verified.",
                            "modelRef": "#/components/schemas/payment.common.TimeRange.in",
                            "customType": "payment.common.TimeRange.in",
                            "schema": [
                              {
                                "name": "startTimeInSeconds",
                                "kind": "optional",
                                "type": "integer<int64>",
                                "description": "Unix timestamp marking the beginning of the time range in seconds",
                                "example": 0
                              },
                              {
                                "name": "endTimeInSeconds",
                                "kind": "optional",
                                "type": "integer<int64>",
                                "description": "Unix timestamp marking the end of time range or null for open-ended ranges",
                                "example": 0
                              }
                            ]
                          },
                          {
                            "name": "id",
                            "kind": "optional",
                            "type": "string",
                            "description": "Unique identifier for this specific prepaid payment obligation within the commitment contract.",
                            "example": ""
                          },
                          {
                            "name": "label",
                            "kind": "optional",
                            "type": "string",
                            "description": "Human-readable label or description for this prepaid payment settlement obligation instance.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.commitments.customer.CustomerInstallmentObligation.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.customer.CustomerInstallmentObligation.out",
                        "schema": [
                          {
                            "name": "type",
                            "kind": "optional",
                            "type": "string",
                            "description": "Fixed type identifier for customer installment obligations requiring scheduled payments over time.",
                            "example": "",
                            "default": "customer_installment_obligation"
                          },
                          {
                            "name": "id",
                            "kind": "optional",
                            "type": "string",
                            "description": "Unique identifier for this specific customer installment obligation within the commitment.",
                            "example": ""
                          },
                          {
                            "name": "installmentSchedule",
                            "kind": "optional",
                            "type": "map",
                            "description": "Map of installment timestamps to payment amounts defining when and how much customer must pay.",
                            "example": "",
                            "customType": "map<string, number>",
                            "schema": []
                          },
                          {
                            "name": "billWhenTotalInstallmentPaymentExceeded",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Whether to bill customer for full amount when invoiced usage exceeds total installment plan.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.commitments.customer.CustomerSubscriptionObligation.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.customer.CustomerSubscriptionObligation.out",
                        "schema": [
                          {
                            "name": "type",
                            "kind": "optional",
                            "type": "string",
                            "description": "Fixed type identifier for customer subscription obligations requiring recurring subscription payments.",
                            "example": "",
                            "default": "customer_subscription_obligation"
                          },
                          {
                            "name": "contractId",
                            "kind": "optional",
                            "type": "string",
                            "description": "Unique identifier for the commitment contract associated with this subscription obligation.",
                            "example": ""
                          },
                          {
                            "name": "obligationTimeRange",
                            "kind": "optional",
                            "type": "object",
                            "description": "Time period during which the customer subscription obligation is active and applicable.",
                            "modelRef": "#/components/schemas/payment.common.TimeRange.in",
                            "customType": "payment.common.TimeRange.in",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "cycles",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Number of billing cycles the customer must maintain subscription payments under commitment.",
                            "example": 0
                          },
                          {
                            "name": "cycleSubscriptionFee",
                            "kind": "optional",
                            "type": "number",
                            "description": "Monetary amount charged per billing cycle for maintaining the subscription commitment obligation.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.commitments.customer.MinItemInvoicedUsageFixedFine.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.customer.MinItemInvoicedUsageFixedFine.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.commitments.customer.MinRunningAvgTotalPrice.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.customer.MinRunningAvgTotalPrice.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.commitments.customer.MinTotalPrice.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.customer.MinTotalPrice.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      }
                    ]
                  },
                  {
                    "name": "accountObligations",
                    "kind": "optional",
                    "type": "object",
                    "description": "List of pricing benefits and discounts the account provides to customer.",
                    "modelRef": "#/components/schemas/payment.pricing.commitments.account.AccountObligation.out",
                    "customType": "payment.pricing.commitments.account.AccountObligation.out[]",
                    "schema": [],
                    "complexType": "oneOf",
                    "complexItems": [
                      {
                        "name": "payment.pricing.commitments.account.DiscountRampsObligation.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.account.DiscountRampsObligation.out",
                        "schema": [
                          {
                            "name": "id",
                            "kind": "optional",
                            "type": "string",
                            "description": "Unique identifier for this specific discount ramps obligation within the account.",
                            "example": ""
                          },
                          {
                            "name": "type",
                            "kind": "optional",
                            "type": "string",
                            "description": "Fixed type identifier for discount ramps obligations creating timestamp-based discount schedules.",
                            "example": "",
                            "default": "DiscountRampsObligation"
                          },
                          {
                            "name": "obligationTimeRange",
                            "kind": "optional",
                            "type": "object",
                            "description": "Time period during which the discount ramps schedule is active and applicable.",
                            "modelRef": "#/components/schemas/payment.common.TimeRange.in",
                            "customType": "payment.common.TimeRange.in",
                            "schema": [
                              {
                                "name": "startTimeInSeconds",
                                "kind": "optional",
                                "type": "integer<int64>",
                                "description": "Unix timestamp marking the beginning of the time range in seconds",
                                "example": 0
                              },
                              {
                                "name": "endTimeInSeconds",
                                "kind": "optional",
                                "type": "integer<int64>",
                                "description": "Unix timestamp marking the end of time range or null for open-ended ranges",
                                "example": 0
                              }
                            ]
                          },
                          {
                            "name": "label",
                            "kind": "optional",
                            "type": "string",
                            "description": "Human-readable name or description for this discount ramps commitment obligation.",
                            "example": ""
                          },
                          {
                            "name": "promotionRamps",
                            "kind": "optional",
                            "type": "map",
                            "description": "Map of timestamps to promotion sets defining when specific discounts become available.",
                            "example": "",
                            "customType": "map<string, string[]>",
                            "schema": []
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.commitments.account.PrepaidOrderingObligation.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.account.PrepaidOrderingObligation.out",
                        "schema": [
                          {
                            "name": "type",
                            "kind": "optional",
                            "type": "string",
                            "description": "Fixed type identifier for prepaid ordering obligations creating pre-payment prepaid cards for commitments.",
                            "example": "",
                            "default": "com.amberflo.metering.payment.model.pricing.commitments.account.PrepaidOrderingObligation"
                          },
                          {
                            "name": "id",
                            "kind": "optional",
                            "type": "string",
                            "description": "Unique identifier for this specific prepaid ordering obligation within the account.",
                            "example": ""
                          },
                          {
                            "name": "label",
                            "kind": "optional",
                            "type": "string",
                            "description": "Human-readable name or description for this prepaid ordering commitment obligation.",
                            "example": ""
                          },
                          {
                            "name": "obligationTimeRange",
                            "kind": "optional",
                            "type": "object",
                            "description": "Time period during which the prepaid ordering obligation is active and applicable.",
                            "modelRef": "#/components/schemas/payment.common.TimeRange.in",
                            "customType": "payment.common.TimeRange.in",
                            "schema": [
                              {
                                "name": "startTimeInSeconds",
                                "kind": "optional",
                                "type": "integer<int64>",
                                "description": "Unix timestamp marking the beginning of the time range in seconds",
                                "example": 0
                              },
                              {
                                "name": "endTimeInSeconds",
                                "kind": "optional",
                                "type": "integer<int64>",
                                "description": "Unix timestamp marking the end of time range or null for open-ended ranges",
                                "example": 0
                              }
                            ]
                          },
                          {
                            "name": "amountInBaseCurrency",
                            "kind": "optional",
                            "type": "number",
                            "description": "Monetary amount of the prepaid card in the account's base currency for commitment.",
                            "example": ""
                          },
                          {
                            "name": "isReward",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Whether this prepaid ordering represents a reward rather than a payment obligation.",
                            "example": ""
                          },
                          {
                            "name": "currencyInfo",
                            "kind": "optional",
                            "type": "object",
                            "description": "Currency information for the prepaid card amount including conversion rates and formatting.",
                            "modelRef": "#/components/schemas/payment.billing.PaymentCurrencyInfo.out",
                            "customType": "payment.billing.PaymentCurrencyInfo.out",
                            "schema": [
                              {
                                "name": "basePlanCurrency",
                                "kind": "optional",
                                "type": "string",
                                "description": "Base account currency code in ISO 4217 format used for pricing calculations and billing operations",
                                "example": "USD"
                              },
                              {
                                "name": "paymentCurrency",
                                "kind": "optional",
                                "type": "string",
                                "description": "Customer payment currency code in ISO 4217 format used for actual billing and payment processing",
                                "example": "USD"
                              },
                              {
                                "name": "exchangeRate",
                                "kind": "optional",
                                "type": "number",
                                "description": "Exchange rate from base plan currency to payment currency used for currency conversion calculations",
                                "example": ""
                              }
                            ]
                          },
                          {
                            "name": "prepaidConditions",
                            "kind": "optional",
                            "type": "object",
                            "description": "Usage conditions and restrictions governing how the prepaid credit can be applied.",
                            "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidConditions.out",
                            "customType": "payment.billing.prepaid_to_product.PrepaidConditions.out",
                            "schema": [
                              {
                                "name": "prepaidConditionsList",
                                "kind": "optional",
                                "type": "object",
                                "description": "Active set of prepaid conditions determining when credits apply to customer charges",
                                "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidCondition.out",
                                "customType": "payment.billing.prepaid_to_product.PrepaidCondition.out[]",
                                "schema": [],
                                "complexType": "oneOf",
                                "complexItems": [
                                  {
                                    "name": "payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                                    "description": "",
                                    "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "name": "prepaidConditionsHistory",
                                "kind": "optional",
                                "type": "map",
                                "description": "Historical timeline mapping timestamps to condition sets for audit and tracking purposes",
                                "example": "",
                                "customType": "map<string, payment.billing.prepaid_to_product.PrepaidCondition.out[]>",
                                "schema": []
                              }
                            ]
                          },
                          {
                            "name": "customPriority",
                            "kind": "optional",
                            "type": "number",
                            "description": "Custom numeric priority value determining prepaid card application order during billing calculations.",
                            "example": ""
                          },
                          {
                            "name": "prepaidPriority",
                            "kind": "optional",
                            "type": "string",
                            "description": "Standard priority configuration for prepaid card usage in billing process hierarchy.",
                            "modelRef": "#/components/schemas/payment.pricing.prepaid.PrepaidPriority.in",
                            "customType": "payment.pricing.prepaid.PrepaidPriority.in",
                            "schema": []
                          },
                          {
                            "name": "orderId",
                            "kind": "optional",
                            "type": "string",
                            "description": "Identifier of the associated order that triggered this prepaid ordering obligation.",
                            "example": ""
                          },
                          {
                            "name": "orderItemId",
                            "kind": "optional",
                            "type": "string",
                            "description": "Identifier of the specific order item within the order for this prepaid obligation.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.commitments.account.CreditObligation.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.account.CreditObligation.out",
                        "schema": [
                          {
                            "name": "type",
                            "kind": "optional",
                            "type": "string",
                            "description": "Fixed type identifier for credit obligation account commitments providing prepaid credits.",
                            "example": "",
                            "default": "credit_obligation"
                          },
                          {
                            "name": "accountId",
                            "kind": "optional",
                            "type": "string",
                            "description": "Identifier of the account providing the credit obligation to customer.",
                            "example": ""
                          },
                          {
                            "name": "id",
                            "kind": "optional",
                            "type": "string",
                            "description": "Unique identifier for this specific credit obligation within the account.",
                            "example": ""
                          },
                          {
                            "name": "amountCredited",
                            "kind": "optional",
                            "type": "number",
                            "description": "Monetary amount of prepaid credit provided to customer as commitment benefit.",
                            "example": ""
                          },
                          {
                            "name": "cardId",
                            "kind": "optional",
                            "type": "string",
                            "description": "Identifier of the prepaid card created to deliver credit to customer.",
                            "example": ""
                          },
                          {
                            "name": "label",
                            "kind": "optional",
                            "type": "string",
                            "description": "Human-readable name or description for this credit obligation commitment.",
                            "example": ""
                          },
                          {
                            "name": "obligationTimeRange",
                            "kind": "optional",
                            "type": "object",
                            "description": "Time period during which this credit obligation is active and applicable.",
                            "modelRef": "#/components/schemas/payment.common.TimeRange.in",
                            "customType": "payment.common.TimeRange.in",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "prepaidConditions",
                            "kind": "optional",
                            "type": "object",
                            "description": "Usage conditions and restrictions governing how the prepaid credit can be applied.",
                            "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidConditions.out",
                            "customType": "payment.billing.prepaid_to_product.PrepaidConditions.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.commitments.account.DiscountLock.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.account.DiscountLock.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.commitments.account.ItemPriceMachineLock.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.account.ItemPriceMachineLock.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.commitments.account.OrderObligation.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.account.OrderObligation.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.commitments.account.PlanLock.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.account.PlanLock.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.commitments.account.PlanOverrideObligation.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.account.PlanOverrideObligation.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      }
                    ]
                  },
                  {
                    "name": "commitmentViolationPolicy",
                    "kind": "optional",
                    "type": "object",
                    "description": "Policy defining penalties and actions when contract obligations are violated.",
                    "modelRef": "#/components/schemas/payment.pricing.commitments.CommitmentViolationPolicy.out",
                    "customType": "payment.pricing.commitments.CommitmentViolationPolicy.out",
                    "schema": [
                      {
                        "name": "notifyPerCustomerViolations",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Whether to send notifications when customer fails to meet commitment obligations.",
                        "example": ""
                      },
                      {
                        "name": "notifyPerAccountViolations",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Whether to send notifications when account fails to provide committed benefits.",
                        "example": ""
                      },
                      {
                        "name": "compensateOnCustomerViolation",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Whether to provide compensation when customer violates their commitment terms.",
                        "example": ""
                      },
                      {
                        "name": "compensateOnAccountViolation",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Whether to provide compensation when account violates their obligation commitments.",
                        "example": ""
                      }
                    ]
                  },
                  {
                    "name": "timeRange",
                    "kind": "optional",
                    "type": "object",
                    "description": "Time period during which the commitment contract terms are active.",
                    "modelRef": "#/components/schemas/payment.common.TimeRange.in",
                    "customType": "payment.common.TimeRange.in",
                    "schema": [
                      {
                        "name": "startTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp marking the beginning of the time range in seconds",
                        "example": 0
                      },
                      {
                        "name": "endTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp marking the end of time range or null for open-ended ranges",
                        "example": 0
                      }
                    ]
                  },
                  {
                    "name": "productId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Identifier of the product this commitment contract applies to and governs.",
                    "example": ""
                  },
                  {
                    "name": "commitmentEndingConfig",
                    "kind": "optional",
                    "type": "object",
                    "description": "Configuration defining how the commitment contract concludes and transitions afterward.",
                    "modelRef": "#/components/schemas/payment.pricing.commitments.CommitmentEndingConfig.out",
                    "customType": "payment.pricing.commitments.CommitmentEndingConfig.out",
                    "schema": [
                      {
                        "name": "commitmentRestartConfig",
                        "kind": "optional",
                        "type": "object",
                        "description": "Configuration for transitioning to successor plan when commitment ends without extension.",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.CommitmentRestartConfig.in",
                        "customType": "payment.pricing.commitments.CommitmentRestartConfig.in",
                        "schema": [
                          {
                            "name": "latestDecisionTimeSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp deadline for customer to decide on commitment renewal before automatic action.",
                            "example": 0
                          },
                          {
                            "name": "optOut",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Whether customer explicitly chooses not to renew commitment requiring no further action.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "extendPrepaidCardEndTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp extending prepaid card validity beyond commitment end for credits rollover.",
                        "example": 0
                      }
                    ]
                  },
                  {
                    "name": "exitClauses",
                    "kind": "optional",
                    "type": "object",
                    "description": "List of conditions and procedures allowing early termination of commitment contract.",
                    "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.ExitClause.out",
                    "customType": "payment.pricing.commitments.exit_clauses.ExitClause.out[]",
                    "schema": [],
                    "complexType": "oneOf",
                    "complexItems": [
                      {
                        "name": "payment.pricing.commitments.exit_clauses.ExitBeforeCommitmentStartWithGracePeriod.in",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.ExitBeforeCommitmentStartWithGracePeriod.in",
                        "schema": [
                          {
                            "name": "type",
                            "kind": "optional",
                            "type": "string",
                            "description": "Fixed type identifier for exit clauses with grace period deadline before contract starts.",
                            "example": "",
                            "default": "termination_grace_period"
                          },
                          {
                            "name": "id",
                            "kind": "optional",
                            "type": "string",
                            "description": "Unique identifier for this specific exit clause within the commitment contract.",
                            "example": ""
                          },
                          {
                            "name": "gracePeriodInDays",
                            "kind": "required",
                            "type": "integer<int32>",
                            "description": "Number of days before contract start time that serves as cancellation deadline, must be non-negative.",
                            "example": 0
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.commitments.exit_clauses.TerminationWithNoticePeriod.in",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.TerminationWithNoticePeriod.in",
                        "schema": [
                          {
                            "name": "type",
                            "kind": "optional",
                            "type": "string",
                            "description": "Fixed type identifier for termination of convenience exit clauses requiring advance notice period.",
                            "example": "",
                            "default": "termination_notice_period"
                          },
                          {
                            "name": "id",
                            "kind": "optional",
                            "type": "string",
                            "description": "Unique identifier for this specific exit clause within the commitment contract.",
                            "example": ""
                          },
                          {
                            "name": "noticePeriodInDays",
                            "kind": "required",
                            "type": "integer<int32>",
                            "description": "Number of days advance notice required before contract termination, must be positive and shorter than commitment duration.",
                            "example": 0
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.commitments.exit_clauses.TerminationByTimeRange.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.commitments.exit_clauses.TerminationByTimeRange.out",
                        "schema": [
                          {
                            "name": "type",
                            "kind": "optional",
                            "type": "string",
                            "description": "Fixed type identifier for exit clauses that allow termination within a specified time window.",
                            "example": "",
                            "default": "termination_time_range"
                          },
                          {
                            "name": "id",
                            "kind": "optional",
                            "type": "string",
                            "description": "Unique identifier for this specific exit clause within the commitment contract.",
                            "example": ""
                          },
                          {
                            "name": "terminationRange",
                            "kind": "required",
                            "type": "object",
                            "description": "Time window during which the commitment contract can be terminated or cancelled, must fall within commitment period.",
                            "modelRef": "#/components/schemas/payment.common.TimeRange.in",
                            "customType": "payment.common.TimeRange.in",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          }
                        ]
                      }
                    ]
                  }
                ]
              },
              {
                "name": "firstCustomerPlan",
                "kind": "optional",
                "type": "object",
                "description": "Initial pricing plan assigned to the customer when the commitment contract was created.",
                "modelRef": "#/components/schemas/payment.pricing.customer.CustomerProductPlan.in",
                "customType": "payment.pricing.customer.CustomerProductPlan.in",
                "schema": [
                  {
                    "name": "productId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Identifier of the product for which this plan assignment applies.",
                    "example": ""
                  },
                  {
                    "name": "productPlanId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique identifier of the specific pricing plan assigned to the customer.",
                    "example": ""
                  },
                  {
                    "name": "customerId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique identifier of the customer who has this product plan assignment.",
                    "example": ""
                  },
                  {
                    "name": "startTimeInSeconds",
                    "kind": "optional",
                    "type": "integer<int64>",
                    "description": "Unix timestamp when this product plan assignment becomes active, must be at least one hour before end time.",
                    "example": 0
                  },
                  {
                    "name": "endTimeInSeconds",
                    "kind": "optional",
                    "type": "integer<int64>",
                    "description": "Optional unix timestamp when this product plan assignment expires, allowing plan transitions over time.",
                    "example": 0
                  },
                  {
                    "name": "relationId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique base64-encoded identifier for customer-product plan relationship, computed automatically for external system integration.",
                    "example": ""
                  },
                  {
                    "name": "createdTimeInSeconds",
                    "kind": "optional",
                    "type": "integer<int64>",
                    "description": "Unix timestamp when this product plan assignment was originally created, automatically set during creation.",
                    "example": 0
                  }
                ]
              },
              {
                "name": "firstCustomerAppliedPromotions",
                "kind": "optional",
                "type": "array",
                "description": "Promotions that were active and automatically applied when the commitment contract was established.",
                "modelRef": "#/components/schemas/payment.pricing.customer.CustomerAppliedPromotion.out",
                "customType": "payment.pricing.customer.CustomerAppliedPromotion.out[]",
                "schema": [
                  {
                    "name": "id",
                    "kind": "optional",
                    "type": "string",
                    "description": "The id of the specific instance in time where a promotion (with promotion Id) was applied to a customer (same promotion might be applied multiple times for the same customer).",
                    "example": ""
                  },
                  {
                    "name": "productId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique product id.",
                    "example": ""
                  },
                  {
                    "name": "customerId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique customer id.",
                    "example": ""
                  },
                  {
                    "name": "promotionId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique promotion id to define an applied promotion.",
                    "example": ""
                  },
                  {
                    "name": "appliedTimeInSeconds",
                    "kind": "optional",
                    "type": "integer<int64>",
                    "description": "Deprecated. When a promotion is in use in a customer pricing plan.",
                    "example": 0
                  },
                  {
                    "name": "addedTimeInSeconds",
                    "kind": "optional",
                    "type": "integer<int64>",
                    "description": "When a promotion has been added to a pricing plan.",
                    "example": 0
                  },
                  {
                    "name": "removedTimeInSeconds",
                    "kind": "optional",
                    "type": "integer<int64>",
                    "description": "When a promotion has been removed from a customer pricing plan.",
                    "example": 0
                  },
                  {
                    "name": "relationId",
                    "kind": "optional",
                    "type": "string",
                    "description": "The unique ID of the relationship between the customer and promotion.",
                    "example": ""
                  },
                  {
                    "name": "appliedTimeRange",
                    "kind": "optional",
                    "type": "object",
                    "description": "When something is applied and removed with hourly granularity.",
                    "modelRef": "#/components/schemas/payment.common.TimeRange.in",
                    "customType": "payment.common.TimeRange.in",
                    "schema": [
                      {
                        "name": "startTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp marking the beginning of the time range in seconds",
                        "example": 0
                      },
                      {
                        "name": "endTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp marking the end of time range or null for open-ended ranges",
                        "example": 0
                      }
                    ]
                  },
                  {
                    "name": "priority",
                    "kind": "optional",
                    "type": "number",
                    "description": "How we rank promotions of the same type against each other.",
                    "example": ""
                  },
                  {
                    "name": "removalContext",
                    "kind": "optional",
                    "type": "map",
                    "description": "Identifying metadata around who and why a promotion was removed.",
                    "example": "",
                    "customType": "map<string, string>",
                    "schema": []
                  },
                  {
                    "name": "commitmentId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Optional field, populated by internal processes.",
                    "example": ""
                  },
                  {
                    "name": "entityProductInvoices",
                    "kind": "optional",
                    "type": "array",
                    "description": "List of invoices that this customer applied promotion was used on.",
                    "modelRef": "#/components/schemas/payment.billing.detailed.EntityProductInvoice.in",
                    "customType": "payment.billing.detailed.EntityProductInvoice.in[]",
                    "schema": [
                      {
                        "name": "invoiceUri",
                        "kind": "optional",
                        "type": "string",
                        "description": "URI string identifier referencing the specific product invoice associated with this entity payment.",
                        "example": ""
                      },
                      {
                        "name": "createdTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp indicating when this entity payment record was created in the system.",
                        "example": 0
                      },
                      {
                        "name": "amount",
                        "kind": "optional",
                        "type": "number",
                        "description": "Monetary amount used to pay for the product invoice by this entity type.",
                        "example": ""
                      },
                      {
                        "name": "invoiceAmount",
                        "kind": "optional",
                        "type": "number",
                        "description": "Total invoice amount value for reference tracking in entity payment processing systems.",
                        "example": ""
                      }
                    ]
                  },
                  {
                    "name": "amountLeftInCycle",
                    "kind": "optional",
                    "type": "number",
                    "description": "Amount of promotion left in cycle.",
                    "example": ""
                  },
                  {
                    "name": "totalAmountLeft",
                    "kind": "optional",
                    "type": "number",
                    "description": "Amount of promotion left in total.",
                    "example": ""
                  }
                ]
              },
              {
                "name": "firstCustomerPrepaidCards",
                "kind": "optional",
                "type": "object",
                "description": "Prepaid credit cards that were assigned to the customer at commitment contract creation time.",
                "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidCard.out",
                "customType": "payment.billing.prepaid_to_product.PrepaidCard.out[]",
                "schema": [],
                "complexType": "oneOf",
                "complexItems": [
                  {
                    "name": "payment.billing.prepaid_to_product.PrepaidCardByPrice.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidCardByPrice.out",
                    "schema": [
                      {
                        "name": "prepaidUri",
                        "kind": "optional",
                        "type": "string",
                        "description": "Unique identifier for the prepaid card within billing system.",
                        "example": ""
                      },
                      {
                        "name": "paymentStatus",
                        "kind": "optional",
                        "type": "string",
                        "description": "Payment processing status indicating current stage from pre-payment through settlement or failure",
                        "modelRef": "#/components/schemas/payment.payment.PaymentStatus.in",
                        "customType": "payment.payment.PaymentStatus.in",
                        "schema": []
                      },
                      {
                        "name": "price",
                        "kind": "optional",
                        "type": "number",
                        "description": "Purchase price paid for the prepaid card in base currency.",
                        "example": ""
                      },
                      {
                        "name": "worth",
                        "kind": "optional",
                        "type": "number",
                        "description": "Credit value provided by the prepaid card for billing application.",
                        "example": ""
                      },
                      {
                        "name": "sourceUri",
                        "kind": "optional",
                        "type": "string",
                        "description": "URI of entity that ordered the prepaid card payment.",
                        "example": ""
                      },
                      {
                        "name": "paymentSystemName",
                        "kind": "optional",
                        "type": "string",
                        "description": "Name of external payment system processing the prepaid transaction.",
                        "example": ""
                      },
                      {
                        "name": "paymentId",
                        "kind": "optional",
                        "type": "string",
                        "description": "External payment system identifier for the prepaid transaction.",
                        "example": ""
                      },
                      {
                        "name": "startTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp when prepaid card becomes active for billing application.",
                        "example": 0
                      },
                      {
                        "name": "expirationTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp when prepaid card expires and credits become unavailable.",
                        "example": 0
                      },
                      {
                        "name": "productInvoices",
                        "kind": "optional",
                        "type": "array",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.billing.detailed.EntityProductInvoice.in",
                        "customType": "payment.billing.detailed.EntityProductInvoice.in[]",
                        "schema": [
                          {
                            "name": "invoiceUri",
                            "kind": "optional",
                            "type": "string",
                            "description": "URI string identifier referencing the specific product invoice associated with this entity payment.",
                            "example": ""
                          },
                          {
                            "name": "createdTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp indicating when this entity payment record was created in the system.",
                            "example": 0
                          },
                          {
                            "name": "amount",
                            "kind": "optional",
                            "type": "number",
                            "description": "Monetary amount used to pay for the product invoice by this entity type.",
                            "example": ""
                          },
                          {
                            "name": "invoiceAmount",
                            "kind": "optional",
                            "type": "number",
                            "description": "Total invoice amount value for reference tracking in entity payment processing systems.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "transferInvoices",
                        "kind": "optional",
                        "type": "array",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.billing.detailed.PrepaidTransferInvoice.out",
                        "customType": "payment.billing.detailed.PrepaidTransferInvoice.out[]",
                        "schema": [
                          {
                            "name": "requestId",
                            "kind": "optional",
                            "type": "string",
                            "description": "Unique identifier for the prepaid balance transfer request between customer accounts.",
                            "example": ""
                          },
                          {
                            "name": "destinationPrepaidUri",
                            "kind": "optional",
                            "type": "string",
                            "description": "URI reference to the destination customer prepaid account receiving the transferred amount.",
                            "example": ""
                          },
                          {
                            "name": "createdTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp indicating when this prepaid transfer transaction was created in system.",
                            "example": 0
                          },
                          {
                            "name": "amount",
                            "kind": "optional",
                            "type": "number",
                            "description": "Monetary amount transferred from source prepaid account to destination prepaid account.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "usedAmount",
                        "kind": "optional",
                        "type": "number",
                        "description": "Amount of prepaid credit already consumed for billing charges.",
                        "example": ""
                      },
                      {
                        "name": "amountLeft",
                        "kind": "optional",
                        "type": "number",
                        "description": "Remaining prepaid credit available for future billing application.",
                        "example": ""
                      },
                      {
                        "name": "cardType",
                        "kind": "optional",
                        "type": "string",
                        "description": "Type of prepaid card indicating payment source, recurrence pattern, and invoicing requirements for billing system.",
                        "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidCardType.out",
                        "customType": "payment.billing.prepaid_to_product.PrepaidCardType.out",
                        "schema": []
                      },
                      {
                        "name": "paymentCurrencyInfo",
                        "kind": "optional",
                        "type": "object",
                        "description": "Payment currency information for invoice billing including base account currency, payment currency, and exchange rate details",
                        "modelRef": "#/components/schemas/payment.billing.PaymentCurrencyInfo.out",
                        "customType": "payment.billing.PaymentCurrencyInfo.out",
                        "schema": [
                          {
                            "name": "basePlanCurrency",
                            "kind": "optional",
                            "type": "string",
                            "description": "Base account currency code in ISO 4217 format used for pricing calculations and billing operations",
                            "example": "USD"
                          },
                          {
                            "name": "paymentCurrency",
                            "kind": "optional",
                            "type": "string",
                            "description": "Customer payment currency code in ISO 4217 format used for actual billing and payment processing",
                            "example": "USD"
                          },
                          {
                            "name": "exchangeRate",
                            "kind": "optional",
                            "type": "number",
                            "description": "Exchange rate from base plan currency to payment currency used for currency conversion calculations",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "prepaidConditions",
                        "kind": "optional",
                        "type": "object",
                        "description": "Collection manager for prepaid conditions with historical tracking for credit application rules",
                        "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidConditions.out",
                        "customType": "payment.billing.prepaid_to_product.PrepaidConditions.out",
                        "schema": [
                          {
                            "name": "prepaidConditionsList",
                            "kind": "optional",
                            "type": "object",
                            "description": "Active set of prepaid conditions determining when credits apply to customer charges",
                            "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidCondition.out",
                            "customType": "payment.billing.prepaid_to_product.PrepaidCondition.out[]",
                            "schema": [],
                            "complexType": "oneOf",
                            "complexItems": [
                              {
                                "name": "payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                                "schema": [
                                  {
                                    "name": "type",
                                    "kind": "optional",
                                    "type": "string",
                                    "description": "Type identifier for dimension-based prepaid condition, automatically set to class name.",
                                    "example": "",
                                    "default": "DimensionValueMapPrepaidCondition"
                                  },
                                  {
                                    "name": "dimensionMapValue",
                                    "kind": "optional",
                                    "type": "map",
                                    "description": "Single dimension key-value pair specifying usage dimension criteria for prepaid credit application.",
                                    "example": "",
                                    "customType": "map<string, string>",
                                    "schema": []
                                  }
                                ]
                              },
                              {
                                "name": "payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              }
                            ]
                          },
                          {
                            "name": "prepaidConditionsHistory",
                            "kind": "optional",
                            "type": "map",
                            "description": "Historical timeline mapping timestamps to condition sets for audit and tracking purposes",
                            "example": "",
                            "customType": "map<string, payment.billing.prepaid_to_product.PrepaidCondition.out[]>",
                            "schema": []
                          }
                        ]
                      },
                      {
                        "name": "label",
                        "kind": "optional",
                        "type": "string",
                        "description": "Label for the Entitlement.",
                        "example": ""
                      },
                      {
                        "name": "commitmentId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Optional field, populated by internal processes.",
                        "example": ""
                      },
                      {
                        "name": "customPriority",
                        "kind": "optional",
                        "type": "number",
                        "description": "an optional field to indicate the priority of the prepaid. When using the prepaid cards, cards with higher priority will be used before cards with lower priority.",
                        "example": ""
                      },
                      {
                        "name": "startAtMidCycle",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "",
                        "example": ""
                      },
                      {
                        "name": "orderId",
                        "kind": "optional",
                        "type": "string",
                        "description": "",
                        "example": ""
                      },
                      {
                        "name": "orderItemId",
                        "kind": "optional",
                        "type": "string",
                        "description": "",
                        "example": ""
                      },
                      {
                        "name": "realTimePricing",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "To indicate if the pricing plan should allow real-time workflows (e.g. top-ups)",
                        "example": ""
                      },
                      {
                        "name": "installments",
                        "kind": "optional",
                        "type": "object",
                        "description": "The payment installments for the prepaid card.",
                        "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidInstallments.out",
                        "customType": "payment.billing.prepaid_to_product.PrepaidInstallments.out",
                        "schema": [
                          {
                            "name": "prepaidInstallments",
                            "kind": "required",
                            "type": "array",
                            "description": "Ordered list of payment schedules defining when installments are billed to customer",
                            "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidInstallmentSchedule.in",
                            "customType": "payment.billing.prepaid_to_product.PrepaidInstallmentSchedule.in[]",
                            "schema": [
                              {
                                "name": "amountPrice",
                                "kind": "required",
                                "type": "number",
                                "description": "Payment amount of individual installment charged to customer in account base currency",
                                "example": ""
                              },
                              {
                                "name": "scheduledPurchaseTimeInSeconds",
                                "kind": "required",
                                "type": "integer<int64>",
                                "description": "Unix timestamp when installment payment should be processed and billed to customer",
                                "example": 0
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "name": "type",
                        "kind": "optional",
                        "type": "string",
                        "description": "Type of template, automatically populated.",
                        "example": "",
                        "default": "prepaid_card_by_price"
                      },
                      {
                        "name": "purchaseType",
                        "kind": "optional",
                        "type": "string",
                        "description": "Prepaid card purchase model defining whether credits are allocated by fixed price or usage amount",
                        "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidPurchaseType.in",
                        "customType": "payment.billing.prepaid_to_product.PrepaidPurchaseType.in",
                        "schema": []
                      },
                      {
                        "name": "actualPrepaidChargePrice",
                        "kind": "optional",
                        "type": "number",
                        "description": "The actual absolute charge amount for the prepaid card, in base currency.",
                        "example": ""
                      }
                    ]
                  },
                  {
                    "name": "payment.billing.prepaid_to_product.PrepaidCardByUsage.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidCardByUsage.out",
                    "schema": [
                      {
                        "name": "prepaidUri",
                        "kind": "optional",
                        "type": "string",
                        "description": "Unique identifier for the usage-based prepaid card within billing system.",
                        "example": ""
                      },
                      {
                        "name": "paymentStatus",
                        "kind": "optional",
                        "type": "string",
                        "description": "Payment processing status indicating current stage from pre-payment through settlement or failure",
                        "modelRef": "#/components/schemas/payment.payment.PaymentStatus.in",
                        "customType": "payment.payment.PaymentStatus.in",
                        "schema": []
                      },
                      {
                        "name": "price",
                        "kind": "optional",
                        "type": "number",
                        "description": "Actual amount paid for the usage-based prepaid card in base currency.",
                        "example": ""
                      },
                      {
                        "name": "worth",
                        "kind": "optional",
                        "type": "number",
                        "description": "Credit value provided by the prepaid card for billing application.",
                        "example": ""
                      },
                      {
                        "name": "sourceUri",
                        "kind": "optional",
                        "type": "string",
                        "description": "URI of entity that ordered the usage-based prepaid card.",
                        "example": ""
                      },
                      {
                        "name": "paymentSystemName",
                        "kind": "optional",
                        "type": "string",
                        "description": "Name of external payment system processing the prepaid transaction.",
                        "example": ""
                      },
                      {
                        "name": "paymentId",
                        "kind": "optional",
                        "type": "string",
                        "description": "External payment system identifier for the prepaid transaction.",
                        "example": ""
                      },
                      {
                        "name": "startTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp when usage-based prepaid card becomes active for billing.",
                        "example": 0
                      },
                      {
                        "name": "expirationTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp when usage-based prepaid card expires and credits become unavailable.",
                        "example": 0
                      },
                      {
                        "name": "productInvoices",
                        "kind": "optional",
                        "type": "array",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.billing.detailed.EntityProductInvoice.in",
                        "customType": "payment.billing.detailed.EntityProductInvoice.in[]",
                        "schema": [
                          {
                            "name": "invoiceUri",
                            "kind": "optional",
                            "type": "string",
                            "description": "URI string identifier referencing the specific product invoice associated with this entity payment.",
                            "example": ""
                          },
                          {
                            "name": "createdTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp indicating when this entity payment record was created in the system.",
                            "example": 0
                          },
                          {
                            "name": "amount",
                            "kind": "optional",
                            "type": "number",
                            "description": "Monetary amount used to pay for the product invoice by this entity type.",
                            "example": ""
                          },
                          {
                            "name": "invoiceAmount",
                            "kind": "optional",
                            "type": "number",
                            "description": "Total invoice amount value for reference tracking in entity payment processing systems.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "transferInvoices",
                        "kind": "optional",
                        "type": "array",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.billing.detailed.PrepaidTransferInvoice.out",
                        "customType": "payment.billing.detailed.PrepaidTransferInvoice.out[]",
                        "schema": [
                          {
                            "name": "requestId",
                            "kind": "optional",
                            "type": "string",
                            "description": "Unique identifier for the prepaid balance transfer request between customer accounts.",
                            "example": ""
                          },
                          {
                            "name": "destinationPrepaidUri",
                            "kind": "optional",
                            "type": "string",
                            "description": "URI reference to the destination customer prepaid account receiving the transferred amount.",
                            "example": ""
                          },
                          {
                            "name": "createdTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp indicating when this prepaid transfer transaction was created in system.",
                            "example": 0
                          },
                          {
                            "name": "amount",
                            "kind": "optional",
                            "type": "number",
                            "description": "Monetary amount transferred from source prepaid account to destination prepaid account.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "usedAmount",
                        "kind": "optional",
                        "type": "number",
                        "description": "Amount of prepaid usage already consumed for billing charges.",
                        "example": ""
                      },
                      {
                        "name": "amountLeft",
                        "kind": "optional",
                        "type": "number",
                        "description": "Remaining prepaid usage available for future billing application.",
                        "example": ""
                      },
                      {
                        "name": "cardType",
                        "kind": "optional",
                        "type": "string",
                        "description": "Type of prepaid card indicating payment source, recurrence pattern, and invoicing requirements for billing system.",
                        "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidCardType.out",
                        "customType": "payment.billing.prepaid_to_product.PrepaidCardType.out",
                        "schema": []
                      },
                      {
                        "name": "paymentCurrencyInfo",
                        "kind": "optional",
                        "type": "object",
                        "description": "Payment currency information for invoice billing including base account currency, payment currency, and exchange rate details",
                        "modelRef": "#/components/schemas/payment.billing.PaymentCurrencyInfo.out",
                        "customType": "payment.billing.PaymentCurrencyInfo.out",
                        "schema": [
                          {
                            "name": "basePlanCurrency",
                            "kind": "optional",
                            "type": "string",
                            "description": "Base account currency code in ISO 4217 format used for pricing calculations and billing operations",
                            "example": "USD"
                          },
                          {
                            "name": "paymentCurrency",
                            "kind": "optional",
                            "type": "string",
                            "description": "Customer payment currency code in ISO 4217 format used for actual billing and payment processing",
                            "example": "USD"
                          },
                          {
                            "name": "exchangeRate",
                            "kind": "optional",
                            "type": "number",
                            "description": "Exchange rate from base plan currency to payment currency used for currency conversion calculations",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "prepaidConditions",
                        "kind": "optional",
                        "type": "object",
                        "description": "Collection manager for prepaid conditions with historical tracking for credit application rules",
                        "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidConditions.out",
                        "customType": "payment.billing.prepaid_to_product.PrepaidConditions.out",
                        "schema": [
                          {
                            "name": "prepaidConditionsList",
                            "kind": "optional",
                            "type": "object",
                            "description": "Active set of prepaid conditions determining when credits apply to customer charges",
                            "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidCondition.out",
                            "customType": "payment.billing.prepaid_to_product.PrepaidCondition.out[]",
                            "schema": [],
                            "complexType": "oneOf",
                            "complexItems": [
                              {
                                "name": "payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              }
                            ]
                          },
                          {
                            "name": "prepaidConditionsHistory",
                            "kind": "optional",
                            "type": "map",
                            "description": "Historical timeline mapping timestamps to condition sets for audit and tracking purposes",
                            "example": "",
                            "customType": "map<string, payment.billing.prepaid_to_product.PrepaidCondition.out[]>",
                            "schema": []
                          }
                        ]
                      },
                      {
                        "name": "label",
                        "kind": "optional",
                        "type": "string",
                        "description": "Human-readable label for the usage-based prepaid card.",
                        "example": ""
                      },
                      {
                        "name": "commitmentId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Optional commitment contract identifier associated with prepaid card.",
                        "example": ""
                      },
                      {
                        "name": "customPriority",
                        "kind": "optional",
                        "type": "number",
                        "description": "Custom priority value determining usage order when multiple cards available.",
                        "example": ""
                      },
                      {
                        "name": "startAtMidCycle",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Whether the prepaid card activation begins mid-billing cycle.",
                        "example": ""
                      },
                      {
                        "name": "orderId",
                        "kind": "optional",
                        "type": "string",
                        "description": "",
                        "example": ""
                      },
                      {
                        "name": "orderItemId",
                        "kind": "optional",
                        "type": "string",
                        "description": "",
                        "example": ""
                      },
                      {
                        "name": "realTimePricing",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "To indicate if the pricing plan should allow real-time workflows (e.g. top-ups)",
                        "example": ""
                      },
                      {
                        "name": "installments",
                        "kind": "optional",
                        "type": "object",
                        "description": "The payment installments for the prepaid card.",
                        "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidInstallments.out",
                        "customType": "payment.billing.prepaid_to_product.PrepaidInstallments.out",
                        "schema": [
                          {
                            "name": "prepaidInstallments",
                            "kind": "required",
                            "type": "array",
                            "description": "Ordered list of payment schedules defining when installments are billed to customer",
                            "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidInstallmentSchedule.in",
                            "customType": "payment.billing.prepaid_to_product.PrepaidInstallmentSchedule.in[]",
                            "schema": [
                              {
                                "name": "amountPrice",
                                "kind": "required",
                                "type": "number",
                                "description": "Payment amount of individual installment charged to customer in account base currency",
                                "example": ""
                              },
                              {
                                "name": "scheduledPurchaseTimeInSeconds",
                                "kind": "required",
                                "type": "integer<int64>",
                                "description": "Unix timestamp when installment payment should be processed and billed to customer",
                                "example": 0
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "name": "type",
                        "kind": "optional",
                        "type": "string",
                        "description": "Type of template, automatically populated.",
                        "example": "",
                        "default": "prepaid_card_by_usage"
                      },
                      {
                        "name": "prepaidUsage",
                        "kind": "optional",
                        "type": "number",
                        "description": "Total usage amount that was prepaid and available for billing consumption.",
                        "example": ""
                      },
                      {
                        "name": "prepaidFullPrice",
                        "kind": "optional",
                        "type": "number",
                        "description": "Original full price of usage at creation time, used for discount calculations.",
                        "example": ""
                      },
                      {
                        "name": "purchaseType",
                        "kind": "optional",
                        "type": "string",
                        "description": "Prepaid card purchase model defining whether credits are allocated by fixed price or usage amount",
                        "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidPurchaseType.in",
                        "customType": "payment.billing.prepaid_to_product.PrepaidPurchaseType.in",
                        "schema": []
                      }
                    ]
                  }
                ]
              },
              {
                "name": "firstPrepaidCardsOrders",
                "kind": "optional",
                "type": "object",
                "description": "Prepaid credit purchase orders that were processed when the commitment contract was established.",
                "modelRef": "#/components/schemas/payment.pricing.customer.CustomerPrepaid.out",
                "customType": "payment.pricing.customer.CustomerPrepaid.out[]",
                "schema": [],
                "complexType": "oneOf",
                "complexItems": [
                  {
                    "name": "payment.pricing.customer.CustomerPrepaidByPrice.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.customer.CustomerPrepaidByPrice.out",
                    "schema": [
                      {
                        "name": "id",
                        "kind": "optional",
                        "type": "string",
                        "description": "Unique identifier for the prepaid order, used for tracking and referencing throughout the system.",
                        "example": ""
                      },
                      {
                        "name": "customerId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Customer identifier as defined in Customer API, required for prepaid card assignment.",
                        "example": ""
                      },
                      {
                        "name": "startTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp when the prepaid card becomes active and available for use, must be positive.",
                        "example": 0
                      },
                      {
                        "name": "endTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp when the prepaid card expires and becomes unavailable for further usage.",
                        "example": 0
                      },
                      {
                        "name": "firstCardEndTimeSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp when the first card in a recurring series expires, used for schedule calculations.",
                        "example": 0
                      },
                      {
                        "name": "productId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Product identifier as defined in account pricing configuration, change from default only for multi-product accounts.",
                        "example": ""
                      },
                      {
                        "name": "prepaidOfferVersion",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Prepaid offer version timestamp ensuring consistent pricing between quote and purchase, or -1 for current version.",
                        "example": 0
                      },
                      {
                        "name": "prepaidPrice",
                        "kind": "optional",
                        "type": "number",
                        "description": "Amount of prepaid money ordered in credit units or base currency, must be non-negative value.",
                        "example": ""
                      },
                      {
                        "name": "originalWorth",
                        "kind": "optional",
                        "type": "number",
                        "description": "Locked-in monetary worth of the prepaid card to prevent value changes from future offer updates.",
                        "example": ""
                      },
                      {
                        "name": "originalCurrency",
                        "kind": "optional",
                        "type": "string",
                        "description": "Currency code in ISO 4217 format.",
                        "example": "USD"
                      },
                      {
                        "name": "preferredPurchasingPrepaidCurrency",
                        "kind": "optional",
                        "type": "string",
                        "description": "Currency code in ISO 4217 format.",
                        "example": "USD"
                      },
                      {
                        "name": "recurrenceFrequency",
                        "kind": "optional",
                        "type": "object",
                        "description": "Billing period for recurring prepaid cards, null for one-time purchases only.",
                        "modelRef": "#/components/schemas/payment.pricing.BillingPeriod.out",
                        "customType": "payment.pricing.BillingPeriod.out",
                        "schema": [
                          {
                            "name": "interval",
                            "kind": "optional",
                            "type": "string",
                            "description": "Time interval unit for billing cycle such as day, month, or year",
                            "modelRef": "#/components/schemas/payment.pricing.BillingPeriodInterval.in",
                            "customType": "payment.pricing.BillingPeriodInterval.in",
                            "schema": []
                          },
                          {
                            "name": "intervalsCount",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Number of intervals in billing cycle with minimum value of 1",
                            "example": 0
                          }
                        ]
                      },
                      {
                        "name": "externalPayment",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Flag indicating external payment processing where Amberflo invoices but waits for external payment confirmation.",
                        "example": ""
                      },
                      {
                        "name": "relationId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Unique base64-encoded identifier for customer-prepaid relationship, computed automatically for external system integration.",
                        "example": ""
                      },
                      {
                        "name": "createdTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp when the prepaid order was originally created, separate from activation time.",
                        "example": 0
                      },
                      {
                        "name": "label",
                        "kind": "optional",
                        "type": "string",
                        "description": "Human-readable label for the prepaid order to help identify and organize prepaid cards.",
                        "example": ""
                      },
                      {
                        "name": "prepaidConditions",
                        "kind": "optional",
                        "type": "object",
                        "description": "Conditions defining how and when the prepaid card can be applied to product usage.",
                        "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidConditions.out",
                        "customType": "payment.billing.prepaid_to_product.PrepaidConditions.out",
                        "schema": [
                          {
                            "name": "prepaidConditionsList",
                            "kind": "optional",
                            "type": "object",
                            "description": "Active set of prepaid conditions determining when credits apply to customer charges",
                            "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidCondition.out",
                            "customType": "payment.billing.prepaid_to_product.PrepaidCondition.out[]",
                            "schema": [],
                            "complexType": "oneOf",
                            "complexItems": [
                              {
                                "name": "payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                                "schema": [
                                  {
                                    "name": "type",
                                    "kind": "optional",
                                    "type": "string",
                                    "description": "Type identifier for dimension-based prepaid condition, automatically set to class name.",
                                    "example": "",
                                    "default": "DimensionValueMapPrepaidCondition"
                                  },
                                  {
                                    "name": "dimensionMapValue",
                                    "kind": "optional",
                                    "type": "map",
                                    "description": "Single dimension key-value pair specifying usage dimension criteria for prepaid credit application.",
                                    "example": "",
                                    "customType": "map<string, string>",
                                    "schema": []
                                  }
                                ]
                              },
                              {
                                "name": "payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              }
                            ]
                          },
                          {
                            "name": "prepaidConditionsHistory",
                            "kind": "optional",
                            "type": "map",
                            "description": "Historical timeline mapping timestamps to condition sets for audit and tracking purposes",
                            "example": "",
                            "customType": "map<string, payment.billing.prepaid_to_product.PrepaidCondition.out[]>",
                            "schema": []
                          }
                        ]
                      },
                      {
                        "name": "commitmentId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Optional commitment contract identifier populated by internal processes for contract-based prepaid cards.",
                        "example": ""
                      },
                      {
                        "name": "orderId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Optional order identifier populated by internal processes for tracking prepaid purchases.",
                        "example": ""
                      },
                      {
                        "name": "orderItemId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Optional order line item identifier populated by internal processes for detailed order tracking.",
                        "example": ""
                      },
                      {
                        "name": "senderPrepaidUri",
                        "kind": "optional",
                        "type": "string",
                        "description": "Optional prepaid card URI that was used to transfer funds into this prepaid card.",
                        "example": ""
                      },
                      {
                        "name": "customPriority",
                        "kind": "optional",
                        "type": "number",
                        "description": "Optional priority value for prepaid card usage order, higher priority cards are used before lower priority cards.",
                        "example": ""
                      },
                      {
                        "name": "prepaidPriority",
                        "kind": "optional",
                        "type": "string",
                        "description": "Standard priority classification for prepaid card usage ordering and selection algorithms.",
                        "modelRef": "#/components/schemas/payment.pricing.prepaid.PrepaidPriority.in",
                        "customType": "payment.pricing.prepaid.PrepaidPriority.in",
                        "schema": []
                      },
                      {
                        "name": "startAtMidCycle",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Flag indicating whether this prepaid card should be applied immediately as an ad-hoc mid-cycle addition.",
                        "example": ""
                      },
                      {
                        "name": "realTimePricing",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Flag indicating whether to use real-time pricing calculations for this prepaid card's value and billing.",
                        "example": ""
                      },
                      {
                        "name": "installments",
                        "kind": "optional",
                        "type": "object",
                        "description": "The payment installments for the prepaid card.",
                        "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidInstallments.out",
                        "customType": "payment.billing.prepaid_to_product.PrepaidInstallments.out",
                        "schema": [
                          {
                            "name": "prepaidInstallments",
                            "kind": "required",
                            "type": "array",
                            "description": "Ordered list of payment schedules defining when installments are billed to customer",
                            "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidInstallmentSchedule.in",
                            "customType": "payment.billing.prepaid_to_product.PrepaidInstallmentSchedule.in[]",
                            "schema": [
                              {
                                "name": "amountPrice",
                                "kind": "required",
                                "type": "number",
                                "description": "Payment amount of individual installment charged to customer in account base currency",
                                "example": ""
                              },
                              {
                                "name": "scheduledPurchaseTimeInSeconds",
                                "kind": "required",
                                "type": "integer<int64>",
                                "description": "Unix timestamp when installment payment should be processed and billed to customer",
                                "example": 0
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "name": "type",
                        "kind": "optional",
                        "type": "string",
                        "description": "Discriminator field identifying this as a price-based prepaid card order, automatically set to customer_prepaid_by_price.",
                        "example": "",
                        "default": "customer_prepaid_by_price"
                      },
                      {
                        "name": "purchaseType",
                        "kind": "optional",
                        "type": "string",
                        "description": "Purchase type classification for prepaid card processing, automatically set to PREPAID_BY_PRICE for this variant.",
                        "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidPurchaseType.in",
                        "customType": "payment.billing.prepaid_to_product.PrepaidPurchaseType.in",
                        "schema": []
                      },
                      {
                        "name": "actualPrepaidChargePrice",
                        "kind": "optional",
                        "type": "number",
                        "description": "The actual absolute charge amount for the prepaid card, in base currency.",
                        "example": ""
                      }
                    ]
                  },
                  {
                    "name": "payment.pricing.customer.CustomerPrepaidByUsage.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.customer.CustomerPrepaidByUsage.out",
                    "schema": [
                      {
                        "name": "id",
                        "kind": "optional",
                        "type": "string",
                        "description": "Unique identifier for the prepaid order, used for tracking and referencing throughout the system.",
                        "example": ""
                      },
                      {
                        "name": "customerId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Customer identifier as defined in Customer API, required for prepaid card assignment.",
                        "example": ""
                      },
                      {
                        "name": "startTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp when the prepaid card becomes active and available for use, must be positive.",
                        "example": 0
                      },
                      {
                        "name": "endTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp when the prepaid card expires and becomes unavailable for further usage.",
                        "example": 0
                      },
                      {
                        "name": "firstCardEndTimeSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp when the first card in a recurring series expires, used for schedule calculations.",
                        "example": 0
                      },
                      {
                        "name": "productId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Product identifier as defined in account pricing configuration, change from default only for multi-product accounts.",
                        "example": ""
                      },
                      {
                        "name": "prepaidOfferVersion",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Prepaid offer version timestamp ensuring consistent pricing between quote and purchase, or -1 for current version.",
                        "example": 0
                      },
                      {
                        "name": "prepaidPrice",
                        "kind": "optional",
                        "type": "number",
                        "description": "Amount to charge the customer for this prepaid order, may be discounted from full price.",
                        "example": ""
                      },
                      {
                        "name": "originalWorth",
                        "kind": "optional",
                        "type": "number",
                        "description": "Locked-in monetary worth of the prepaid card to prevent value changes from future offer updates.",
                        "example": ""
                      },
                      {
                        "name": "originalCurrency",
                        "kind": "optional",
                        "type": "string",
                        "description": "Currency code in ISO 4217 format.",
                        "example": "USD"
                      },
                      {
                        "name": "preferredPurchasingPrepaidCurrency",
                        "kind": "optional",
                        "type": "string",
                        "description": "Currency code in ISO 4217 format.",
                        "example": "USD"
                      },
                      {
                        "name": "recurrenceFrequency",
                        "kind": "optional",
                        "type": "object",
                        "description": "Billing period for recurring prepaid cards, null for one-time purchases only.",
                        "modelRef": "#/components/schemas/payment.pricing.BillingPeriod.out",
                        "customType": "payment.pricing.BillingPeriod.out",
                        "schema": [
                          {
                            "name": "interval",
                            "kind": "optional",
                            "type": "string",
                            "description": "Time interval unit for billing cycle such as day, month, or year",
                            "modelRef": "#/components/schemas/payment.pricing.BillingPeriodInterval.in",
                            "customType": "payment.pricing.BillingPeriodInterval.in",
                            "schema": []
                          },
                          {
                            "name": "intervalsCount",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Number of intervals in billing cycle with minimum value of 1",
                            "example": 0
                          }
                        ]
                      },
                      {
                        "name": "externalPayment",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Flag indicating external payment processing where Amberflo invoices but waits for external payment confirmation.",
                        "example": ""
                      },
                      {
                        "name": "relationId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Unique base64-encoded identifier for customer-prepaid relationship, computed automatically for external system integration.",
                        "example": ""
                      },
                      {
                        "name": "createdTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp when the prepaid order was originally created, separate from activation time.",
                        "example": 0
                      },
                      {
                        "name": "label",
                        "kind": "optional",
                        "type": "string",
                        "description": "Human-readable label for the prepaid order to help identify and organize prepaid cards.",
                        "example": ""
                      },
                      {
                        "name": "prepaidConditions",
                        "kind": "optional",
                        "type": "object",
                        "description": "Conditions defining how and when the prepaid card can be applied to product usage.",
                        "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidConditions.out",
                        "customType": "payment.billing.prepaid_to_product.PrepaidConditions.out",
                        "schema": [
                          {
                            "name": "prepaidConditionsList",
                            "kind": "optional",
                            "type": "object",
                            "description": "Active set of prepaid conditions determining when credits apply to customer charges",
                            "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidCondition.out",
                            "customType": "payment.billing.prepaid_to_product.PrepaidCondition.out[]",
                            "schema": [],
                            "complexType": "oneOf",
                            "complexItems": [
                              {
                                "name": "payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.DimensionValueMapPrepaidCondition.in",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemDimensionPrepaidCondition.in",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                                "description": "",
                                "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.ProductItemPrepaidCondition.in",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              }
                            ]
                          },
                          {
                            "name": "prepaidConditionsHistory",
                            "kind": "optional",
                            "type": "map",
                            "description": "Historical timeline mapping timestamps to condition sets for audit and tracking purposes",
                            "example": "",
                            "customType": "map<string, payment.billing.prepaid_to_product.PrepaidCondition.out[]>",
                            "schema": []
                          }
                        ]
                      },
                      {
                        "name": "commitmentId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Optional commitment contract identifier populated by internal processes for contract-based prepaid cards.",
                        "example": ""
                      },
                      {
                        "name": "orderId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Optional order identifier populated by internal processes for tracking prepaid purchases.",
                        "example": ""
                      },
                      {
                        "name": "orderItemId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Optional order line item identifier populated by internal processes for detailed order tracking.",
                        "example": ""
                      },
                      {
                        "name": "senderPrepaidUri",
                        "kind": "optional",
                        "type": "string",
                        "description": "Optional prepaid card URI that was used to transfer funds into this prepaid card.",
                        "example": ""
                      },
                      {
                        "name": "customPriority",
                        "kind": "optional",
                        "type": "number",
                        "description": "Optional priority value for prepaid card usage order, higher priority cards are used before lower priority cards.",
                        "example": ""
                      },
                      {
                        "name": "prepaidPriority",
                        "kind": "optional",
                        "type": "string",
                        "description": "Standard priority classification for prepaid card usage ordering and selection algorithms.",
                        "modelRef": "#/components/schemas/payment.pricing.prepaid.PrepaidPriority.in",
                        "customType": "payment.pricing.prepaid.PrepaidPriority.in",
                        "schema": []
                      },
                      {
                        "name": "startAtMidCycle",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Flag indicating whether this prepaid card should be applied immediately as an ad-hoc mid-cycle addition.",
                        "example": ""
                      },
                      {
                        "name": "realTimePricing",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Flag indicating whether to use real-time pricing calculations for this prepaid card's value and billing.",
                        "example": ""
                      },
                      {
                        "name": "installments",
                        "kind": "optional",
                        "type": "object",
                        "description": "The payment installments for the prepaid card.",
                        "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidInstallments.out",
                        "customType": "payment.billing.prepaid_to_product.PrepaidInstallments.out",
                        "schema": [
                          {
                            "name": "prepaidInstallments",
                            "kind": "required",
                            "type": "array",
                            "description": "Ordered list of payment schedules defining when installments are billed to customer",
                            "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidInstallmentSchedule.in",
                            "customType": "payment.billing.prepaid_to_product.PrepaidInstallmentSchedule.in[]",
                            "schema": [
                              {
                                "name": "amountPrice",
                                "kind": "required",
                                "type": "number",
                                "description": "Payment amount of individual installment charged to customer in account base currency",
                                "example": ""
                              },
                              {
                                "name": "scheduledPurchaseTimeInSeconds",
                                "kind": "required",
                                "type": "integer<int64>",
                                "description": "Unix timestamp when installment payment should be processed and billed to customer",
                                "example": 0
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "name": "type",
                        "kind": "optional",
                        "type": "string",
                        "description": "Discriminator field identifying this as a usage-based prepaid card order, automatically set to customer_prepaid_by_usage.",
                        "example": "",
                        "default": "customer_prepaid_by_usage"
                      },
                      {
                        "name": "purchaseType",
                        "kind": "optional",
                        "type": "string",
                        "description": "Purchase type classification for prepaid card processing, automatically set to PREPAID_BY_USAGE for this variant.",
                        "modelRef": "#/components/schemas/payment.billing.prepaid_to_product.PrepaidPurchaseType.in",
                        "customType": "payment.billing.prepaid_to_product.PrepaidPurchaseType.in",
                        "schema": []
                      },
                      {
                        "name": "prepaidUsage",
                        "kind": "optional",
                        "type": "number",
                        "description": "Specific quantity of usage units to pre-purchase for this prepaid card, must be positive value.",
                        "example": ""
                      },
                      {
                        "name": "prepaidFullPrice",
                        "kind": "optional",
                        "type": "number",
                        "description": "Full price of the usage when the card was created, used to create ad-hoc discounts by comparing against actual prepaidPrice.",
                        "example": ""
                      }
                    ]
                  }
                ]
              },
              {
                "name": "creationTimeInSeconds",
                "kind": "optional",
                "type": "integer<int64>",
                "description": "Unix timestamp when the commitment contract was created and became active.",
                "example": 0
              },
              {
                "name": "firstCustomPromotions",
                "kind": "optional",
                "type": "array",
                "description": "Custom promotions that were specifically configured for this customer at contract creation time.",
                "modelRef": "#/components/schemas/payment.pricing.promotions.CustomerCustomPromotion.out",
                "customType": "payment.pricing.promotions.CustomerCustomPromotion.out[]",
                "schema": [
                  {
                    "name": "promotion",
                    "kind": "optional",
                    "type": "object",
                    "description": "Promotion definition containing rules, discounts, and configuration for this customer custom promotion.",
                    "modelRef": "#/components/schemas/payment.pricing.promotions.Promotion.out",
                    "customType": "payment.pricing.promotions.Promotion.out",
                    "schema": [],
                    "complexType": "oneOf",
                    "complexItems": [
                      {
                        "name": "payment.pricing.promotions.pre_created.AbsoluteProductAutomaticPromotion.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsoluteProductAutomaticPromotion.out",
                        "schema": [
                          {
                            "name": "id",
                            "kind": "required",
                            "type": "string",
                            "description": "Unique identifier for the promotion within the account scope.",
                            "example": ""
                          },
                          {
                            "name": "type",
                            "kind": "optional",
                            "type": "string",
                            "description": "Fixed promotion type identifier for automatic product-level absolute discounts.",
                            "example": "",
                            "default": "absolute_product_automatic_promotion"
                          },
                          {
                            "name": "promotionName",
                            "kind": "required",
                            "type": "string",
                            "description": "Human-readable name for promotion display and management within admin interfaces.",
                            "example": ""
                          },
                          {
                            "name": "description",
                            "kind": "optional",
                            "type": "string",
                            "description": "Optional detailed description explaining promotion purpose, terms, and usage guidelines.",
                            "example": ""
                          },
                          {
                            "name": "lockingStatus",
                            "kind": "optional",
                            "type": "string",
                            "description": "Current modification permissions and lifecycle state of the promotion.",
                            "modelRef": "#/components/schemas/common.LockingStatus.in",
                            "customType": "common.LockingStatus.in",
                            "schema": []
                          },
                          {
                            "name": "lastUpdateTimeInMillis",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp in milliseconds when promotion was last modified or activated.",
                            "example": 0
                          },
                          {
                            "name": "dimensionConstraintMap",
                            "kind": "optional",
                            "type": "map",
                            "description": "Key-value pairs defining usage dimension filters for promotion applicability conditions.",
                            "example": "",
                            "customType": "map<string, string>",
                            "schema": []
                          },
                          {
                            "name": "customerTags",
                            "kind": "optional",
                            "type": "map",
                            "description": "Required customer tag criteria for automatic promotion activation and targeting.",
                            "example": "",
                            "customType": "map<string, string>",
                            "schema": []
                          },
                          {
                            "name": "isHidden",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Controls promotion visibility in customer interfaces and billing communications.",
                            "example": ""
                          },
                          {
                            "name": "discount",
                            "kind": "optional",
                            "type": "number",
                            "description": "Fixed monetary amount deducted from product charges in account currency.",
                            "example": ""
                          },
                          {
                            "name": "totalMaxDiscount",
                            "kind": "optional",
                            "type": "number",
                            "description": "Optional lifetime limit on total discount amount available across all periods.",
                            "example": ""
                          },
                          {
                            "name": "targetProductId",
                            "kind": "optional",
                            "type": "string",
                            "description": "Identifier of the specific product receiving the automatic discount benefits.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.AbsoluteProductItemAutomaticPromotion.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsoluteProductItemAutomaticPromotion.out",
                        "schema": [
                          {
                            "name": "id",
                            "kind": "required",
                            "type": "string",
                            "description": "Unique identifier for the promotion within the account scope.",
                            "example": ""
                          },
                          {
                            "name": "type",
                            "kind": "optional",
                            "type": "string",
                            "description": "Fixed promotion type identifier for automatic product item absolute discounts.",
                            "example": "",
                            "default": "absolute_product_item_automatic_promotion"
                          },
                          {
                            "name": "promotionName",
                            "kind": "required",
                            "type": "string",
                            "description": "Human-readable name for promotion display and management within admin interfaces.",
                            "example": ""
                          },
                          {
                            "name": "description",
                            "kind": "optional",
                            "type": "string",
                            "description": "Optional detailed description explaining promotion purpose, terms, and usage guidelines.",
                            "example": ""
                          },
                          {
                            "name": "lockingStatus",
                            "kind": "optional",
                            "type": "string",
                            "description": "Current modification permissions and lifecycle state of the promotion.",
                            "modelRef": "#/components/schemas/common.LockingStatus.in",
                            "customType": "common.LockingStatus.in",
                            "schema": []
                          },
                          {
                            "name": "lastUpdateTimeInMillis",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp in milliseconds when promotion was last modified or activated.",
                            "example": 0
                          },
                          {
                            "name": "dimensionConstraintMap",
                            "kind": "optional",
                            "type": "map",
                            "description": "Key-value pairs defining usage dimension filters with optional regex pattern support.",
                            "example": "",
                            "customType": "map<string, string>",
                            "schema": []
                          },
                          {
                            "name": "customerTags",
                            "kind": "optional",
                            "type": "map",
                            "description": "Required customer tag criteria for automatic promotion activation and targeting.",
                            "example": "",
                            "customType": "map<string, string>",
                            "schema": []
                          },
                          {
                            "name": "isHidden",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Controls promotion visibility in customer interfaces and billing communications.",
                            "example": ""
                          },
                          {
                            "name": "discount",
                            "kind": "optional",
                            "type": "number",
                            "description": "Fixed monetary amount deducted from product item charges in account currency.",
                            "example": ""
                          },
                          {
                            "name": "totalMaxDiscount",
                            "kind": "optional",
                            "type": "number",
                            "description": "Optional lifetime limit on total discount amount available across all periods.",
                            "example": ""
                          },
                          {
                            "name": "targetProductItemId",
                            "kind": "optional",
                            "type": "string",
                            "description": "Identifier of the specific product item receiving the automatic discount benefits.",
                            "example": ""
                          },
                          {
                            "name": "isRegEx",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Enables regular expression matching for dimension constraint values and targeting flexibility.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.AbsoluteProductItemSalesEventPromotion.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsoluteProductItemSalesEventPromotion.out",
                        "schema": [
                          {
                            "name": "id",
                            "kind": "required",
                            "type": "string",
                            "description": "Unique identifier for the sales event promotion within account scope.",
                            "example": ""
                          },
                          {
                            "name": "type",
                            "kind": "optional",
                            "type": "string",
                            "description": "Fixed promotion type identifier for product item sales event absolute discounts.",
                            "example": "",
                            "default": "absolute_product_item_sales_event_promotion"
                          },
                          {
                            "name": "promotionName",
                            "kind": "required",
                            "type": "string",
                            "description": "Human-readable name for promotion display and campaign management interfaces.",
                            "example": ""
                          },
                          {
                            "name": "description",
                            "kind": "optional",
                            "type": "string",
                            "description": "Optional detailed description explaining sales event purpose, terms, and campaign objectives.",
                            "example": ""
                          },
                          {
                            "name": "lockingStatus",
                            "kind": "optional",
                            "type": "string",
                            "description": "Current modification permissions and lifecycle state of the sales event promotion.",
                            "modelRef": "#/components/schemas/common.LockingStatus.in",
                            "customType": "common.LockingStatus.in",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "lastUpdateTimeInMillis",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp in milliseconds when sales event promotion was last modified.",
                            "example": 0
                          },
                          {
                            "name": "dimensionConstraintMap",
                            "kind": "optional",
                            "type": "map",
                            "description": "Key-value pairs defining usage dimension filters with optional regex pattern support.",
                            "example": "",
                            "customType": "map<string, string>",
                            "schema": []
                          },
                          {
                            "name": "customerTags",
                            "kind": "optional",
                            "type": "map",
                            "description": "Optional customer tag criteria for targeted promotion activation during events.",
                            "example": "",
                            "customType": "map<string, string>",
                            "schema": []
                          },
                          {
                            "name": "acceptablePromotionTimeRange",
                            "kind": "optional",
                            "type": "object",
                            "description": "Required time boundaries defining when promotion is active during sales events.",
                            "modelRef": "#/components/schemas/payment.common.TimeRange.in",
                            "customType": "payment.common.TimeRange.in",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "recurrenceInterval",
                            "kind": "optional",
                            "type": "object",
                            "description": "Optional recurring pattern configuration for repeated promotional campaigns and events.",
                            "modelRef": "#/components/schemas/payment.pricing.promotions.PromotionRecurrenceInterval.out",
                            "customType": "payment.pricing.promotions.PromotionRecurrenceInterval.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "discount",
                            "kind": "optional",
                            "type": "number",
                            "description": "Fixed monetary amount deducted from product item charges in account currency.",
                            "example": ""
                          },
                          {
                            "name": "targetProductItemId",
                            "kind": "optional",
                            "type": "string",
                            "description": "Required identifier of specific product item receiving sales event discount benefits.",
                            "example": ""
                          },
                          {
                            "name": "isRegEx",
                            "kind": "optional",
                            "type": "boolean",
                            "description": "Enables regular expression matching for dimension constraint values and targeting flexibility.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.AbsoluteProductSalesEventPromotion.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsoluteProductSalesEventPromotion.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.FreeTrialPromotion.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.FreeTrialPromotion.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.GenericItemPromotion.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.GenericItemPromotion.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.GenericProductPromotion.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.GenericProductPromotion.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.ProductAbsolutePartnerDiscount.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.ProductAbsolutePartnerDiscount.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.ProductItemAbsolutePartnerDiscount.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.ProductItemAbsolutePartnerDiscount.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.RelativeProductItemPartnerDiscount.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductItemPartnerDiscount.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.RelativeProductAutomaticPromotion.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductAutomaticPromotion.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.RelativeProductItemAutomaticPromotion.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductItemAutomaticPromotion.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.RelativeProductItemSalesEventPromotion.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductItemSalesEventPromotion.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.ProductRelativePartnerDiscount.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.ProductRelativePartnerDiscount.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.RelativeProductSalesEventPromotion.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductSalesEventPromotion.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.TieredAbsoluteProductAutomaticPromotion.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TieredAbsoluteProductAutomaticPromotion.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.TieredAbsoluteProductItemAutomaticPromotion.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TieredAbsoluteProductItemAutomaticPromotion.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.TieredRelativeProductAutomaticPromotion.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TieredRelativeProductAutomaticPromotion.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.TieredRelativeProductItemAutomaticPromotion.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TieredRelativeProductItemAutomaticPromotion.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.TimeLimitedAbsoluteProductItemDiscount.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedAbsoluteProductItemDiscount.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.TimeLimitedAbsoluteProductDiscount.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedAbsoluteProductDiscount.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.TimeLimitedRelativeProductItemDiscount.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedRelativeProductItemDiscount.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.TimeLimitedRelativeProductDiscount.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedRelativeProductDiscount.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.RelativeProductFullDiscount.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.RelativeProductFullDiscount.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.TimeLimitedTieredAbsoluteProductItemDiscount.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedTieredAbsoluteProductItemDiscount.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.TimeLimitedTieredAbsoluteProductDiscount.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedTieredAbsoluteProductDiscount.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.TimeLimitedTieredRelativeProductItemDiscount.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedTieredRelativeProductItemDiscount.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.TimeLimitedTieredRelativeProductDiscount.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.TimeLimitedTieredRelativeProductDiscount.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "payment.pricing.promotions.pre_created.AbsolutePlanPromotion.out",
                        "description": "",
                        "modelRef": "#/components/schemas/payment.pricing.promotions.pre_created.AbsolutePlanPromotion.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      }
                    ]
                  },
                  {
                    "name": "customerAppliedPromotion",
                    "kind": "optional",
                    "type": "object",
                    "description": "Customer-specific application details including timing, status, and customization for this promotion.",
                    "modelRef": "#/components/schemas/payment.pricing.customer.CustomerAppliedPromotion.out",
                    "customType": "payment.pricing.customer.CustomerAppliedPromotion.out",
                    "schema": [
                      {
                        "name": "id",
                        "kind": "optional",
                        "type": "string",
                        "description": "The id of the specific instance in time where a promotion (with promotion Id) was applied to a customer (same promotion might be applied multiple times for the same customer).",
                        "example": ""
                      },
                      {
                        "name": "productId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Unique product id.",
                        "example": ""
                      },
                      {
                        "name": "customerId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Unique customer id.",
                        "example": ""
                      },
                      {
                        "name": "promotionId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Unique promotion id to define an applied promotion.",
                        "example": ""
                      },
                      {
                        "name": "appliedTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Deprecated. When a promotion is in use in a customer pricing plan.",
                        "example": 0
                      },
                      {
                        "name": "addedTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "When a promotion has been added to a pricing plan.",
                        "example": 0
                      },
                      {
                        "name": "removedTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "When a promotion has been removed from a customer pricing plan.",
                        "example": 0
                      },
                      {
                        "name": "relationId",
                        "kind": "optional",
                        "type": "string",
                        "description": "The unique ID of the relationship between the customer and promotion.",
                        "example": ""
                      },
                      {
                        "name": "appliedTimeRange",
                        "kind": "optional",
                        "type": "object",
                        "description": "When something is applied and removed with hourly granularity.",
                        "modelRef": "#/components/schemas/payment.common.TimeRange.in",
                        "customType": "payment.common.TimeRange.in",
                        "schema": [
                          {
                            "name": "startTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp marking the beginning of the time range in seconds",
                            "example": 0
                          },
                          {
                            "name": "endTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp marking the end of time range or null for open-ended ranges",
                            "example": 0
                          }
                        ]
                      },
                      {
                        "name": "priority",
                        "kind": "optional",
                        "type": "number",
                        "description": "How we rank promotions of the same type against each other.",
                        "example": ""
                      },
                      {
                        "name": "removalContext",
                        "kind": "optional",
                        "type": "map",
                        "description": "Identifying metadata around who and why a promotion was removed.",
                        "example": "",
                        "customType": "map<string, string>",
                        "schema": []
                      },
                      {
                        "name": "commitmentId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Optional field, populated by internal processes.",
                        "example": ""
                      },
                      {
                        "name": "entityProductInvoices",
                        "kind": "optional",
                        "type": "array",
                        "description": "List of invoices that this customer applied promotion was used on.",
                        "modelRef": "#/components/schemas/payment.billing.detailed.EntityProductInvoice.in",
                        "customType": "payment.billing.detailed.EntityProductInvoice.in[]",
                        "schema": [
                          {
                            "name": "invoiceUri",
                            "kind": "optional",
                            "type": "string",
                            "description": "URI string identifier referencing the specific product invoice associated with this entity payment.",
                            "example": ""
                          },
                          {
                            "name": "createdTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp indicating when this entity payment record was created in the system.",
                            "example": 0
                          },
                          {
                            "name": "amount",
                            "kind": "optional",
                            "type": "number",
                            "description": "Monetary amount used to pay for the product invoice by this entity type.",
                            "example": ""
                          },
                          {
                            "name": "invoiceAmount",
                            "kind": "optional",
                            "type": "number",
                            "description": "Total invoice amount value for reference tracking in entity payment processing systems.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "amountLeftInCycle",
                        "kind": "optional",
                        "type": "number",
                        "description": "Amount of promotion left in cycle.",
                        "example": ""
                      },
                      {
                        "name": "totalAmountLeft",
                        "kind": "optional",
                        "type": "number",
                        "description": "Amount of promotion left in total.",
                        "example": ""
                      }
                    ]
                  }
                ]
              },
              {
                "name": "firstOrders",
                "kind": "optional",
                "type": "array",
                "description": "Subscription orders that were placed when the commitment contract was initially established.",
                "modelRef": "#/components/schemas/payment.pricing.customer.CustomerSubscriptionOrder.out",
                "customType": "payment.pricing.customer.CustomerSubscriptionOrder.out[]",
                "schema": [
                  {
                    "name": "customerId",
                    "kind": "required",
                    "type": "string",
                    "description": "Unique customer id.",
                    "example": ""
                  },
                  {
                    "name": "id",
                    "kind": "required",
                    "type": "string",
                    "description": "The id of the specific instance in time where an order was applied to a customer, this id marks a unique customer order.",
                    "example": ""
                  },
                  {
                    "name": "orderItems",
                    "kind": "required",
                    "type": "array",
                    "description": "List of individual order items that make up this order.",
                    "modelRef": "#/components/schemas/payment.pricing.customer.SubscriptionOrderItem.in",
                    "customType": "payment.pricing.customer.SubscriptionOrderItem.in[]",
                    "schema": [
                      {
                        "name": "id",
                        "kind": "optional",
                        "type": "string",
                        "description": "Instance id associated with the order item.",
                        "example": ""
                      },
                      {
                        "name": "quantity",
                        "kind": "required",
                        "type": "number",
                        "description": "Quantity of units the customer is subscribing to for this order.",
                        "example": ""
                      },
                      {
                        "name": "resourceId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Resource id that this order item is applied to.",
                        "example": ""
                      },
                      {
                        "name": "dimensions",
                        "kind": "optional",
                        "type": "map",
                        "description": "Dimension key values that this order item is associated with.",
                        "example": "",
                        "customType": "map<string, string>",
                        "schema": []
                      },
                      {
                        "name": "totalPrice",
                        "kind": "optional",
                        "type": "number",
                        "description": "Price for this order item. This is the total price for the full quantity over the order's duration, not the price per unit. If the order has a fixed duration this total price is for the entire duration. If the order has no fixed duration this total price is per billing period. If null, the price will be calculated based on the subscription plan's price per unit.",
                        "example": ""
                      }
                    ]
                  },
                  {
                    "name": "productItemId",
                    "kind": "required",
                    "type": "string",
                    "description": "Unique product item id.",
                    "example": ""
                  },
                  {
                    "name": "productPlanId",
                    "kind": "required",
                    "type": "string",
                    "description": "Unique product plan id.",
                    "example": ""
                  },
                  {
                    "name": "appliedTimeRange",
                    "kind": "optional",
                    "type": "object",
                    "description": "Applied time range for the order. This defines when an order starts and ends.",
                    "modelRef": "#/components/schemas/payment.common.TimeRange.in",
                    "customType": "payment.common.TimeRange.in",
                    "schema": [
                      {
                        "name": "startTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp marking the beginning of the time range in seconds",
                        "example": 0
                      },
                      {
                        "name": "endTimeInSeconds",
                        "kind": "optional",
                        "type": "integer<int64>",
                        "description": "Unix timestamp marking the end of time range or null for open-ended ranges",
                        "example": 0
                      }
                    ]
                  },
                  {
                    "name": "billingPeriods",
                    "kind": "optional",
                    "type": "integer<int32>",
                    "description": "Optional field to indicate the number of billing periods for the order. If this field is not null the order's end time will be calculated as this number of billing periods from the start time, inclusive of the billing period the start time falls within.",
                    "example": 0
                  },
                  {
                    "name": "label",
                    "kind": "optional",
                    "type": "string",
                    "description": "Label for the order.",
                    "example": ""
                  },
                  {
                    "name": "subscriptionSettings",
                    "kind": "optional",
                    "type": "object",
                    "description": "Optional subscription settings to override the default subscription settings",
                    "modelRef": "#/components/schemas/payment.pricing.subscription_orders.SubscriptionPriceSettings.out",
                    "customType": "payment.pricing.subscription_orders.SubscriptionPriceSettings.out",
                    "schema": [
                      {
                        "name": "cancellationRule",
                        "kind": "required",
                        "type": "string",
                        "description": "Whether early cancellation will prorate, charge in full, or result in no charge.",
                        "modelRef": "#/components/schemas/payment.pricing.subscription_orders.CancellationRule.in",
                        "customType": "payment.pricing.subscription_orders.CancellationRule.in",
                        "schema": []
                      },
                      {
                        "name": "chargeExecution",
                        "kind": "required",
                        "type": "string",
                        "description": "When this order's charge will be executed.",
                        "modelRef": "#/components/schemas/payment.pricing.subscription_orders.ChargeExecution.in",
                        "customType": "payment.pricing.subscription_orders.ChargeExecution.in",
                        "schema": []
                      },
                      {
                        "name": "purchaseRule",
                        "kind": "required",
                        "type": "string",
                        "description": "Whether the order will prorate or charge in full from the beginning of the billing period.",
                        "modelRef": "#/components/schemas/payment.pricing.subscription_orders.PurchaseRule.in",
                        "customType": "payment.pricing.subscription_orders.PurchaseRule.in",
                        "schema": []
                      },
                      {
                        "name": "subscriptionRate",
                        "kind": "required",
                        "type": "string",
                        "description": "The rate of the subscription. This controls the granularity of subscription pricing within the billing period.",
                        "modelRef": "#/components/schemas/payment.pricing.price.UsageGranularity.in",
                        "customType": "payment.pricing.price.UsageGranularity.in",
                        "schema": []
                      },
                      {
                        "name": "isPricedPerRate",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Whether subscription price is charged per rate or per billing period. Defaults to per billing period.",
                        "example": ""
                      },
                      {
                        "name": "isCancellable",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Whether order cancellation appears in the customer portal or not. Defaults to false.",
                        "example": ""
                      }
                    ]
                  },
                  {
                    "name": "addedTimeInSeconds",
                    "kind": "optional",
                    "type": "integer<int64>",
                    "description": "Internally managed. When an order has been added to a pricing plan.",
                    "example": 0
                  },
                  {
                    "name": "commitmentId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Internally managed. The id of an associated commitment.",
                    "example": ""
                  },
                  {
                    "name": "prepaidUris",
                    "kind": "optional",
                    "type": "array",
                    "description": "Internally managed. List of associated prepaid uris",
                    "example": "",
                    "itemType": "string",
                    "customType": "string[]",
                    "itemExample": "",
                    "itemDefault": ""
                  },
                  {
                    "name": "removedTimeInSeconds",
                    "kind": "optional",
                    "type": "integer<int64>",
                    "description": "Internally managed. When an order has been removed from a customer pricing plan.",
                    "example": 0
                  },
                  {
                    "name": "removalContext",
                    "kind": "optional",
                    "type": "map",
                    "description": "Internally managed. Identifying metadata around who and why an order was removed.",
                    "example": "",
                    "customType": "map<string, string>",
                    "schema": []
                  }
                ]
              },
              {
                "name": "firstPlanOverrideGenerators",
                "kind": "optional",
                "type": "object",
                "description": "Plan override generators that were applied to customize pricing when the contract was created.",
                "modelRef": "#/components/schemas/payment.pricing.plans.generators.PlanGenerator.out",
                "customType": "payment.pricing.plans.generators.PlanGenerator.out[]",
                "schema": [],
                "complexType": "oneOf",
                "complexItems": [
                  {
                    "name": "payment.pricing.plans.generators.CustomPlanGenerator.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.plans.generators.CustomPlanGenerator.out",
                    "schema": [
                      {
                        "name": "type",
                        "kind": "optional",
                        "type": "string",
                        "description": "Discriminator field identifying this as a custom pricing plan generator.",
                        "example": "",
                        "default": "custom_pricing_plan"
                      },
                      {
                        "name": "id",
                        "kind": "required",
                        "type": "string",
                        "description": "Unique identifier for this custom pricing plan template.",
                        "example": ""
                      },
                      {
                        "name": "billingPeriod",
                        "kind": "required",
                        "type": "object",
                        "description": "Billing frequency determining how often invoices are generated for this plan.",
                        "modelRef": "#/components/schemas/payment.pricing.BillingPeriod.out",
                        "customType": "payment.pricing.BillingPeriod.out",
                        "schema": [
                          {
                            "name": "interval",
                            "kind": "optional",
                            "type": "string",
                            "description": "Time interval unit for billing cycle such as day, month, or year",
                            "modelRef": "#/components/schemas/payment.pricing.BillingPeriodInterval.in",
                            "customType": "payment.pricing.BillingPeriodInterval.in",
                            "schema": []
                          },
                          {
                            "name": "intervalsCount",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Number of intervals in billing cycle with minimum value of 1",
                            "example": 0
                          }
                        ]
                      },
                      {
                        "name": "planLevelFreeTier",
                        "kind": "optional",
                        "type": "number",
                        "description": "Free usage amount available at the plan level before charges apply.",
                        "example": ""
                      },
                      {
                        "name": "invoiceBasedFeeIds",
                        "kind": "optional",
                        "type": "array",
                        "description": "List of fee identifiers for custom invoice-based cost calculations.",
                        "example": "",
                        "itemType": "string",
                        "customType": "string[]",
                        "itemExample": "",
                        "itemDefault": ""
                      },
                      {
                        "name": "planMinimumPayment",
                        "kind": "optional",
                        "type": "number",
                        "description": "Minimum payment amount required for this pricing plan.",
                        "example": ""
                      },
                      {
                        "name": "minimumPaymentGranularity",
                        "kind": "optional",
                        "type": "string",
                        "description": "Granularity for minimum payment calculations, either hourly or entire invoice period.",
                        "modelRef": "#/components/schemas/payment.pricing.price.UsageGranularity.in",
                        "customType": "payment.pricing.price.UsageGranularity.in",
                        "schema": []
                      },
                      {
                        "name": "planName",
                        "kind": "required",
                        "type": "string",
                        "description": "Human-readable plan name for user interface display.",
                        "example": ""
                      },
                      {
                        "name": "description",
                        "kind": "optional",
                        "type": "string",
                        "description": "Detailed description of the plan for user interface display.",
                        "example": ""
                      },
                      {
                        "name": "feeMap",
                        "kind": "optional",
                        "type": "map",
                        "description": "Map of fee identifiers to their corresponding product plan fee configurations.",
                        "example": "",
                        "customType": "map<string, payment.pricing.ProductPlanFee.in>",
                        "schema": []
                      },
                      {
                        "name": "entitlements",
                        "kind": "optional",
                        "type": "array",
                        "description": "List of feature entitlements or API access rights included in this plan.",
                        "modelRef": "#/components/schemas/payment.pricing.Entitlements.Entitlement.in",
                        "customType": "payment.pricing.Entitlements.Entitlement.in[]",
                        "schema": [
                          {
                            "name": "id",
                            "kind": "required",
                            "type": "string",
                            "description": "Unique identifier for the entitlement used in feature flag controls and access validation.",
                            "example": ""
                          },
                          {
                            "name": "label",
                            "kind": "optional",
                            "type": "string",
                            "description": "Human-readable display name for the entitlement shown in user interfaces and documentation.",
                            "example": ""
                          },
                          {
                            "name": "apiName",
                            "kind": "required",
                            "type": "string",
                            "description": "User-defined API reference name for programmatic entitlement checks and feature gate logic.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "lockingStatus",
                        "kind": "optional",
                        "type": "string",
                        "description": "Current locking status indicating if the plan can be modified.",
                        "modelRef": "#/components/schemas/common.LockingStatus.in",
                        "customType": "common.LockingStatus.in",
                        "schema": []
                      },
                      {
                        "name": "isDefault",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Indicates if this is the default plan for new users.",
                        "example": ""
                      },
                      {
                        "name": "successorPlanId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Successor plan identifier for automatic migration when this plan is deprecated.",
                        "example": ""
                      },
                      {
                        "name": "transitionStrategy",
                        "kind": "optional",
                        "type": "string",
                        "description": "Strategy for transitioning to successor plan at deprecation time.",
                        "modelRef": "#/components/schemas/payment.pricing.SuccessorPlanTransitionStrategy.in",
                        "customType": "payment.pricing.SuccessorPlanTransitionStrategy.in",
                        "schema": []
                      },
                      {
                        "name": "prepaidBuyingRules",
                        "kind": "optional",
                        "type": "object",
                        "description": "Rules governing prepaid card purchases for this pricing plan.",
                        "modelRef": "#/components/schemas/payment.pricing.prepaid.PlanPrepaidBuyingRules.out",
                        "customType": "payment.pricing.prepaid.PlanPrepaidBuyingRules.out",
                        "schema": [
                          {
                            "name": "planFixedFeeIdsToPrepay",
                            "kind": "optional",
                            "type": "array",
                            "description": "List of fixed fee identifiers that must be prepaid for this plan.",
                            "example": "",
                            "itemType": "string",
                            "customType": "string[]",
                            "itemExample": "",
                            "itemDefault": ""
                          },
                          {
                            "name": "planRecurringPrepaidAmount",
                            "kind": "optional",
                            "type": "number",
                            "description": "Recurring prepaid amount purchased every billing period at plan level.",
                            "example": ""
                          },
                          {
                            "name": "productItemRecurringPrepaidAmount",
                            "kind": "optional",
                            "type": "array",
                            "description": "Recurring prepaid amounts purchased every billing period per product item.",
                            "modelRef": "#/components/schemas/payment.pricing.prepaid.PrepaidProductItem.in",
                            "customType": "payment.pricing.prepaid.PrepaidProductItem.in[]",
                            "schema": [
                              {
                                "name": "productItemId",
                                "kind": "optional",
                                "type": "string",
                                "description": "Product item identifier that is associated with the prepaid credit amount.",
                                "example": ""
                              },
                              {
                                "name": "prepaidAmount",
                                "kind": "optional",
                                "type": "number",
                                "description": "Prepaid credit amount allocated to this specific product item for usage.",
                                "example": ""
                              }
                            ]
                          },
                          {
                            "name": "walletMinPrepaidAvailable",
                            "kind": "optional",
                            "type": "number",
                            "description": "Minimum prepaid balance threshold triggering automatic top-up purchases.",
                            "example": ""
                          },
                          {
                            "name": "productItemMinPrepaidAvailable",
                            "kind": "optional",
                            "type": "map",
                            "description": "Product item ID to minimum prepaid balance map for automatic purchases.",
                            "example": "",
                            "customType": "map<string, number>",
                            "schema": []
                          }
                        ]
                      },
                      {
                        "name": "planCurrency",
                        "kind": "optional",
                        "type": "string",
                        "description": "Custom currency for this plan in ISO 4217 format.",
                        "example": "USD"
                      },
                      {
                        "name": "priceGenerators",
                        "kind": "required",
                        "type": "object",
                        "description": "List of price generators defining the billing logic for this plan.",
                        "modelRef": "#/components/schemas/payment.pricing.price.generators.PriceGenerator.out",
                        "customType": "payment.pricing.price.generators.PriceGenerator.out[]",
                        "schema": [],
                        "complexType": "oneOf",
                        "complexItems": [
                          {
                            "name": "payment.pricing.price.generators.CostPlusDimensionPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.CostPlusDimensionPriceGenerator.out",
                            "schema": [
                              {
                                "name": "dimensionKeys",
                                "kind": "required",
                                "type": "array",
                                "description": "Dimension key names used to identify different dimensional variations for cost-plus pricing calculations.",
                                "example": "",
                                "itemType": "string",
                                "customType": "string[]",
                                "itemExample": "",
                                "itemDefault": ""
                              },
                              {
                                "name": "id",
                                "kind": "optional",
                                "type": "string",
                                "description": "Unique identifier for this cost-plus dimensional pricing generator configuration and billing operations.",
                                "example": ""
                              },
                              {
                                "name": "productItemId",
                                "kind": "required",
                                "type": "string",
                                "description": "Product item identifier that this cost-plus dimensional pricing generator applies to for billing.",
                                "example": ""
                              },
                              {
                                "name": "productItemInvoiceLabel",
                                "kind": "optional",
                                "type": "string",
                                "description": "Optional custom label displayed on invoices to override default product item naming conventions.",
                                "example": ""
                              },
                              {
                                "name": "productItemPriceName",
                                "kind": "optional",
                                "type": "string",
                                "description": "Human-readable name for this cost-plus pricing generator displayed in user interfaces and reports.",
                                "example": ""
                              },
                              {
                                "name": "lockingStatus",
                                "kind": "optional",
                                "type": "string",
                                "description": "Lock status indicating whether this cost-plus pricing generator configuration can be modified or deleted.",
                                "modelRef": "#/components/schemas/common.LockingStatus.in",
                                "customType": "common.LockingStatus.in",
                                "schema": []
                              },
                              {
                                "name": "scalar",
                                "kind": "optional",
                                "type": "number",
                                "description": "Numerical multiplier applied to usage values before cost-plus pricing calculations and tier evaluations.",
                                "example": ""
                              },
                              {
                                "name": "dimensionalScalars",
                                "kind": "optional",
                                "type": "array",
                                "description": "Dimension-specific multipliers applied to usage values based on dimensional characteristics for cost-plus pricing.",
                                "modelRef": "#/components/schemas/payment.pricing.price.DimensionalScalar.in",
                                "customType": "payment.pricing.price.DimensionalScalar.in[]",
                                "schema": [
                                  {
                                    "name": "dimensionConstraintMap",
                                    "kind": "optional",
                                    "type": "map",
                                    "description": "Map of dimension name value pairs that must match for scalar to apply.",
                                    "example": "",
                                    "customType": "map<string, string>",
                                    "schema": []
                                  },
                                  {
                                    "name": "scalar",
                                    "kind": "optional",
                                    "type": "number",
                                    "description": "Positive multiplier value applied to usage when dimension constraints are satisfied.",
                                    "example": ""
                                  }
                                ]
                              },
                              {
                                "name": "priceTiers",
                                "kind": "required",
                                "type": "array",
                                "description": "Tiered pricing structure defining cost-plus rates and thresholds for different usage volume ranges.",
                                "modelRef": "#/components/schemas/payment.pricing.price.generators.TieredPriceGroupInfo.out",
                                "customType": "payment.pricing.price.generators.TieredPriceGroupInfo.out[]",
                                "schema": [
                                  {
                                    "name": "dimensionValues",
                                    "kind": "optional",
                                    "type": "array",
                                    "description": "Dimension values that define the specific dimensional combination for this tiered pricing group configuration.",
                                    "example": "",
                                    "itemType": "string",
                                    "customType": "string[]",
                                    "itemExample": "",
                                    "itemDefault": ""
                                  },
                                  {
                                    "name": "priceTiers",
                                    "kind": "optional",
                                    "type": "array",
                                    "description": "Tiered pricing structure defining rates and thresholds for different usage volume ranges or billing periods.",
                                    "modelRef": "#/components/schemas/payment.pricing.price.PriceTier.in",
                                    "customType": "payment.pricing.price.PriceTier.in[]",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "leafNodeType",
                                    "kind": "required",
                                    "type": "string",
                                    "description": "Pricing leaf node type that determines how final price calculations are performed for this tier group.",
                                    "example": ""
                                  }
                                ]
                              },
                              {
                                "name": "allowPartialBatch",
                                "kind": "optional",
                                "type": "boolean",
                                "description": "Flag indicating whether partial batch processing is allowed for cost-plus pricing tier calculations.",
                                "example": ""
                              },
                              {
                                "name": "type",
                                "kind": "optional",
                                "type": "string",
                                "description": "Fixed generator type identifier for cost-plus dimensional pricing template processing and validation.",
                                "example": "",
                                "default": "cost_plus_dimension"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.CostPlusNoDimensionPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.CostPlusNoDimensionPriceGenerator.out",
                            "schema": [
                              {
                                "name": "id",
                                "kind": "optional",
                                "type": "string",
                                "description": "Unique identifier for this cost-plus pricing generator configuration without dimensional variations.",
                                "example": ""
                              },
                              {
                                "name": "productItemId",
                                "kind": "required",
                                "type": "string",
                                "description": "Product item identifier that this cost-plus pricing generator applies to for billing operations.",
                                "example": ""
                              },
                              {
                                "name": "productItemInvoiceLabel",
                                "kind": "optional",
                                "type": "string",
                                "description": "Optional custom label displayed on invoices to override default product item naming conventions.",
                                "example": ""
                              },
                              {
                                "name": "productItemPriceName",
                                "kind": "optional",
                                "type": "string",
                                "description": "Human-readable name for this cost-plus pricing generator displayed in user interfaces and reports.",
                                "example": ""
                              },
                              {
                                "name": "scalar",
                                "kind": "optional",
                                "type": "number",
                                "description": "Numerical multiplier applied to usage values before cost-plus pricing calculations and tier evaluations.",
                                "example": ""
                              },
                              {
                                "name": "dimensionalScalars",
                                "kind": "optional",
                                "type": "array",
                                "description": "Dimension-specific multipliers applied to usage values despite this generator having no primary dimensions.",
                                "modelRef": "#/components/schemas/payment.pricing.price.DimensionalScalar.in",
                                "customType": "payment.pricing.price.DimensionalScalar.in[]",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "priceTiers",
                                "kind": "required",
                                "type": "array",
                                "description": "Tiered pricing structure defining cost-plus rates and thresholds for different usage volume ranges.",
                                "modelRef": "#/components/schemas/payment.pricing.price.PriceTier.in",
                                "customType": "payment.pricing.price.PriceTier.in[]",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "allowPartialBatch",
                                "kind": "optional",
                                "type": "boolean",
                                "description": "Flag indicating whether partial batch processing is allowed for cost-plus pricing tier calculations.",
                                "example": ""
                              },
                              {
                                "name": "type",
                                "kind": "optional",
                                "type": "string",
                                "description": "Fixed generator type identifier for cost-plus non-dimensional pricing template processing and validation.",
                                "example": "",
                                "default": "cost_plus_no_dimension"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.FlatRatePriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.FlatRatePriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.FlatRateWithOveragesPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.FlatRateWithOveragesPriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.InterchangePlusNoDimensionPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.InterchangePlusNoDimensionPriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.InterchangePlusDimensionPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.InterchangePlusDimensionPriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.SubscriptionWithOveragePriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.SubscriptionWithOveragePriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.TieredSeatBasedGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.TieredSeatBasedGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.TieredSeatBasedDimensionGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.TieredSeatBasedDimensionGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.UltraFrequencyNoDimensionPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.UltraFrequencyNoDimensionPriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.UltraFrequencyDimensionPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.UltraFrequencyDimensionPriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.UltraFrequencySubscriptionWithOveragePriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.UltraFrequencySubscriptionWithOveragePriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.UsageBasedDimensionPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedDimensionPriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.MaxUsageBasedDimensionPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.MaxUsageBasedDimensionPriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.SumUsageBasedDimensionPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.SumUsageBasedDimensionPriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.UsageBasedNoDimensionPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedNoDimensionPriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.MaxUsageBasedNoDimensionPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.MaxUsageBasedNoDimensionPriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.SumUsageBasedNoDimensionPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.SumUsageBasedNoDimensionPriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.UsageBasedVolumePriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedVolumePriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.UsageBasedVolumeDimensionPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedVolumeDimensionPriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "name": "invoiceBasedFees",
                        "kind": "optional",
                        "type": "object",
                        "description": "List of invoice-based service fees applied to this plan.",
                        "modelRef": "#/components/schemas/payment.pricing.invoice_based_fees.InvoiceBasedFee.out",
                        "customType": "payment.pricing.invoice_based_fees.InvoiceBasedFee.out[]",
                        "schema": [],
                        "complexType": "oneOf",
                        "complexItems": [
                          {
                            "name": "payment.pricing.invoice_based_fees.ConstantInvoiceRatioFee.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.invoice_based_fees.ConstantInvoiceRatioFee.out",
                            "schema": [
                              {
                                "name": "type",
                                "kind": "optional",
                                "type": "string",
                                "description": "Discriminator field identifying this as a constant ratio fee type.",
                                "example": "",
                                "default": "constant_invoice_ratio_fee"
                              },
                              {
                                "name": "productId",
                                "kind": "optional",
                                "type": "string",
                                "description": "Product identifier this invoice-based fee applies to.",
                                "example": ""
                              },
                              {
                                "name": "id",
                                "kind": "optional",
                                "type": "string",
                                "description": "Unique identifier for this invoice-based fee configuration.",
                                "example": ""
                              },
                              {
                                "name": "name",
                                "kind": "optional",
                                "type": "string",
                                "description": "Human-readable name for this fee configuration.",
                                "example": ""
                              },
                              {
                                "name": "description",
                                "kind": "optional",
                                "type": "string",
                                "description": "Detailed explanation of this fee's purpose and calculation method.",
                                "example": ""
                              },
                              {
                                "name": "lockingStatus",
                                "kind": "optional",
                                "type": "string",
                                "description": "Current locking status indicating if the fee is active or locked.",
                                "modelRef": "#/components/schemas/common.LockingStatus.in",
                                "customType": "common.LockingStatus.in",
                                "schema": []
                              },
                              {
                                "name": "lastUpdateTimeInMillis",
                                "kind": "optional",
                                "type": "integer<int64>",
                                "description": "Unix timestamp in milliseconds of the last update to this fee.",
                                "example": 0
                              },
                              {
                                "name": "percentsOfInvoice",
                                "kind": "optional",
                                "type": "number",
                                "description": "Percentage of invoice total to charge as fee in decimal format.",
                                "example": ""
                              },
                              {
                                "name": "minimumFeePerFullCycle",
                                "kind": "optional",
                                "type": "number",
                                "description": "Optional minimum fee amount charged per complete billing cycle.",
                                "example": ""
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "name": "realTimePricing",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Enables real-time pricing workflows such as automatic top-ups for this plan.",
                        "example": ""
                      }
                    ]
                  },
                  {
                    "name": "payment.pricing.plans.generators.FlatRatePlanGenerator.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.plans.generators.FlatRatePlanGenerator.out",
                    "schema": [
                      {
                        "name": "id",
                        "kind": "required",
                        "type": "string",
                        "description": "Unique identifier for this flat rate pricing plan template.",
                        "example": ""
                      },
                      {
                        "name": "billingPeriod",
                        "kind": "required",
                        "type": "object",
                        "description": "Billing frequency determining how often invoices are generated for this plan.",
                        "modelRef": "#/components/schemas/payment.pricing.BillingPeriod.out",
                        "customType": "payment.pricing.BillingPeriod.out",
                        "schema": [
                          {
                            "name": "interval",
                            "kind": "optional",
                            "type": "string",
                            "description": "Time interval unit for billing cycle such as day, month, or year",
                            "modelRef": "#/components/schemas/payment.pricing.BillingPeriodInterval.in",
                            "customType": "payment.pricing.BillingPeriodInterval.in",
                            "schema": []
                          },
                          {
                            "name": "intervalsCount",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Number of intervals in billing cycle with minimum value of 1",
                            "example": 0
                          }
                        ]
                      },
                      {
                        "name": "planName",
                        "kind": "required",
                        "type": "string",
                        "description": "Human-readable name for this flat rate pricing plan.",
                        "example": ""
                      },
                      {
                        "name": "priceGenerators",
                        "kind": "required",
                        "type": "array",
                        "description": "List of flat rate price generators defining the billing logic.",
                        "modelRef": "#/components/schemas/payment.pricing.price.generators.FlatRatePriceGenerator.out",
                        "customType": "payment.pricing.price.generators.FlatRatePriceGenerator.out[]",
                        "schema": [
                          {
                            "name": "id",
                            "kind": "required",
                            "type": "string",
                            "description": "Unique identifier for this flat rate pricing generator configuration and billing operations.",
                            "example": ""
                          },
                          {
                            "name": "flatRate",
                            "kind": "required",
                            "type": "number",
                            "description": "Fixed monetary amount charged regardless of usage volume for flat rate pricing model.",
                            "example": ""
                          },
                          {
                            "name": "productItemId",
                            "kind": "required",
                            "type": "string",
                            "description": "Product item identifier that this flat rate pricing generator applies to for billing operations.",
                            "example": ""
                          },
                          {
                            "name": "lockingStatus",
                            "kind": "optional",
                            "type": "string",
                            "description": "Lock status indicating whether this flat rate pricing generator configuration can be modified.",
                            "modelRef": "#/components/schemas/common.LockingStatus.in",
                            "customType": "common.LockingStatus.in",
                            "schema": []
                          },
                          {
                            "name": "productItemInvoiceLabel",
                            "kind": "optional",
                            "type": "string",
                            "description": "Optional custom label displayed on invoices to override default product item naming conventions.",
                            "example": ""
                          },
                          {
                            "name": "productItemPriceName",
                            "kind": "optional",
                            "type": "string",
                            "description": "Human-readable name for this flat rate pricing generator displayed in user interfaces.",
                            "example": ""
                          },
                          {
                            "name": "scalar",
                            "kind": "optional",
                            "type": "number",
                            "description": "Optional numerical multiplier applied to usage values before flat rate pricing calculations.",
                            "example": ""
                          },
                          {
                            "name": "dimensionalScalars",
                            "kind": "optional",
                            "type": "array",
                            "description": "Optional dimension-specific multipliers applied to usage values for flat rate pricing variations.",
                            "modelRef": "#/components/schemas/payment.pricing.price.DimensionalScalar.in",
                            "customType": "payment.pricing.price.DimensionalScalar.in[]",
                            "schema": [
                              {
                                "name": "dimensionConstraintMap",
                                "kind": "optional",
                                "type": "map",
                                "description": "Map of dimension name value pairs that must match for scalar to apply.",
                                "example": "",
                                "customType": "map<string, string>",
                                "schema": []
                              },
                              {
                                "name": "scalar",
                                "kind": "optional",
                                "type": "number",
                                "description": "Positive multiplier value applied to usage when dimension constraints are satisfied.",
                                "example": ""
                              }
                            ]
                          },
                          {
                            "name": "usageTransformer",
                            "kind": "optional",
                            "type": "object",
                            "description": "Optional usage data transformer configuration for modifying usage before flat rate pricing.",
                            "modelRef": "#/components/schemas/payment.pricing.UsageTransformer.out",
                            "customType": "payment.pricing.UsageTransformer.out",
                            "schema": [
                              {
                                "name": "id",
                                "kind": "optional",
                                "type": "string",
                                "description": "Unique identifier for a particular usage transformer.",
                                "example": ""
                              },
                              {
                                "name": "name",
                                "kind": "optional",
                                "type": "string",
                                "description": "Name given to the usage transformer.",
                                "example": ""
                              },
                              {
                                "name": "transformUsageDimensionName",
                                "kind": "optional",
                                "type": "string",
                                "description": "Name of the dimension used to transform / scale usage.",
                                "example": ""
                              },
                              {
                                "name": "productItemId",
                                "kind": "optional",
                                "type": "string",
                                "description": "Product item id associated with the usage transformer.",
                                "example": ""
                              },
                              {
                                "name": "dimensionsInterpolations",
                                "kind": "optional",
                                "type": "object",
                                "description": "List of dimension interpolations, used to derive new dimensions and their values.",
                                "modelRef": "#/components/schemas/common.dimensions_interpolation.DimensionsInterpolation.out",
                                "customType": "common.dimensions_interpolation.DimensionsInterpolation.out[]",
                                "schema": [],
                                "complexType": "oneOf",
                                "complexItems": [
                                  {
                                    "name": "common.dimensions_interpolation.ListNumericInterpolation.in",
                                    "description": "",
                                    "modelRef": "#/components/schemas/common.dimensions_interpolation.ListNumericInterpolation.in",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "common.dimensions_interpolation.TableInterpolation.out",
                                    "description": "",
                                    "modelRef": "#/components/schemas/common.dimensions_interpolation.TableInterpolation.out",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  },
                                  {
                                    "name": "common.dimensions_interpolation.TiersInterpolation.in",
                                    "description": "",
                                    "modelRef": "#/components/schemas/common.dimensions_interpolation.TiersInterpolation.in",
                                    "schema": [
                                      {
                                        "name": "",
                                        "description": "",
                                        "customType": "Max depth limit reached"
                                      }
                                    ]
                                  }
                                ]
                              },
                              {
                                "name": "requiredDimensions",
                                "kind": "optional",
                                "type": "array",
                                "description": "Required dimensions.",
                                "example": "",
                                "itemType": "string",
                                "customType": "string[]",
                                "itemExample": "",
                                "itemDefault": ""
                              },
                              {
                                "name": "lockingStatus",
                                "kind": "optional",
                                "type": "string",
                                "description": "Indicates if the plan can be modified or not.",
                                "modelRef": "#/components/schemas/common.LockingStatus.in",
                                "customType": "common.LockingStatus.in",
                                "schema": [
                                  {
                                    "name": "",
                                    "description": "",
                                    "customType": "Max depth limit reached"
                                  }
                                ]
                              },
                              {
                                "name": "lastUpdateTimeInMillis",
                                "kind": "optional",
                                "type": "integer<int64>",
                                "description": "Last update time, in [Unix time](https://en.wikipedia.org/wiki/Unix_time) (milliseconds).",
                                "example": 0
                              }
                            ]
                          },
                          {
                            "name": "type",
                            "kind": "optional",
                            "type": "string",
                            "description": "Fixed generator type identifier for flat rate pricing template processing and validation.",
                            "example": "",
                            "default": "flat_rate"
                          }
                        ]
                      },
                      {
                        "name": "description",
                        "kind": "optional",
                        "type": "string",
                        "description": "Detailed description of the flat rate plan for user interface.",
                        "example": ""
                      },
                      {
                        "name": "invoiceBasedFeeIds",
                        "kind": "optional",
                        "type": "array",
                        "description": "List of fee identifiers for custom invoice-based cost calculations.",
                        "example": "",
                        "itemType": "string",
                        "customType": "string[]",
                        "itemExample": "",
                        "itemDefault": ""
                      },
                      {
                        "name": "isDefault",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Indicates if this is the default flat rate plan for users.",
                        "example": ""
                      },
                      {
                        "name": "lockingStatus",
                        "kind": "optional",
                        "type": "string",
                        "description": "Current locking status indicating if the plan can be modified.",
                        "modelRef": "#/components/schemas/common.LockingStatus.in",
                        "customType": "common.LockingStatus.in",
                        "schema": []
                      },
                      {
                        "name": "planLevelFreeTier",
                        "kind": "optional",
                        "type": "number",
                        "description": "Free usage amount available at the plan level before charges apply.",
                        "example": ""
                      },
                      {
                        "name": "successorPlanId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Successor plan identifier for automatic migration when this plan is deprecated.",
                        "example": ""
                      },
                      {
                        "name": "transitionStrategy",
                        "kind": "optional",
                        "type": "string",
                        "description": "Strategy for transitioning to successor plan at deprecation time.",
                        "modelRef": "#/components/schemas/payment.pricing.SuccessorPlanTransitionStrategy.in",
                        "customType": "payment.pricing.SuccessorPlanTransitionStrategy.in",
                        "schema": []
                      },
                      {
                        "name": "entitlements",
                        "kind": "optional",
                        "type": "array",
                        "description": "List of feature entitlements or API access rights included in plan.",
                        "modelRef": "#/components/schemas/payment.pricing.Entitlements.Entitlement.in",
                        "customType": "payment.pricing.Entitlements.Entitlement.in[]",
                        "schema": [
                          {
                            "name": "id",
                            "kind": "required",
                            "type": "string",
                            "description": "Unique identifier for the entitlement used in feature flag controls and access validation.",
                            "example": ""
                          },
                          {
                            "name": "label",
                            "kind": "optional",
                            "type": "string",
                            "description": "Human-readable display name for the entitlement shown in user interfaces and documentation.",
                            "example": ""
                          },
                          {
                            "name": "apiName",
                            "kind": "required",
                            "type": "string",
                            "description": "User-defined API reference name for programmatic entitlement checks and feature gate logic.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "type",
                        "kind": "optional",
                        "type": "string",
                        "description": "Discriminator field identifying this as a flat rate plan generator.",
                        "example": "",
                        "default": "flat_rate"
                      }
                    ]
                  },
                  {
                    "name": "payment.pricing.plans.generators.PayAndGoPlanGenerator.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.plans.generators.PayAndGoPlanGenerator.out",
                    "schema": [
                      {
                        "name": "id",
                        "kind": "required",
                        "type": "string",
                        "description": "Unique identifier for this pay-and-go pricing plan template.",
                        "example": ""
                      },
                      {
                        "name": "billingPeriod",
                        "kind": "required",
                        "type": "object",
                        "description": "Billing frequency determining how often invoices are generated for this plan.",
                        "modelRef": "#/components/schemas/payment.pricing.BillingPeriod.out",
                        "customType": "payment.pricing.BillingPeriod.out",
                        "schema": [
                          {
                            "name": "interval",
                            "kind": "optional",
                            "type": "string",
                            "description": "Time interval unit for billing cycle such as day, month, or year",
                            "modelRef": "#/components/schemas/payment.pricing.BillingPeriodInterval.in",
                            "customType": "payment.pricing.BillingPeriodInterval.in",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "intervalsCount",
                            "kind": "optional",
                            "type": "integer<int32>",
                            "description": "Number of intervals in billing cycle with minimum value of 1",
                            "example": 0
                          }
                        ]
                      },
                      {
                        "name": "planName",
                        "kind": "required",
                        "type": "string",
                        "description": "Human-readable name for this pay-and-go pricing plan.",
                        "example": ""
                      },
                      {
                        "name": "prepaidBuyingRules",
                        "kind": "required",
                        "type": "object",
                        "description": "Rules governing prepaid credit purchases for this pay-and-go plan.",
                        "modelRef": "#/components/schemas/payment.pricing.prepaid.PlanPrepaidBuyingRules.out",
                        "customType": "payment.pricing.prepaid.PlanPrepaidBuyingRules.out",
                        "schema": [
                          {
                            "name": "planFixedFeeIdsToPrepay",
                            "kind": "optional",
                            "type": "array",
                            "description": "List of fixed fee identifiers that must be prepaid for this plan.",
                            "example": "",
                            "itemType": "string",
                            "customType": "string[]",
                            "itemExample": "",
                            "itemDefault": ""
                          },
                          {
                            "name": "planRecurringPrepaidAmount",
                            "kind": "optional",
                            "type": "number",
                            "description": "Recurring prepaid amount purchased every billing period at plan level.",
                            "example": ""
                          },
                          {
                            "name": "productItemRecurringPrepaidAmount",
                            "kind": "optional",
                            "type": "array",
                            "description": "Recurring prepaid amounts purchased every billing period per product item.",
                            "modelRef": "#/components/schemas/payment.pricing.prepaid.PrepaidProductItem.in",
                            "customType": "payment.pricing.prepaid.PrepaidProductItem.in[]",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "walletMinPrepaidAvailable",
                            "kind": "optional",
                            "type": "number",
                            "description": "Minimum prepaid balance threshold triggering automatic top-up purchases.",
                            "example": ""
                          },
                          {
                            "name": "productItemMinPrepaidAvailable",
                            "kind": "optional",
                            "type": "map",
                            "description": "Product item ID to minimum prepaid balance map for automatic purchases.",
                            "example": "",
                            "customType": "map<string, number>",
                            "schema": []
                          }
                        ]
                      },
                      {
                        "name": "priceGenerators",
                        "kind": "required",
                        "type": "object",
                        "description": "List of usage-based price generators defining the billing logic.",
                        "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedPriceGenerator.out",
                        "customType": "payment.pricing.price.generators.UsageBasedPriceGenerator.out[]",
                        "schema": [],
                        "complexType": "oneOf",
                        "complexItems": [
                          {
                            "name": "payment.pricing.price.generators.UsageBasedDimensionPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedDimensionPriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.UsageBasedNoDimensionPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedNoDimensionPriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.UsageBasedVolumePriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedVolumePriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.UsageBasedVolumeDimensionPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedVolumeDimensionPriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "name": "description",
                        "kind": "optional",
                        "type": "string",
                        "description": "Detailed description of the pay-and-go plan for user interface.",
                        "example": ""
                      },
                      {
                        "name": "feeMap",
                        "kind": "optional",
                        "type": "map",
                        "description": "Map of fixed fee identifiers to their product plan configurations.",
                        "example": "",
                        "customType": "map<string, payment.pricing.ProductPlanFee.in>",
                        "schema": []
                      },
                      {
                        "name": "invoiceBasedFeeIds",
                        "kind": "optional",
                        "type": "array",
                        "description": "List of invoice-based fee identifiers added to invoices.",
                        "example": "",
                        "itemType": "string",
                        "customType": "string[]",
                        "itemExample": "",
                        "itemDefault": ""
                      },
                      {
                        "name": "isDefault",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Indicates if this is the default pay-and-go plan for users.",
                        "example": ""
                      },
                      {
                        "name": "lockingStatus",
                        "kind": "optional",
                        "type": "string",
                        "description": "Current locking status indicating if the plan can be modified.",
                        "modelRef": "#/components/schemas/common.LockingStatus.in",
                        "customType": "common.LockingStatus.in",
                        "schema": []
                      },
                      {
                        "name": "planLevelFreeTier",
                        "kind": "optional",
                        "type": "number",
                        "description": "Free usage amount available at the plan level before charges apply.",
                        "example": ""
                      },
                      {
                        "name": "successorPlanId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Successor plan identifier for automatic migration when this plan is deprecated.",
                        "example": ""
                      },
                      {
                        "name": "transitionStrategy",
                        "kind": "optional",
                        "type": "string",
                        "description": "Strategy for transitioning to successor plan at deprecation time.",
                        "modelRef": "#/components/schemas/payment.pricing.SuccessorPlanTransitionStrategy.in",
                        "customType": "payment.pricing.SuccessorPlanTransitionStrategy.in",
                        "schema": []
                      },
                      {
                        "name": "entitlements",
                        "kind": "optional",
                        "type": "array",
                        "description": "List of feature entitlements or API access rights included in plan.",
                        "modelRef": "#/components/schemas/payment.pricing.Entitlements.Entitlement.in",
                        "customType": "payment.pricing.Entitlements.Entitlement.in[]",
                        "schema": [
                          {
                            "name": "id",
                            "kind": "required",
                            "type": "string",
                            "description": "Unique identifier for the entitlement used in feature flag controls and access validation.",
                            "example": ""
                          },
                          {
                            "name": "label",
                            "kind": "optional",
                            "type": "string",
                            "description": "Human-readable display name for the entitlement shown in user interfaces and documentation.",
                            "example": ""
                          },
                          {
                            "name": "apiName",
                            "kind": "required",
                            "type": "string",
                            "description": "User-defined API reference name for programmatic entitlement checks and feature gate logic.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "type",
                        "kind": "optional",
                        "type": "string",
                        "description": "Discriminator field identifying this as a pay-and-go plan generator.",
                        "example": "",
                        "default": "pay_and_go"
                      }
                    ]
                  },
                  {
                    "name": "payment.pricing.plans.generators.UsageBasedPlanGenerator.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.plans.generators.UsageBasedPlanGenerator.out",
                    "schema": [
                      {
                        "name": "id",
                        "kind": "required",
                        "type": "string",
                        "description": "Unique identifier for this usage-based pricing plan template.",
                        "example": ""
                      },
                      {
                        "name": "billingPeriod",
                        "kind": "required",
                        "type": "object",
                        "description": "Billing frequency determining how often invoices are generated for this plan.",
                        "modelRef": "#/components/schemas/payment.pricing.BillingPeriod.out",
                        "customType": "payment.pricing.BillingPeriod.out",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "planName",
                        "kind": "required",
                        "type": "string",
                        "description": "Human-readable name for this usage-based pricing plan.",
                        "example": ""
                      },
                      {
                        "name": "priceGenerators",
                        "kind": "required",
                        "type": "object",
                        "description": "List of usage-based price generators defining the billing logic.",
                        "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedPriceGenerator.out",
                        "customType": "payment.pricing.price.generators.UsageBasedPriceGenerator.out[]",
                        "schema": [],
                        "complexType": "oneOf",
                        "complexItems": [
                          {
                            "name": "payment.pricing.price.generators.UsageBasedDimensionPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedDimensionPriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.UsageBasedNoDimensionPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedNoDimensionPriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.UsageBasedVolumePriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedVolumePriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          },
                          {
                            "name": "payment.pricing.price.generators.UsageBasedVolumeDimensionPriceGenerator.out",
                            "description": "",
                            "modelRef": "#/components/schemas/payment.pricing.price.generators.UsageBasedVolumeDimensionPriceGenerator.out",
                            "schema": [
                              {
                                "name": "",
                                "description": "",
                                "customType": "Max depth limit reached"
                              }
                            ]
                          }
                        ]
                      },
                      {
                        "name": "description",
                        "kind": "optional",
                        "type": "string",
                        "description": "Detailed description of the usage-based plan for user interface.",
                        "example": ""
                      },
                      {
                        "name": "invoiceBasedFeeIds",
                        "kind": "optional",
                        "type": "array",
                        "description": "List of fee identifiers for custom invoice-based cost calculations.",
                        "example": "",
                        "itemType": "string",
                        "customType": "string[]",
                        "itemExample": "",
                        "itemDefault": ""
                      },
                      {
                        "name": "isDefault",
                        "kind": "optional",
                        "type": "boolean",
                        "description": "Indicates if this is the default usage-based plan for users.",
                        "example": ""
                      },
                      {
                        "name": "lockingStatus",
                        "kind": "optional",
                        "type": "string",
                        "description": "Current locking status indicating if the plan can be modified.",
                        "modelRef": "#/components/schemas/common.LockingStatus.in",
                        "customType": "common.LockingStatus.in",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "planLevelFreeTier",
                        "kind": "optional",
                        "type": "number",
                        "description": "Free usage amount available at the plan level before charges apply.",
                        "example": ""
                      },
                      {
                        "name": "successorPlanId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Successor plan identifier for automatic migration when this plan is deprecated.",
                        "example": ""
                      },
                      {
                        "name": "transitionStrategy",
                        "kind": "optional",
                        "type": "string",
                        "description": "Strategy for transitioning to successor plan at deprecation time.",
                        "modelRef": "#/components/schemas/payment.pricing.SuccessorPlanTransitionStrategy.in",
                        "customType": "payment.pricing.SuccessorPlanTransitionStrategy.in",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "entitlements",
                        "kind": "optional",
                        "type": "array",
                        "description": "List of feature entitlements or API access rights included in plan.",
                        "modelRef": "#/components/schemas/payment.pricing.Entitlements.Entitlement.in",
                        "customType": "payment.pricing.Entitlements.Entitlement.in[]",
                        "schema": [
                          {
                            "name": "",
                            "description": "",
                            "customType": "Max depth limit reached"
                          }
                        ]
                      },
                      {
                        "name": "type",
                        "kind": "optional",
                        "type": "string",
                        "description": "Discriminator field identifying this as a usage-based plan generator.",
                        "example": "",
                        "default": "pure_usage_based"
                      }
                    ]
                  },
                  {
                    "name": "payment.pricing.plans.generators.SeatBasedPlanGenerator.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.plans.generators.SeatBasedPlanGenerator.out",
                    "schema": [
                      {
                        "name": "",
                        "description": "",
                        "customType": "Max depth limit reached"
                      }
                    ]
                  },
                  {
                    "name": "payment.pricing.plans.generators.SubscriptionPlanGenerator.out",
                    "description": "",
                    "modelRef": "#/components/schemas/payment.pricing.plans.generators.SubscriptionPlanGenerator.out",
                    "schema": [
                      {
                        "name": "",
                        "description": "",
                        "customType": "Max depth limit reached"
                      }
                    ]
                  }
                ]
              },
              {
                "name": "commitmentStateHistory",
                "kind": "optional",
                "type": "map",
                "description": "Historical record of commitment state changes tracked by timestamp keys.",
                "example": "",
                "customType": "map<string, payment.pricing.commitments.exit_clauses.CommitmentState.out>",
                "schema": []
              }
            ],
            "modelRef": "#/components/schemas/payment.pricing.customer.CustomerCommitmentContract.out",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "400",
        "description": "Bad request - invalid installment schedule or payment configuration",
        "jsonExample": "",
        "isExpanded": true
      },
      {
        "statusCode": "403",
        "description": "Forbidden - customer not eligible for installment payment terms",
        "jsonExample": "",
        "isExpanded": true
      },
      {
        "statusCode": "409",
        "description": "Conflict - installment commitment conflicts with existing payment agreements",
        "jsonExample": "",
        "isExpanded": true
      }
    ],
    "hasXCodeSamples": false,
    "examples": {
      "languages": [
        {
          "id": "_09f0gF5cSFcnYgRE1qJj",
          "language": "curl",
          "label": "cURL",
          "code": "curl --request POST \\\n     --url https://app.amberflo.io/payments/pricing/amberflo/customer-commitment/installments_commitment \\\n     --header 'accept: application/json' \\\n     --header 'content-type: application/json' \\\n     --data '{\n     \"type\": \"installments_commitment\",\n     \"customerId\": \"\",\n     \"planId\": \"\",\n     \"planOverrideGenerator\": {\n     \"type\": \"custom_pricing_plan\",\n     \"id\": \"\",\n     \"billingPeriod\": {},\n     \"planName\": \"\",\n     \"entitlements\": [\n     {\n     \"id\": \"\",\n     \"apiName\": \"\"\n     }\n     ],\n     \"priceGenerators\": {\n     \"dimensionKeys\": [],\n     \"productItemId\": \"\",\n     \"priceTiers\": [\n     {\n     \"leafNodeType\": \"\"\n     }\n     ],\n     \"type\": \"cost_plus_dimension\"\n     },\n     \"invoiceBasedFees\": {\n     \"type\": \"constant_invoice_ratio_fee\"\n     }\n     },\n     \"label\": \"\",\n     \"cycles\": 0,\n     \"trueup\": {\n     \"minimumPayment\": \"\",\n     \"interval\": \"\"\n     },\n     \"credits\": {\n     \"value\": \"\",\n     \"label\": \"\"\n     },\n     \"reward\": {\n     \"value\": \"\",\n     \"label\": \"\"\n     },\n     \"exitClauses\": {\n     \"type\": \"termination_grace_period\",\n     \"gracePeriodInDays\": 0\n     }\n     }'"
        },
        {
          "id": "BXHZnJI0a8LBJhIEhs7Cx",
          "language": "javascript",
          "label": "javascript",
          "code": "var myHeaders = new Headers();\nmyHeaders.append(\"accept\", \"application/json\");\nmyHeaders.append(\"content-type\", \"application/json\");\n\nvar raw = JSON.stringify({\n   \"type\": \"installments_commitment\",\n   \"customerId\": \"\",\n   \"planId\": \"\",\n   \"planOverrideGenerator\": {\n      \"type\": \"custom_pricing_plan\",\n      \"id\": \"\",\n      \"billingPeriod\": {},\n      \"planName\": \"\",\n      \"entitlements\": [\n         {\n            \"id\": \"\",\n            \"apiName\": \"\"\n         }\n      ],\n      \"priceGenerators\": {\n         \"dimensionKeys\": [],\n         \"productItemId\": \"\",\n         \"priceTiers\": [\n            {\n               \"leafNodeType\": \"\"\n            }\n         ],\n         \"type\": \"cost_plus_dimension\"\n      },\n      \"invoiceBasedFees\": {\n         \"type\": \"constant_invoice_ratio_fee\"\n      }\n   },\n   \"label\": \"\",\n   \"cycles\": 0,\n   \"trueup\": {\n      \"minimumPayment\": \"\",\n      \"interval\": \"\"\n   },\n   \"credits\": {\n      \"value\": \"\",\n      \"label\": \"\"\n   },\n   \"reward\": {\n      \"value\": \"\",\n      \"label\": \"\"\n   },\n   \"exitClauses\": {\n      \"type\": \"termination_grace_period\",\n      \"gracePeriodInDays\": 0\n   }\n});\n\nvar requestOptions = {\n   method: 'POST',\n   headers: myHeaders,\n   body: raw,\n   redirect: 'follow'\n};\n\nfetch(\"https://app.amberflo.io/payments/pricing/amberflo/customer-commitment/installments_commitment\", requestOptions)\n   .then(response => response.text())\n   .then(result => console.log(result))\n   .catch(error => console.log('error', error));"
        },
        {
          "id": "KXWxjfsnX6GhQ0IcAQPHF",
          "language": "ruby",
          "label": "Ruby",
          "code": "require \"uri\"\nrequire \"json\"\nrequire \"net/http\"\n\nurl = URI(\"https://app.amberflo.io/payments/pricing/amberflo/customer-commitment/installments_commitment\")\n\nhttps = Net::HTTP.new(url.host, url.port)\nhttps.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"accept\"] = \"application/json\"\nrequest[\"content-type\"] = \"application/json\"\nrequest.body = JSON.dump({\n   \"type\": \"installments_commitment\",\n   \"customerId\": \"\",\n   \"planId\": \"\",\n   \"planOverrideGenerator\": {\n      \"type\": \"custom_pricing_plan\",\n      \"id\": \"\",\n      \"billingPeriod\": {},\n      \"planName\": \"\",\n      \"entitlements\": [\n         {\n            \"id\": \"\",\n            \"apiName\": \"\"\n         }\n      ],\n      \"priceGenerators\": {\n         \"dimensionKeys\": [],\n         \"productItemId\": \"\",\n         \"priceTiers\": [\n            {\n               \"leafNodeType\": \"\"\n            }\n         ],\n         \"type\": \"cost_plus_dimension\"\n      },\n      \"invoiceBasedFees\": {\n         \"type\": \"constant_invoice_ratio_fee\"\n      }\n   },\n   \"label\": \"\",\n   \"cycles\": 0,\n   \"trueup\": {\n      \"minimumPayment\": \"\",\n      \"interval\": \"\"\n   },\n   \"credits\": {\n      \"value\": \"\",\n      \"label\": \"\"\n   },\n   \"reward\": {\n      \"value\": \"\",\n      \"label\": \"\"\n   },\n   \"exitClauses\": {\n      \"type\": \"termination_grace_period\",\n      \"gracePeriodInDays\": 0\n   }\n})\n\nresponse = https.request(request)\nputs response.read_body\n"
        },
        {
          "id": "srW_darfuRp_VPTcDQH84",
          "language": "python",
          "label": "Python",
          "code": "import requests\nimport json\n\nurl = \"https://app.amberflo.io/payments/pricing/amberflo/customer-commitment/installments_commitment\"\n\npayload = json.dumps({\n   \"type\": \"installments_commitment\",\n   \"customerId\": \"\",\n   \"planId\": \"\",\n   \"planOverrideGenerator\": {\n      \"type\": \"custom_pricing_plan\",\n      \"id\": \"\",\n      \"billingPeriod\": {},\n      \"planName\": \"\",\n      \"entitlements\": [\n         {\n            \"id\": \"\",\n            \"apiName\": \"\"\n         }\n      ],\n      \"priceGenerators\": {\n         \"dimensionKeys\": [],\n         \"productItemId\": \"\",\n         \"priceTiers\": [\n            {\n               \"leafNodeType\": \"\"\n            }\n         ],\n         \"type\": \"cost_plus_dimension\"\n      },\n      \"invoiceBasedFees\": {\n         \"type\": \"constant_invoice_ratio_fee\"\n      }\n   },\n   \"label\": \"\",\n   \"cycles\": 0,\n   \"trueup\": {\n      \"minimumPayment\": \"\",\n      \"interval\": \"\"\n   },\n   \"credits\": {\n      \"value\": \"\",\n      \"label\": \"\"\n   },\n   \"reward\": {\n      \"value\": \"\",\n      \"label\": \"\"\n   },\n   \"exitClauses\": {\n      \"type\": \"termination_grace_period\",\n      \"gracePeriodInDays\": 0\n   }\n})\nheaders = {\n   'accept': 'application/json',\n   'content-type': 'application/json'\n}\n\nresponse = requests.request(\"POST\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
        }
      ],
      "selectedLanguageId": "_09f0gF5cSFcnYgRE1qJj"
    },
    "results": {
      "languages": [
        {
          "id": "response-0-200",
          "language": "200",
          "code": "// Installment commitment successfully created\n{\n  \"contractGenerator\": {},\n  \"contract\": {\n    \"id\": \"\",\n    \"type\": \"\",\n    \"accountId\": \"\",\n    \"customerId\": \"\",\n    \"customerObligations\": {},\n    \"accountObligations\": {},\n    \"commitmentViolationPolicy\": {\n      \"notifyPerCustomerViolations\": false,\n      \"notifyPerAccountViolations\": false,\n      \"compensateOnCustomerViolation\": false,\n      \"compensateOnAccountViolation\": false\n    },\n    \"timeRange\": {\n      \"startTimeInSeconds\": \"\",\n      \"endTimeInSeconds\": \"\"\n    },\n    \"productId\": \"\",\n    \"commitmentEndingConfig\": {\n      \"commitmentRestartConfig\": {\n        \"latestDecisionTimeSeconds\": \"\",\n        \"optOut\": false\n      },\n      \"extendPrepaidCardEndTimeInSeconds\": \"\"\n    },\n    \"exitClauses\": {}\n  },\n  \"firstCustomerPlan\": {\n    \"productId\": \"\",\n    \"productPlanId\": \"\",\n    \"customerId\": \"\",\n    \"startTimeInSeconds\": \"\",\n    \"endTimeInSeconds\": \"\",\n    \"relationId\": \"\",\n    \"createdTimeInSeconds\": \"\"\n  },\n  \"firstCustomerAppliedPromotions\": [\n    {\n      \"id\": \"\",\n      \"productId\": \"\",\n      \"customerId\": \"\",\n      \"promotionId\": \"\",\n      \"appliedTimeInSeconds\": \"\",\n      \"addedTimeInSeconds\": \"\",\n      \"removedTimeInSeconds\": \"\",\n      \"relationId\": \"\",\n      \"appliedTimeRange\": {\n        \"startTimeInSeconds\": \"\",\n        \"endTimeInSeconds\": \"\"\n      },\n      \"priority\": 0,\n      \"removalContext\": \"\",\n      \"commitmentId\": \"\",\n      \"entityProductInvoices\": [\n        {\n          \"invoiceUri\": \"\",\n          \"createdTimeInSeconds\": \"\",\n          \"amount\": 0,\n          \"invoiceAmount\": 0\n        }\n      ],\n      \"amountLeftInCycle\": 0,\n      \"totalAmountLeft\": 0\n    }\n  ],\n  \"firstCustomerPrepaidCards\": {},\n  \"firstPrepaidCardsOrders\": {},\n  \"creationTimeInSeconds\": \"\",\n  \"firstCustomPromotions\": [\n    {\n      \"promotion\": {},\n      \"customerAppliedPromotion\": {\n        \"id\": \"\",\n        \"productId\": \"\",\n        \"customerId\": \"\",\n        \"promotionId\": \"\",\n        \"appliedTimeInSeconds\": \"\",\n        \"addedTimeInSeconds\": \"\",\n        \"removedTimeInSeconds\": \"\",\n        \"relationId\": \"\",\n        \"appliedTimeRange\": {\n          \"startTimeInSeconds\": \"\",\n          \"endTimeInSeconds\": \"\"\n        },\n        \"priority\": 0,\n        \"removalContext\": \"\",\n        \"commitmentId\": \"\",\n        \"entityProductInvoices\": [\n          {\n            \"invoiceUri\": \"\",\n            \"createdTimeInSeconds\": \"\",\n            \"amount\": 0,\n            \"invoiceAmount\": 0\n          }\n        ],\n        \"amountLeftInCycle\": 0,\n        \"totalAmountLeft\": 0\n      }\n    }\n  ],\n  \"firstOrders\": [\n    {\n      \"customerId\": \"\",\n      \"id\": \"\",\n      \"orderItems\": [\n        {\n          \"id\": \"\",\n          \"quantity\": 0,\n          \"resourceId\": \"\",\n          \"dimensions\": \"\",\n          \"totalPrice\": 0\n        }\n      ],\n      \"productItemId\": \"\",\n      \"productPlanId\": \"\",\n      \"appliedTimeRange\": {\n        \"startTimeInSeconds\": \"\",\n        \"endTimeInSeconds\": \"\"\n      },\n      \"billingPeriods\": \"\",\n      \"label\": \"\",\n      \"subscriptionSettings\": {\n        \"cancellationRule\": \"\",\n        \"chargeExecution\": \"\",\n        \"purchaseRule\": \"\",\n        \"subscriptionRate\": \"\",\n        \"isPricedPerRate\": false,\n        \"isCancellable\": false\n      },\n      \"addedTimeInSeconds\": \"\",\n      \"commitmentId\": \"\",\n      \"prepaidUris\": [\n        \"\"\n      ],\n      \"removedTimeInSeconds\": \"\",\n      \"removalContext\": \"\"\n    }\n  ],\n  \"firstPlanOverrideGenerators\": {},\n  \"commitmentStateHistory\": \"\"\n}"
        },
        {
          "id": "response-1-400",
          "language": "400",
          "code": "// Bad request - invalid installment schedule or payment configuration\n"
        },
        {
          "id": "response-2-403",
          "language": "403",
          "code": "// Forbidden - customer not eligible for installment payment terms\n"
        },
        {
          "id": "response-3-409",
          "language": "409",
          "code": "// Conflict - installment commitment conflicts with existing payment agreements\n"
        }
      ],
      "selectedLanguageId": "response-0-200"
    }
  },
  "children": [
    {
      "text": ""
    }
  ]
}