---
title: List all customer invoices
slug: reference/list-all-customer-invoices
docTags: 
createdAt: 2025-03-18T18:28:02.918Z
---

{
  "id": "BsUAzWWuzt6c9RNsv9Ve7",
  "type": "api-oas-v2",
  "data": {
    "method": "GET",
    "url": "https://app.amberflo.io/payments/billing/customer-product-invoice/all",
    "servers": [
      {
        "url": "https://app.amberflo.io/payments/billing/customer-product-invoice/all"
      }
    ],
    "name": "List all customer invoices",
    "description": "<p>Retrieves all invoices for a specific customer with detailed usage and billing information.\nUse this endpoint to access complete invoice history for billing analysis and payment tracking.</p>\n<p>Use this endpoint to:</p>\n<ul>\n<li>Get complete invoice history for a customer</li>\n<li>Analyze billing patterns and usage trends</li>\n<li>Check payment status via the <code>paymentStatus</code> field</li>\n<li>Export invoice data for accounting purposes</li>\n</ul>",
    "contentType": "application/json",
    "request": {
      "pathParameters": [],
      "headerParameters": [],
      "queryParameters": [
        {
          "kind": "required",
          "name": "customerId",
          "type": "string",
          "example": "customer_123",
          "description": "Unique identifier of the customer whose invoices should be retrieved.\nThis parameter is required to identify which customer's invoice history to access.\n"
        },
        {
          "kind": "optional",
          "name": "productId",
          "type": "string",
          "example": "product_456",
          "description": "<p>Unique identifier for the specific product to filter invoices.\nIf not provided, defaults to the account's default product ID (\"1\").</p>",
          "default": "1"
        },
        {
          "kind": "optional",
          "name": "startTimeInSeconds",
          "type": "integer<int64>",
          "example": 1703980800,
          "description": "<p>Unix timestamp (in seconds) to filter invoices from this start time.\nOnly invoices at or after this time will be included in the results.</p>"
        },
        {
          "kind": "optional",
          "name": "endTimeInSeconds",
          "type": "integer<int64>",
          "example": 1706572800,
          "description": "<p>Unix timestamp (in seconds) to filter invoices up to this end time.\nOnly invoices before or at this time will be included in the results.</p>"
        },
        {
          "kind": "optional",
          "name": "fromCache",
          "type": "boolean",
          "description": "Whether to return cached invoice data for faster response times.\nSet to false to force fresh data retrieval with latest payment status updates.\n",
          "default": true
        }
      ],
      "bodyDataParameters": [],
      "formDataParameters": [],
      "oAuthParameters": [
        {
          "id": "apiKey",
          "name": "X-API-KEY",
          "kind": "optional",
          "type": "apiKey",
          "in": "header"
        }
      ]
    },
    "responses": [
      {
        "statusCode": "200",
        "description": "Returns array of all customer invoices with detailed usage and payment information",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "array",
            "description": "Comprehensive customer product invoice with detailed billing breakdown including charges, promotions, prepaid usage, and payment information.",
            "customType": "payment.billing.detailed.DetailedCustomerProductInvoice.out[]",
            "schema": [
              {
                "name": "invoiceUri",
                "kind": "optional",
                "type": "string",
                "description": "Direct URL link to access and view the detailed invoice document.",
                "example": ""
              },
              {
                "name": "uuid",
                "kind": "optional",
                "type": "string",
                "description": "Unique identifier for this specific invoice instance across the billing system.",
                "example": ""
              },
              {
                "name": "invoiceKey",
                "kind": "optional",
                "type": "object",
                "description": "Composite key identifying the customer, product, and billing period for this invoice.",
                "modelRef": "#/components/schemas/payment.billing.CustomerProductInvoiceKey.out",
                "customType": "payment.billing.CustomerProductInvoiceKey.out",
                "schema": [
                  {
                    "name": "accountId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique identifier of the account that owns this invoice and billing relationship",
                    "example": ""
                  },
                  {
                    "name": "customerId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique identifier of the customer being billed for product usage and subscriptions",
                    "example": ""
                  },
                  {
                    "name": "productId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique identifier of the product for which this invoice was generated",
                    "example": ""
                  },
                  {
                    "name": "productPlanId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique identifier of the specific product plan configuration used for billing calculations",
                    "example": ""
                  },
                  {
                    "name": "year",
                    "kind": "optional",
                    "type": "integer<int32>",
                    "description": "Four-digit year of the billing period start date for this invoice",
                    "example": 0
                  },
                  {
                    "name": "month",
                    "kind": "optional",
                    "type": "integer<int32>",
                    "description": "Numeric month of the billing period start date, validated as part of complete date",
                    "example": 0
                  },
                  {
                    "name": "day",
                    "kind": "optional",
                    "type": "integer<int32>",
                    "description": "Numeric day of the billing period start date, validated as part of complete date",
                    "example": 0
                  }
                ]
              },
              {
                "name": "planBillingPeriod",
                "kind": "optional",
                "type": "object",
                "description": "Billing cycle configuration defining the frequency and timing of charges.",
                "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": "optional",
                "type": "string",
                "description": "Human-readable name of the pricing plan used for this invoice period.",
                "example": ""
              },
              {
                "name": "invoiceStartTimeInSeconds",
                "kind": "optional",
                "type": "integer<int64>",
                "description": "Unix timestamp when the billing period covered by this invoice began.",
                "example": 0
              },
              {
                "name": "invoiceEndTimeInSeconds",
                "kind": "optional",
                "type": "integer<int64>",
                "description": "Unix timestamp when the billing period covered by this invoice ended.",
                "example": 0
              },
              {
                "name": "gracePeriodInHours",
                "kind": "optional",
                "type": "integer<int32>",
                "description": "Number of hours after invoice generation before payment becomes overdue.",
                "example": 0
              },
              {
                "name": "productItemInvoices",
                "kind": "optional",
                "type": "array",
                "description": "Detailed billing breakdown for each individual product item charged during this period.",
                "modelRef": "#/components/schemas/payment.billing.detailed.DetailedCustomerProductItemInvoice.out",
                "customType": "payment.billing.detailed.DetailedCustomerProductItemInvoice.out[]",
                "schema": [
                  {
                    "name": "key",
                    "kind": "optional",
                    "type": "object",
                    "description": "Composite key identifying the customer, product, item, and billing period for this invoice.",
                    "modelRef": "#/components/schemas/payment.billing.CustomerProductItemInvoiceKey.out",
                    "customType": "payment.billing.CustomerProductItemInvoiceKey.out",
                    "schema": [
                      {
                        "name": "accountId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Unique identifier of the account that owns this item invoice and billing relationship",
                        "example": ""
                      },
                      {
                        "name": "customerId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Unique identifier of the customer being billed for this specific product item usage",
                        "example": ""
                      },
                      {
                        "name": "productId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Unique identifier of the product containing the billable item for this invoice",
                        "example": ""
                      },
                      {
                        "name": "productPlanId",
                        "kind": "optional",
                        "type": "string",
                        "description": "Unique identifier of the product plan configuration used for this item billing calculation",
                        "example": ""
                      },
                      {
                        "name": "year",
                        "kind": "optional",
                        "type": "integer<int32>",
                        "description": "Four-digit year of the billing period start date for this product item invoice",
                        "example": 0
                      },
                      {
                        "name": "month",
                        "kind": "optional",
                        "type": "integer<int32>",
                        "description": "Numeric month of the billing period start date for this product item invoice",
                        "example": 0
                      },
                      {
                        "name": "day",
                        "kind": "optional",
                        "type": "integer<int32>",
                        "description": "Numeric day of the billing period start date for this product item invoice",
                        "example": 0
                      },
                      {
                        "name": "productItemKey",
                        "kind": "optional",
                        "type": "string",
                        "description": "Unique identifier of the specific billable product item within the product plan for detailed invoice tracking",
                        "example": ""
                      }
                    ]
                  },
                  {
                    "name": "productItemId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique identifier for the product item being billed in this invoice period.",
                    "example": ""
                  },
                  {
                    "name": "productItemName",
                    "kind": "optional",
                    "type": "string",
                    "description": "Human-readable name of the product item used for display and reporting purposes.",
                    "example": ""
                  },
                  {
                    "name": "meterApiName",
                    "kind": "optional",
                    "type": "string",
                    "description": "API name of the meter that tracks usage events for this product item.",
                    "example": ""
                  },
                  {
                    "name": "productPlanName",
                    "kind": "optional",
                    "type": "string",
                    "description": "Name of the pricing plan that determines how this product item is billed.",
                    "example": ""
                  },
                  {
                    "name": "productItemInvoiceLabel",
                    "kind": "optional",
                    "type": "string",
                    "description": "Custom label for this product item invoice used for billing display and categorization.",
                    "example": ""
                  },
                  {
                    "name": "scalar",
                    "kind": "optional",
                    "type": "number",
                    "description": "Scalar multiplier value applied to usage calculations for this product item billing.",
                    "example": ""
                  },
                  {
                    "name": "productItemVariants",
                    "kind": "optional",
                    "type": "array",
                    "description": "Detailed billing breakdown for each dimensional variant of this product item during billing period.",
                    "modelRef": "#/components/schemas/payment.billing.detailed.DetailedProductItemVariantInvoice.out",
                    "customType": "payment.billing.detailed.DetailedProductItemVariantInvoice.out[]",
                    "schema": [
                      {
                        "name": "key",
                        "kind": "optional",
                        "type": "string",
                        "description": "Unique identifier for this specific product item variant configuration within billing context.",
                        "example": ""
                      },
                      {
                        "name": "itemDimensions",
                        "kind": "optional",
                        "type": "map",
                        "description": "Dimension key-value pairs defining the specific variant characteristics for this product item.",
                        "example": "",
                        "customType": "map<string, string>",
                        "schema": []
                      },
                      {
                        "name": "dimensionLabel",
                        "kind": "optional",
                        "type": "string",
                        "description": "Human-readable label representing the combined dimension values for this variant configuration.",
                        "example": ""
                      },
                      {
                        "name": "hourlyBillInfos",
                        "kind": "optional",
                        "type": "array",
                        "description": "Detailed hourly billing breakdown with credit and currency conversion information for granular analysis.",
                        "modelRef": "#/components/schemas/payment.billing.detailed.DetailedItemVariantBill.out",
                        "customType": "payment.billing.detailed.DetailedItemVariantBill.out[]",
                        "schema": [
                          {
                            "name": "startTimeInSeconds",
                            "kind": "optional",
                            "type": "integer",
                            "description": "Unix timestamp indicating when this billing period segment begins for calculation purposes.",
                            "example": 0
                          },
                          {
                            "name": "endTimeInSeconds",
                            "kind": "optional",
                            "type": "integer",
                            "description": "Unix timestamp indicating when this billing period segment ends for calculation purposes.",
                            "example": 0
                          },
                          {
                            "name": "meterUnits",
                            "kind": "optional",
                            "type": "number",
                            "description": "Total quantity of measured usage units consumed during this specific billing time segment.",
                            "example": ""
                          },
                          {
                            "name": "price",
                            "kind": "optional",
                            "type": "number",
                            "description": "Final calculated charge amount in payment currency after applying tier pricing and conversions.",
                            "example": ""
                          },
                          {
                            "name": "meteredUnitsPerTier",
                            "kind": "optional",
                            "type": "map",
                            "description": "Usage quantity breakdown mapping each pricing tier index to consumed units within tier.",
                            "example": "",
                            "customType": "map<string, number>",
                            "schema": []
                          },
                          {
                            "name": "pricePerTier",
                            "kind": "optional",
                            "type": "map",
                            "description": "Cost breakdown mapping each pricing tier index to calculated charge amount for tier.",
                            "example": "",
                            "customType": "map<string, number>",
                            "schema": []
                          },
                          {
                            "name": "primaryMeterUnitName",
                            "kind": "optional",
                            "type": "string",
                            "description": "Name identifier for the primary usage metric being measured and billed for.",
                            "example": ""
                          },
                          {
                            "name": "secondaryMeterUnitsPerTier",
                            "kind": "optional",
                            "type": "map",
                            "description": "Secondary usage metrics breakdown mapping meter names to tier-indexed consumption quantities.",
                            "example": "",
                            "customType": "map<string, object>",
                            "schema": []
                          },
                          {
                            "name": "secondaryPricePerTier",
                            "kind": "optional",
                            "type": "map",
                            "description": "Secondary pricing breakdown mapping meter names to tier-indexed calculated charge amounts.",
                            "example": "",
                            "customType": "map<string, object>",
                            "schema": []
                          },
                          {
                            "name": "priceInCredits",
                            "kind": "optional",
                            "type": "number",
                            "description": "Calculated charge amount converted to credit units when credit system is active.",
                            "example": ""
                          },
                          {
                            "name": "priceInBaseCurrency",
                            "kind": "optional",
                            "type": "number",
                            "description": "Original calculated charge amount in account's base currency before payment currency conversion.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "totalBill",
                        "kind": "optional",
                        "type": "object",
                        "description": "Complete aggregated billing summary across all hours with credit and currency conversion details.",
                        "modelRef": "#/components/schemas/payment.billing.detailed.DetailedItemVariantBill.out",
                        "customType": "payment.billing.detailed.DetailedItemVariantBill.out",
                        "schema": [
                          {
                            "name": "startTimeInSeconds",
                            "kind": "optional",
                            "type": "integer",
                            "description": "Unix timestamp indicating when this billing period segment begins for calculation purposes.",
                            "example": 0
                          },
                          {
                            "name": "endTimeInSeconds",
                            "kind": "optional",
                            "type": "integer",
                            "description": "Unix timestamp indicating when this billing period segment ends for calculation purposes.",
                            "example": 0
                          },
                          {
                            "name": "meterUnits",
                            "kind": "optional",
                            "type": "number",
                            "description": "Total quantity of measured usage units consumed during this specific billing time segment.",
                            "example": ""
                          },
                          {
                            "name": "price",
                            "kind": "optional",
                            "type": "number",
                            "description": "Final calculated charge amount in payment currency after applying tier pricing and conversions.",
                            "example": ""
                          },
                          {
                            "name": "meteredUnitsPerTier",
                            "kind": "optional",
                            "type": "map",
                            "description": "Usage quantity breakdown mapping each pricing tier index to consumed units within tier.",
                            "example": "",
                            "customType": "map<string, number>",
                            "schema": []
                          },
                          {
                            "name": "pricePerTier",
                            "kind": "optional",
                            "type": "map",
                            "description": "Cost breakdown mapping each pricing tier index to calculated charge amount for tier.",
                            "example": "",
                            "customType": "map<string, number>",
                            "schema": []
                          },
                          {
                            "name": "primaryMeterUnitName",
                            "kind": "optional",
                            "type": "string",
                            "description": "Name identifier for the primary usage metric being measured and billed for.",
                            "example": ""
                          },
                          {
                            "name": "secondaryMeterUnitsPerTier",
                            "kind": "optional",
                            "type": "map",
                            "description": "Secondary usage metrics breakdown mapping meter names to tier-indexed consumption quantities.",
                            "example": "",
                            "customType": "map<string, object>",
                            "schema": []
                          },
                          {
                            "name": "secondaryPricePerTier",
                            "kind": "optional",
                            "type": "map",
                            "description": "Secondary pricing breakdown mapping meter names to tier-indexed calculated charge amounts.",
                            "example": "",
                            "customType": "map<string, object>",
                            "schema": []
                          },
                          {
                            "name": "priceInCredits",
                            "kind": "optional",
                            "type": "number",
                            "description": "Calculated charge amount converted to credit units when credit system is active.",
                            "example": ""
                          },
                          {
                            "name": "priceInBaseCurrency",
                            "kind": "optional",
                            "type": "number",
                            "description": "Original calculated charge amount in account's base currency before payment currency conversion.",
                            "example": ""
                          }
                        ]
                      },
                      {
                        "name": "lateArrivalMeters",
                        "kind": "optional",
                        "type": "number",
                        "description": "Usage meters ingested after invoice was moved to price-locked status for adjustment tracking.",
                        "example": ""
                      }
                    ]
                  },
                  {
                    "name": "totalBill",
                    "kind": "optional",
                    "type": "object",
                    "description": "Complete aggregated billing summary for this product item across all variants and dimensions.",
                    "modelRef": "#/components/schemas/payment.billing.detailed.DetailedItemVariantBill.out",
                    "customType": "payment.billing.detailed.DetailedItemVariantBill.out",
                    "schema": [
                      {
                        "name": "startTimeInSeconds",
                        "kind": "optional",
                        "type": "integer",
                        "description": "Unix timestamp indicating when this billing period segment begins for calculation purposes.",
                        "example": 0
                      },
                      {
                        "name": "endTimeInSeconds",
                        "kind": "optional",
                        "type": "integer",
                        "description": "Unix timestamp indicating when this billing period segment ends for calculation purposes.",
                        "example": 0
                      },
                      {
                        "name": "meterUnits",
                        "kind": "optional",
                        "type": "number",
                        "description": "Total quantity of measured usage units consumed during this specific billing time segment.",
                        "example": ""
                      },
                      {
                        "name": "price",
                        "kind": "optional",
                        "type": "number",
                        "description": "Final calculated charge amount in payment currency after applying tier pricing and conversions.",
                        "example": ""
                      },
                      {
                        "name": "meteredUnitsPerTier",
                        "kind": "optional",
                        "type": "map",
                        "description": "Usage quantity breakdown mapping each pricing tier index to consumed units within tier.",
                        "example": "",
                        "customType": "map<string, number>",
                        "schema": []
                      },
                      {
                        "name": "pricePerTier",
                        "kind": "optional",
                        "type": "map",
                        "description": "Cost breakdown mapping each pricing tier index to calculated charge amount for tier.",
                        "example": "",
                        "customType": "map<string, number>",
                        "schema": []
                      },
                      {
                        "name": "primaryMeterUnitName",
                        "kind": "optional",
                        "type": "string",
                        "description": "Name identifier for the primary usage metric being measured and billed for.",
                        "example": ""
                      },
                      {
                        "name": "secondaryMeterUnitsPerTier",
                        "kind": "optional",
                        "type": "map",
                        "description": "Secondary usage metrics breakdown mapping meter names to tier-indexed consumption quantities.",
                        "example": "",
                        "customType": "map<string, object>",
                        "schema": []
                      },
                      {
                        "name": "secondaryPricePerTier",
                        "kind": "optional",
                        "type": "map",
                        "description": "Secondary pricing breakdown mapping meter names to tier-indexed calculated charge amounts.",
                        "example": "",
                        "customType": "map<string, object>",
                        "schema": []
                      },
                      {
                        "name": "priceInCredits",
                        "kind": "optional",
                        "type": "number",
                        "description": "Calculated charge amount converted to credit units when credit system is active.",
                        "example": ""
                      },
                      {
                        "name": "priceInBaseCurrency",
                        "kind": "optional",
                        "type": "number",
                        "description": "Original calculated charge amount in account's base currency before payment currency conversion.",
                        "example": ""
                      }
                    ]
                  }
                ]
              },
              {
                "name": "appliedPromotions",
                "kind": "optional",
                "type": "array",
                "description": "All promotional discounts that were automatically applied to reduce charges on this invoice.",
                "modelRef": "#/components/schemas/payment.billing.detailed.DetailedInvoiceAppliedPromotion.out",
                "customType": "payment.billing.detailed.DetailedInvoiceAppliedPromotion.out[]",
                "schema": [
                  {
                    "name": "customerAppliedPromotionId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique identifier for the customer's applied promotion instance used for tracking usage.",
                    "example": ""
                  },
                  {
                    "name": "promotionId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique identifier for the promotion definition that was applied to this invoice.",
                    "example": ""
                  },
                  {
                    "name": "promotionName",
                    "kind": "optional",
                    "type": "string",
                    "description": "Human-readable name of the promotion used for billing display and customer communication.",
                    "example": ""
                  },
                  {
                    "name": "promotionType",
                    "kind": "optional",
                    "type": "string",
                    "description": "Type classification of the promotion indicating how it was triggered and applied.",
                    "modelRef": "#/components/schemas/payment.pricing.promotions.attributes.PromotionType.in",
                    "customType": "payment.pricing.promotions.attributes.PromotionType.in",
                    "schema": []
                  },
                  {
                    "name": "discount",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total discount amount applied in customer's payment currency during this billing period.",
                    "example": ""
                  },
                  {
                    "name": "hourlyDiscounts",
                    "kind": "optional",
                    "type": "map",
                    "description": "Hour-by-hour breakdown of discount amounts applied throughout the billing period for detailed tracking.",
                    "example": "",
                    "customType": "map<string, number>",
                    "schema": []
                  },
                  {
                    "name": "promotionAppliedTimeInSeconds",
                    "kind": "optional",
                    "type": "integer<int64>",
                    "description": "Unix timestamp when this promotion was first applied to the customer account.",
                    "example": 0
                  },
                  {
                    "name": "maxDiscountPossible",
                    "kind": "optional",
                    "type": "number",
                    "description": "Maximum discount amount this promotion could potentially provide in customer's payment currency.",
                    "example": ""
                  },
                  {
                    "name": "canBeUsedForPayAsYouGo",
                    "kind": "optional",
                    "type": "boolean",
                    "description": "Indicates whether this promotion discount can be applied to pay-as-you-go usage charges.",
                    "example": ""
                  },
                  {
                    "name": "granularity",
                    "kind": "optional",
                    "type": "string",
                    "description": "Scope level at which this promotion applies such as plan, product, or item-variant.",
                    "example": ""
                  },
                  {
                    "name": "entityTd",
                    "kind": "optional",
                    "type": "string",
                    "description": "Target entity identifier where this promotion is applied within the specified granularity scope.",
                    "example": ""
                  },
                  {
                    "name": "dimensions",
                    "kind": "optional",
                    "type": "map",
                    "description": "Dimensional constraints defining where this promotion applies such as region or service tier.",
                    "example": "",
                    "customType": "map<string, string>",
                    "schema": []
                  },
                  {
                    "name": "promotionAppliedTimeRange",
                    "kind": "optional",
                    "type": "object",
                    "description": "Time period during which this promotion was actively applied and providing discounts.",
                    "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": "discountInCredits",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total discount amount expressed in credit units for prepaid balance and reporting purposes.",
                    "example": ""
                  },
                  {
                    "name": "discountInBaseCurrency",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total discount amount converted to account's base currency for consistent financial reporting.",
                    "example": ""
                  },
                  {
                    "name": "maxDiscountInBaseCurrency",
                    "kind": "optional",
                    "type": "number",
                    "description": "Maximum possible discount amount converted to account's base currency for limit tracking.",
                    "example": ""
                  }
                ]
              },
              {
                "name": "appliedPrepaids",
                "kind": "optional",
                "type": "array",
                "description": "Prepaid credits that were consumed to cover charges during this billing period.",
                "modelRef": "#/components/schemas/payment.billing.detailed.DetailedInvoiceAppliedPrepaid.out",
                "customType": "payment.billing.detailed.DetailedInvoiceAppliedPrepaid.out[]",
                "schema": [
                  {
                    "name": "prepaidUri",
                    "kind": "optional",
                    "type": "string",
                    "description": "URI reference to the prepaid credit card or balance that was used for this invoice payment.",
                    "example": ""
                  }
                ]
              },
              {
                "name": "productPlanFees",
                "kind": "optional",
                "type": "array",
                "description": "Fixed fees associated with the pricing plan that were charged during this period.",
                "modelRef": "#/components/schemas/payment.billing.detailed.DetailedProductPlanFee.out",
                "customType": "payment.billing.detailed.DetailedProductPlanFee.out[]",
                "schema": [
                  {
                    "name": "id",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique identifier for this specific product plan fee within the pricing configuration system.",
                    "example": ""
                  },
                  {
                    "name": "name",
                    "kind": "optional",
                    "type": "string",
                    "description": "Human-readable name assigned to this fee for display and identification purposes in billing.",
                    "example": ""
                  },
                  {
                    "name": "description",
                    "kind": "optional",
                    "type": "string",
                    "description": "Optional detailed explanation of this fee's purpose and application in the product plan.",
                    "example": ""
                  },
                  {
                    "name": "cost",
                    "kind": "optional",
                    "type": "number",
                    "description": "Fee amount in payment currency after applying any payment currency conversion factors.",
                    "example": ""
                  },
                  {
                    "name": "isOneTimeFee",
                    "kind": "optional",
                    "type": "boolean",
                    "description": "Flag indicating whether this fee applies once per customer or recurs with billing periods.",
                    "example": ""
                  },
                  {
                    "name": "isProrated",
                    "kind": "optional",
                    "type": "boolean",
                    "description": "Flag determining if fee amount should be prorated when plan changes occur mid-period.",
                    "example": ""
                  },
                  {
                    "name": "prorateToDay",
                    "kind": "optional",
                    "type": "boolean",
                    "description": "Flag controlling whether proration calculation rounds to day boundary or uses exact seconds.",
                    "example": ""
                  },
                  {
                    "name": "discountable",
                    "kind": "optional",
                    "type": "boolean",
                    "description": "Flag indicating if this fee can be reduced through promotions or discount mechanisms.",
                    "example": ""
                  },
                  {
                    "name": "prepayable",
                    "kind": "optional",
                    "type": "boolean",
                    "description": "Flag determining if customers can use prepaid credits to pay for this fee.",
                    "example": ""
                  },
                  {
                    "name": "costInCredits",
                    "kind": "optional",
                    "type": "number",
                    "description": "Fee amount converted to credit units when account's credit system is actively configured.",
                    "example": ""
                  },
                  {
                    "name": "costInBaseCurrency",
                    "kind": "optional",
                    "type": "number",
                    "description": "Original fee amount in account's base currency before payment currency conversion factors.",
                    "example": ""
                  }
                ]
              },
              {
                "name": "appliedInvoiceBasedFees",
                "kind": "optional",
                "type": "array",
                "description": "Invoice-based fees that were automatically calculated and applied during billing period processing.",
                "modelRef": "#/components/schemas/payment.billing.detailed.DetailedInvoiceBasedAppliedFee.out",
                "customType": "payment.billing.detailed.DetailedInvoiceBasedAppliedFee.out[]",
                "schema": [
                  {
                    "name": "feeId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique identifier for the invoice-based fee configuration that was applied to this billing.",
                    "example": ""
                  },
                  {
                    "name": "feeName",
                    "kind": "optional",
                    "type": "string",
                    "description": "Human-readable name of the invoice-based fee used for billing display and categorization.",
                    "example": ""
                  },
                  {
                    "name": "feeAmount",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total invoice-based fee amount charged in customer's payment currency for this billing period.",
                    "example": ""
                  },
                  {
                    "name": "feeByTimeInSeconds",
                    "kind": "optional",
                    "type": "map",
                    "description": "Time-segmented breakdown of fee amounts applied throughout the billing period for detailed tracking.",
                    "example": "",
                    "customType": "map<string, number>",
                    "schema": []
                  },
                  {
                    "name": "feeInCredits",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total invoice-based fee amount expressed in credit units for prepaid balance tracking.",
                    "example": ""
                  },
                  {
                    "name": "feeInBaseCurrency",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total invoice-based fee amount converted to account's base currency for consistent reporting.",
                    "example": ""
                  }
                ]
              },
              {
                "name": "appliedInvoiceSpendingLimitFees",
                "kind": "optional",
                "type": "array",
                "description": "Spending limit fees that were triggered when customer usage exceeded configured thresholds.",
                "modelRef": "#/components/schemas/payment.billing.detailed.DetailedInvoiceAppliedSpendingLimitFee.out",
                "customType": "payment.billing.detailed.DetailedInvoiceAppliedSpendingLimitFee.out[]",
                "schema": [
                  {
                    "name": "id",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique identifier for the spending limit configuration that triggered this fee application.",
                    "example": ""
                  },
                  {
                    "name": "label",
                    "kind": "optional",
                    "type": "string",
                    "description": "Human-readable label describing the spending limit that was exceeded and triggered the fee.",
                    "example": ""
                  },
                  {
                    "name": "feeAmount",
                    "kind": "optional",
                    "type": "number",
                    "description": "Spending limit penalty fee amount charged in customer's configured payment currency for threshold violation.",
                    "example": ""
                  },
                  {
                    "name": "feeAmountInCredits",
                    "kind": "optional",
                    "type": "number",
                    "description": "Spending limit penalty fee amount expressed in credit units for prepaid balance tracking.",
                    "example": ""
                  },
                  {
                    "name": "feeAmountInBaseCurrency",
                    "kind": "optional",
                    "type": "number",
                    "description": "Spending limit penalty fee amount converted to account's base currency for consistent reporting.",
                    "example": ""
                  }
                ]
              },
              {
                "name": "appliedCommitments",
                "kind": "optional",
                "type": "array",
                "description": "Commitment fees applied for contracted usage minimums or commitments during this billing period.",
                "modelRef": "#/components/schemas/payment.billing.detailed.DetailedInvoiceAppliedCommitmentFee.out",
                "customType": "payment.billing.detailed.DetailedInvoiceAppliedCommitmentFee.out[]",
                "schema": [
                  {
                    "name": "commitmentId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique identifier for the commitment contract that triggered this fee application.",
                    "example": ""
                  },
                  {
                    "name": "obligationId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique identifier for the specific obligation within the commitment contract being charged.",
                    "example": ""
                  },
                  {
                    "name": "obligationName",
                    "kind": "optional",
                    "type": "string",
                    "description": "Human-readable name of the commitment obligation used for billing display and reporting.",
                    "example": ""
                  },
                  {
                    "name": "feeAmount",
                    "kind": "optional",
                    "type": "number",
                    "description": "Commitment fee amount charged in the customer's configured payment currency for this billing period.",
                    "example": ""
                  },
                  {
                    "name": "feeInCredits",
                    "kind": "optional",
                    "type": "number",
                    "description": "Commitment fee amount expressed in credit units for prepaid balance tracking and reporting.",
                    "example": ""
                  },
                  {
                    "name": "feeInBaseCurrency",
                    "kind": "optional",
                    "type": "number",
                    "description": "Commitment fee amount converted to account's base currency for consistent financial reporting.",
                    "example": ""
                  }
                ]
              },
              {
                "name": "itemSubscriptionDetails",
                "kind": "optional",
                "type": "array",
                "description": "Subscription configuration details for each product item included in this invoice billing period.",
                "modelRef": "#/components/schemas/payment.billing.SubscriptionItemDetail.out",
                "customType": "payment.billing.SubscriptionItemDetail.out[]",
                "schema": [
                  {
                    "name": "productItemId",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique identifier of the product item associated with subscription billing and usage tracking",
                    "example": ""
                  },
                  {
                    "name": "variantSubscriptionDetails",
                    "kind": "optional",
                    "type": "array",
                    "description": "Collection of subscription details for different variants of this product item including usage and billing information",
                    "modelRef": "#/components/schemas/payment.billing.SubscriptionVariantDetail.out",
                    "customType": "payment.billing.SubscriptionVariantDetail.out[]",
                    "schema": [
                      {
                        "name": "groupInfo",
                        "kind": "optional",
                        "type": "object",
                        "description": "Meter group information defining the subscription variant dimensions and configuration details",
                        "modelRef": "#/components/schemas/payment.meters.GroupInfo.out",
                        "customType": "payment.meters.GroupInfo.out",
                        "schema": [
                          {
                            "name": "gi",
                            "kind": "optional",
                            "type": "map",
                            "description": "Group information key-value pairs used for meter categorization and aggregation purposes",
                            "example": "",
                            "customType": "map<string, string>",
                            "schema": []
                          }
                        ]
                      },
                      {
                        "name": "hourlyUsage",
                        "kind": "optional",
                        "type": "array",
                        "description": "Hour-by-hour subscription usage tracking showing base subscription units and overage consumption patterns",
                        "modelRef": "#/components/schemas/payment.billing.SubscriptionUsage.out",
                        "customType": "payment.billing.SubscriptionUsage.out[]",
                        "schema": [
                          {
                            "name": "startTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp marking the start of the subscription usage measurement period",
                            "example": 0
                          },
                          {
                            "name": "endTimeInSeconds",
                            "kind": "optional",
                            "type": "integer<int64>",
                            "description": "Unix timestamp marking the end of the subscription usage measurement period",
                            "example": 0
                          },
                          {
                            "name": "subscriptionUnits",
                            "kind": "optional",
                            "type": "number",
                            "description": "Number of units consumed within the base subscription allowance during this period",
                            "example": ""
                          },
                          {
                            "name": "overageUnits",
                            "kind": "optional",
                            "type": "number",
                            "description": "Number of units consumed beyond the base subscription allowance during this period",
                            "example": ""
                          }
                        ]
                      }
                    ]
                  }
                ]
              },
              {
                "name": "totalBill",
                "kind": "optional",
                "type": "object",
                "description": "Complete billing summary with subtotals, taxes, and final amount due for this invoice.",
                "modelRef": "#/components/schemas/payment.billing.ProductPlanBill.out",
                "customType": "payment.billing.ProductPlanBill.out",
                "schema": [
                  {
                    "name": "startTimeInSeconds",
                    "kind": "optional",
                    "type": "integer<int64>",
                    "description": "Unix timestamp marking the start of the billing period for this product plan bill",
                    "example": 0
                  },
                  {
                    "name": "endTimeInSeconds",
                    "kind": "optional",
                    "type": "integer<int64>",
                    "description": "Unix timestamp marking the end of the billing period for this product plan bill",
                    "example": 0
                  },
                  {
                    "name": "totalPrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Final total amount to be paid after all discounts, prepaid credits, and commitment adjustments",
                    "example": ""
                  },
                  {
                    "name": "itemPrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total cost of usage-based product items consumed during the billing period",
                    "example": ""
                  },
                  {
                    "name": "fixPrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total cost of fixed subscription fees and charges for the billing period",
                    "example": ""
                  },
                  {
                    "name": "invoiceBasedFees",
                    "kind": "optional",
                    "type": "number",
                    "description": "Additional fees applied at invoice level based on billing rules and configurations",
                    "example": ""
                  },
                  {
                    "name": "invoiceSpendingLimitFees",
                    "kind": "optional",
                    "type": "number",
                    "description": "Fees charged when customer exceeds configured spending limits during the billing period",
                    "example": ""
                  },
                  {
                    "name": "commitmentsFees",
                    "kind": "optional",
                    "type": "number",
                    "description": "Additional charges or credits applied based on customer commitment contract obligations",
                    "example": ""
                  },
                  {
                    "name": "prepaid",
                    "kind": "optional",
                    "type": "number",
                    "description": "Amount of prepaid credits applied to reduce the total bill amount",
                    "example": ""
                  },
                  {
                    "name": "totalDiscount",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total discount amount applied from promotions and pricing rules during billing period",
                    "example": ""
                  },
                  {
                    "name": "totalPriceBeforeDiscount",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total bill amount before applying any promotions or discount calculations",
                    "example": ""
                  },
                  {
                    "name": "totalPriceBeforePrepaid",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total bill amount after discounts but before applying prepaid credit reductions",
                    "example": ""
                  },
                  {
                    "name": "totalPriceBeforeCommitments",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total bill amount before applying commitment-based adjustments and fees",
                    "example": ""
                  },
                  {
                    "name": "totalPriceBeforeSalesTax",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total bill amount before applying sales tax calculations and adjustments",
                    "example": ""
                  },
                  {
                    "name": "discountableFixPrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Portion of fixed price fees that can be reduced through promotional discounts",
                    "example": ""
                  },
                  {
                    "name": "discountableBasePrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Portion of total bill amount that can be reduced through promotional discounts",
                    "example": ""
                  },
                  {
                    "name": "prepayableFixPrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Portion of fixed fees that can be paid using prepaid credits",
                    "example": ""
                  },
                  {
                    "name": "prepayableNotDiscountableFees",
                    "kind": "optional",
                    "type": "number",
                    "description": "Fees that can be prepaid but cannot be reduced through promotional discounts",
                    "example": ""
                  },
                  {
                    "name": "prepayableCommitmentsFees",
                    "kind": "optional",
                    "type": "number",
                    "description": "Portion of commitment fees that can be paid using prepaid credits",
                    "example": ""
                  },
                  {
                    "name": "totalPrepayablePrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total bill amount that can be paid using available prepaid credits",
                    "example": ""
                  }
                ]
              },
              {
                "name": "invoicePriceStatus",
                "kind": "optional",
                "type": "string",
                "description": "Current processing status of the invoice pricing calculation and generation.",
                "modelRef": "#/components/schemas/payment.billing.InvoiceStatus.out",
                "customType": "payment.billing.InvoiceStatus.out",
                "schema": []
              },
              {
                "name": "creditUnit",
                "kind": "optional",
                "type": "object",
                "description": "Currency or credit unit configuration used for billing calculations on this invoice.",
                "modelRef": "#/components/schemas/payment.pricing.CreditUnit.out",
                "customType": "payment.pricing.CreditUnit.out",
                "schema": [
                  {
                    "name": "id",
                    "kind": "optional",
                    "type": "string",
                    "description": "Unique identifier for this credit unit configuration within the account",
                    "example": ""
                  },
                  {
                    "name": "shortName",
                    "kind": "optional",
                    "type": "string",
                    "description": "Abbreviated name for credit unit used in compact displays and reports",
                    "example": ""
                  },
                  {
                    "name": "name",
                    "kind": "optional",
                    "type": "string",
                    "description": "Full descriptive name for credit unit displayed to customers and administrators",
                    "example": ""
                  },
                  {
                    "name": "ratioToCurrency",
                    "kind": "optional",
                    "type": "number",
                    "description": "Exchange rate defining amount of account currency per credit unit for conversions",
                    "example": ""
                  },
                  {
                    "name": "description",
                    "kind": "optional",
                    "type": "string",
                    "description": "Detailed explanation of credit unit purpose and usage for customer understanding",
                    "example": ""
                  },
                  {
                    "name": "active",
                    "kind": "optional",
                    "type": "boolean",
                    "description": "Whether this credit unit configuration is currently enabled for billing operations",
                    "example": ""
                  },
                  {
                    "name": "lastUpdateTimeInMillis",
                    "kind": "optional",
                    "type": "integer<int64>",
                    "description": "Unix timestamp in milliseconds when credit unit configuration was last modified",
                    "example": 0
                  }
                ]
              },
              {
                "name": "paymentStatus",
                "kind": "optional",
                "type": "string",
                "description": "Current status of payment collection for this invoice amount.",
                "modelRef": "#/components/schemas/payment.payment.PaymentStatus.in",
                "customType": "payment.payment.PaymentStatus.in",
                "schema": []
              },
              {
                "name": "paymentCreatedInSeconds",
                "kind": "optional",
                "type": "integer<int64>",
                "description": "Unix timestamp when the payment transaction was initiated for this invoice.",
                "example": 0
              },
              {
                "name": "externalSystemStatus",
                "kind": "optional",
                "type": "string",
                "description": "Status from external payment processing systems handling this invoice payment.",
                "example": ""
              },
              {
                "name": "invoiceBillInBaseCurrency",
                "kind": "optional",
                "type": "object",
                "description": "Complete billing summary converted to account's base currency for consistent reporting.",
                "modelRef": "#/components/schemas/payment.billing.ProductPlanBill.out",
                "customType": "payment.billing.ProductPlanBill.out",
                "schema": [
                  {
                    "name": "startTimeInSeconds",
                    "kind": "optional",
                    "type": "integer<int64>",
                    "description": "Unix timestamp marking the start of the billing period for this product plan bill",
                    "example": 0
                  },
                  {
                    "name": "endTimeInSeconds",
                    "kind": "optional",
                    "type": "integer<int64>",
                    "description": "Unix timestamp marking the end of the billing period for this product plan bill",
                    "example": 0
                  },
                  {
                    "name": "totalPrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Final total amount to be paid after all discounts, prepaid credits, and commitment adjustments",
                    "example": ""
                  },
                  {
                    "name": "itemPrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total cost of usage-based product items consumed during the billing period",
                    "example": ""
                  },
                  {
                    "name": "fixPrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total cost of fixed subscription fees and charges for the billing period",
                    "example": ""
                  },
                  {
                    "name": "invoiceBasedFees",
                    "kind": "optional",
                    "type": "number",
                    "description": "Additional fees applied at invoice level based on billing rules and configurations",
                    "example": ""
                  },
                  {
                    "name": "invoiceSpendingLimitFees",
                    "kind": "optional",
                    "type": "number",
                    "description": "Fees charged when customer exceeds configured spending limits during the billing period",
                    "example": ""
                  },
                  {
                    "name": "commitmentsFees",
                    "kind": "optional",
                    "type": "number",
                    "description": "Additional charges or credits applied based on customer commitment contract obligations",
                    "example": ""
                  },
                  {
                    "name": "prepaid",
                    "kind": "optional",
                    "type": "number",
                    "description": "Amount of prepaid credits applied to reduce the total bill amount",
                    "example": ""
                  },
                  {
                    "name": "totalDiscount",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total discount amount applied from promotions and pricing rules during billing period",
                    "example": ""
                  },
                  {
                    "name": "totalPriceBeforeDiscount",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total bill amount before applying any promotions or discount calculations",
                    "example": ""
                  },
                  {
                    "name": "totalPriceBeforePrepaid",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total bill amount after discounts but before applying prepaid credit reductions",
                    "example": ""
                  },
                  {
                    "name": "totalPriceBeforeCommitments",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total bill amount before applying commitment-based adjustments and fees",
                    "example": ""
                  },
                  {
                    "name": "totalPriceBeforeSalesTax",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total bill amount before applying sales tax calculations and adjustments",
                    "example": ""
                  },
                  {
                    "name": "discountableFixPrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Portion of fixed price fees that can be reduced through promotional discounts",
                    "example": ""
                  },
                  {
                    "name": "discountableBasePrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Portion of total bill amount that can be reduced through promotional discounts",
                    "example": ""
                  },
                  {
                    "name": "prepayableFixPrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Portion of fixed fees that can be paid using prepaid credits",
                    "example": ""
                  },
                  {
                    "name": "prepayableNotDiscountableFees",
                    "kind": "optional",
                    "type": "number",
                    "description": "Fees that can be prepaid but cannot be reduced through promotional discounts",
                    "example": ""
                  },
                  {
                    "name": "prepayableCommitmentsFees",
                    "kind": "optional",
                    "type": "number",
                    "description": "Portion of commitment fees that can be paid using prepaid credits",
                    "example": ""
                  },
                  {
                    "name": "totalPrepayablePrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total bill amount that can be paid using available prepaid credits",
                    "example": ""
                  }
                ]
              },
              {
                "name": "invoiceBillInCredits",
                "kind": "optional",
                "type": "object",
                "description": "Complete billing summary converted to credit units for prepaid balance tracking.",
                "modelRef": "#/components/schemas/payment.billing.ProductPlanBill.out",
                "customType": "payment.billing.ProductPlanBill.out",
                "schema": [
                  {
                    "name": "startTimeInSeconds",
                    "kind": "optional",
                    "type": "integer<int64>",
                    "description": "Unix timestamp marking the start of the billing period for this product plan bill",
                    "example": 0
                  },
                  {
                    "name": "endTimeInSeconds",
                    "kind": "optional",
                    "type": "integer<int64>",
                    "description": "Unix timestamp marking the end of the billing period for this product plan bill",
                    "example": 0
                  },
                  {
                    "name": "totalPrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Final total amount to be paid after all discounts, prepaid credits, and commitment adjustments",
                    "example": ""
                  },
                  {
                    "name": "itemPrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total cost of usage-based product items consumed during the billing period",
                    "example": ""
                  },
                  {
                    "name": "fixPrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total cost of fixed subscription fees and charges for the billing period",
                    "example": ""
                  },
                  {
                    "name": "invoiceBasedFees",
                    "kind": "optional",
                    "type": "number",
                    "description": "Additional fees applied at invoice level based on billing rules and configurations",
                    "example": ""
                  },
                  {
                    "name": "invoiceSpendingLimitFees",
                    "kind": "optional",
                    "type": "number",
                    "description": "Fees charged when customer exceeds configured spending limits during the billing period",
                    "example": ""
                  },
                  {
                    "name": "commitmentsFees",
                    "kind": "optional",
                    "type": "number",
                    "description": "Additional charges or credits applied based on customer commitment contract obligations",
                    "example": ""
                  },
                  {
                    "name": "prepaid",
                    "kind": "optional",
                    "type": "number",
                    "description": "Amount of prepaid credits applied to reduce the total bill amount",
                    "example": ""
                  },
                  {
                    "name": "totalDiscount",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total discount amount applied from promotions and pricing rules during billing period",
                    "example": ""
                  },
                  {
                    "name": "totalPriceBeforeDiscount",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total bill amount before applying any promotions or discount calculations",
                    "example": ""
                  },
                  {
                    "name": "totalPriceBeforePrepaid",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total bill amount after discounts but before applying prepaid credit reductions",
                    "example": ""
                  },
                  {
                    "name": "totalPriceBeforeCommitments",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total bill amount before applying commitment-based adjustments and fees",
                    "example": ""
                  },
                  {
                    "name": "totalPriceBeforeSalesTax",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total bill amount before applying sales tax calculations and adjustments",
                    "example": ""
                  },
                  {
                    "name": "discountableFixPrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Portion of fixed price fees that can be reduced through promotional discounts",
                    "example": ""
                  },
                  {
                    "name": "discountableBasePrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Portion of total bill amount that can be reduced through promotional discounts",
                    "example": ""
                  },
                  {
                    "name": "prepayableFixPrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Portion of fixed fees that can be paid using prepaid credits",
                    "example": ""
                  },
                  {
                    "name": "prepayableNotDiscountableFees",
                    "kind": "optional",
                    "type": "number",
                    "description": "Fees that can be prepaid but cannot be reduced through promotional discounts",
                    "example": ""
                  },
                  {
                    "name": "prepayableCommitmentsFees",
                    "kind": "optional",
                    "type": "number",
                    "description": "Portion of commitment fees that can be paid using prepaid credits",
                    "example": ""
                  },
                  {
                    "name": "totalPrepayablePrice",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total bill amount that can be paid using available prepaid credits",
                    "example": ""
                  }
                ]
              },
              {
                "name": "prepaidPriceUsedBaseCurrency",
                "kind": "optional",
                "type": "number",
                "description": "Monetary value of prepaid credits consumed during billing period in account's base currency.",
                "example": ""
              },
              {
                "name": "prepaidPriceUsed",
                "kind": "optional",
                "type": "number",
                "description": "Monetary value of prepaid credits consumed during this billing period in payment currency.",
                "example": ""
              },
              {
                "name": "availablePrepaidLeft",
                "kind": "optional",
                "type": "number",
                "description": "Remaining prepaid credit balance available for future usage in payment currency.",
                "example": ""
              },
              {
                "name": "availablePrepaidLeftBaseCurrency",
                "kind": "optional",
                "type": "number",
                "description": "Remaining prepaid credit balance available for future usage in account's base currency.",
                "example": ""
              },
              {
                "name": "prepaidUsageUsed",
                "kind": "optional",
                "type": "number",
                "description": "Usage-based prepaid units consumed during this billing period for covered services.",
                "example": ""
              },
              {
                "name": "availablePrepaidUsageLeft",
                "kind": "optional",
                "type": "number",
                "description": "Remaining usage-based prepaid units available for future consumption in current period.",
                "example": ""
              },
              {
                "name": "availablePrepaidLeftInCredits",
                "kind": "optional",
                "type": "number",
                "description": "Remaining prepaid balance available for future usage expressed in credit units.",
                "example": ""
              },
              {
                "name": "invoiceSalesTax",
                "kind": "optional",
                "type": "object",
                "description": "Calculated sales tax information applied to this invoice based on customer location.",
                "modelRef": "#/components/schemas/integration.tax.InvoiceSalesTax.out",
                "customType": "integration.tax.InvoiceSalesTax.out",
                "schema": [
                  {
                    "name": "totalTaxAmount",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total calculated sales tax amount across all taxable line items in the transaction, computed by external tax integration providers.",
                    "example": ""
                  },
                  {
                    "name": "totalTaxableAmount",
                    "kind": "optional",
                    "type": "number",
                    "description": "Aggregate monetary amount of transaction components subject to sales tax calculation, excluding exempt portions and non-taxable items.",
                    "example": ""
                  },
                  {
                    "name": "totalExemptAmount",
                    "kind": "optional",
                    "type": "number",
                    "description": "Total monetary value of transaction components excluded from sales tax calculation due to exemptions, tax-free status, or regulatory exclusions.",
                    "example": ""
                  },
                  {
                    "name": "combinedTaxRate",
                    "kind": "optional",
                    "type": "number",
                    "description": "Effective tax rate as decimal fraction representing the aggregate tax percentage applied across all applicable jurisdictions and tax types.",
                    "example": ""
                  },
                  {
                    "name": "hasNexus",
                    "kind": "optional",
                    "type": "boolean",
                    "description": "Jurisdictional nexus determination indicating whether the business has sufficient physical or economic presence to establish tax obligation in the customer location.",
                    "example": ""
                  },
                  {
                    "name": "taxCode",
                    "kind": "optional",
                    "type": "string",
                    "description": "Tax classification code identifying the product category or service type used by external tax providers for accurate rate determination.",
                    "example": ""
                  }
                ]
              },
              {
                "name": "availablePayAsYouGoMoney",
                "kind": "optional",
                "type": "number",
                "description": "Available pay-as-you-go balance from current cycle discounts and prepaid wallet in payment currency.",
                "example": ""
              },
              {
                "name": "availablePayAsYouGoMoneyInBaseCurrency",
                "kind": "optional",
                "type": "number",
                "description": "Available pay-as-you-go balance from discounts and prepaid wallet in account's base currency.",
                "example": ""
              },
              {
                "name": "availablePayAsYouGoMoneyInCredits",
                "kind": "optional",
                "type": "number",
                "description": "Available pay-as-you-go balance from discounts and prepaid wallet expressed in credit units.",
                "example": ""
              },
              {
                "name": "paymentCurrencyInfo",
                "kind": "optional",
                "type": "object",
                "description": "Currency configuration and exchange rate information used for this invoice billing calculation.",
                "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": "paymentMethod",
                "kind": "optional",
                "type": "object",
                "description": "Payment method configuration used for processing charges associated with this invoice.",
                "modelRef": "#/components/schemas/payment.payment.PaymentMethod.out",
                "customType": "payment.payment.PaymentMethod.out",
                "schema": [
                  {
                    "name": "methodType",
                    "kind": "optional",
                    "type": "string",
                    "description": "Type of payment method used such as credit card or alternative payment option",
                    "example": ""
                  },
                  {
                    "name": "last4",
                    "kind": "optional",
                    "type": "string",
                    "description": "Last four digits of payment card number for customer identification and security",
                    "example": ""
                  },
                  {
                    "name": "brand",
                    "kind": "optional",
                    "type": "string",
                    "description": "Payment card brand name such as Visa, MasterCard, or American Express",
                    "example": ""
                  }
                ]
              },
              {
                "name": "messages",
                "kind": "optional",
                "type": "array",
                "description": "System messages and notifications related to invoice processing or payment status.",
                "modelRef": "#/components/schemas/common.entity_message.EntityMessage.out",
                "customType": "common.entity_message.EntityMessage.out[]",
                "schema": [
                  {
                    "name": "level",
                    "kind": "optional",
                    "type": "string",
                    "description": "Message severity level indicating importance and appropriate handling for the message content.",
                    "modelRef": "#/components/schemas/common.entity_message.MessageLevel.out",
                    "customType": "common.entity_message.MessageLevel.out",
                    "schema": []
                  },
                  {
                    "name": "code",
                    "kind": "optional",
                    "type": "string",
                    "description": "Standardized message code providing programmatic categorization for automated message processing and routing.",
                    "modelRef": "#/components/schemas/common.entity_message.MessageCode.out",
                    "customType": "common.entity_message.MessageCode.out",
                    "schema": []
                  },
                  {
                    "name": "message",
                    "kind": "optional",
                    "type": "string",
                    "description": "Human-readable message text providing detailed information about the event or condition being communicated.",
                    "example": ""
                  }
                ]
              },
              {
                "name": "invoiceStartTime",
                "kind": "optional",
                "type": "string",
                "description": "Human-readable start time of the billing period covered by this invoice.",
                "example": ""
              },
              {
                "name": "invoiceEndTime",
                "kind": "optional",
                "type": "string",
                "description": "Human-readable end time of the billing period covered by this invoice.",
                "example": ""
              },
              {
                "name": "voided",
                "kind": "optional",
                "type": "boolean",
                "description": "Indicates whether this invoice has been voided and should not be processed for payment.",
                "example": ""
              }
            ],
            "modelRef": "#/components/schemas/payment.billing.detailed.DetailedCustomerProductInvoice.out",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "400",
        "description": "Invalid customer ID or query parameters provided",
        "jsonExample": "",
        "isExpanded": true
      },
      {
        "statusCode": "401",
        "description": "Authentication required or invalid API key provided",
        "jsonExample": "",
        "isExpanded": true
      },
      {
        "statusCode": "403",
        "description": "Insufficient permissions to access customer invoice data",
        "jsonExample": "",
        "isExpanded": true
      },
      {
        "statusCode": "404",
        "description": "Customer not found or no invoices available",
        "jsonExample": "",
        "isExpanded": true
      },
      {
        "statusCode": "500",
        "description": "Internal server error occurred while retrieving invoice data",
        "jsonExample": "",
        "isExpanded": true
      }
    ],
    "hasXCodeSamples": false,
    "examples": {
      "languages": [
        {
          "id": "Y4TvusYNlv3sk-1Tq9uaa",
          "language": "curl",
          "label": "cURL",
          "code": "curl --request GET \\\n     --url 'https://app.amberflo.io/payments/billing/customer-product-invoice/all?customerId=customer_123&productId=1&fromCache=true' \\\n     --header 'accept: application/json'"
        },
        {
          "id": "xHvj0I2litRye08f_Zt76",
          "language": "javascript",
          "label": "javascript",
          "code": "var myHeaders = new Headers();\nmyHeaders.append(\"accept\", \"application/json\");\nmyHeaders.append(\"content-type\", \"application/json\");\n\nvar requestOptions = {\n   method: 'GET',\n   headers: myHeaders,\n   redirect: 'follow'\n};\n\nfetch(\"https://app.amberflo.io/payments/billing/customer-product-invoice/all?customerId=customer_123&productId=1&fromCache=true\", requestOptions)\n   .then(response => response.text())\n   .then(result => console.log(result))\n   .catch(error => console.log('error', error));"
        },
        {
          "id": "Ddx-WRK0frr92cJCTc2Wc",
          "language": "ruby",
          "label": "Ruby",
          "code": "require \"uri\"\nrequire \"json\"\nrequire \"net/http\"\n\nurl = URI(\"https://app.amberflo.io/payments/billing/customer-product-invoice/all?customerId=customer_123&productId=1&fromCache=true\")\n\nhttps = Net::HTTP.new(url.host, url.port)\nhttps.use_ssl = true\n\nrequest = Net::HTTP::Get.new(url)\nrequest[\"accept\"] = \"application/json\"\nrequest[\"content-type\"] = \"application/json\"\n\nresponse = https.request(request)\nputs response.read_body\n"
        },
        {
          "id": "y_NNLWVNqVkAE4h5N3ThK",
          "language": "python",
          "label": "Python",
          "code": "import requests\nimport json\n\nurl = \"https://app.amberflo.io/payments/billing/customer-product-invoice/all?customerId=customer_123&productId=1&fromCache=true\"\n\npayload = {}\nheaders = {\n   'accept': 'application/json',\n   'content-type': 'application/json'\n}\n\nresponse = requests.request(\"GET\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
        }
      ],
      "selectedLanguageId": "Y4TvusYNlv3sk-1Tq9uaa"
    },
    "results": {
      "languages": [
        {
          "id": "8ruRQIpvjY0t-0qbYFcfp",
          "language": "200",
          "code": "// Returns array of all customer invoices with detailed usage and payment information\n[\n  {\n    \"invoiceUri\": \"\",\n    \"uuid\": \"\",\n    \"invoiceKey\": {\n      \"accountId\": \"\",\n      \"customerId\": \"\",\n      \"productId\": \"\",\n      \"productPlanId\": \"\",\n      \"year\": \"\",\n      \"month\": \"\",\n      \"day\": \"\"\n    },\n    \"planBillingPeriod\": {\n      \"interval\": \"\",\n      \"intervalsCount\": \"\"\n    },\n    \"planName\": \"\",\n    \"invoiceStartTimeInSeconds\": \"\",\n    \"invoiceEndTimeInSeconds\": \"\",\n    \"gracePeriodInHours\": \"\",\n    \"productItemInvoices\": [\n      {\n        \"key\": {\n          \"accountId\": \"\",\n          \"customerId\": \"\",\n          \"productId\": \"\",\n          \"productPlanId\": \"\",\n          \"year\": \"\",\n          \"month\": \"\",\n          \"day\": \"\",\n          \"productItemKey\": \"\"\n        },\n        \"productItemId\": \"\",\n        \"productItemName\": \"\",\n        \"meterApiName\": \"\",\n        \"productPlanName\": \"\",\n        \"productItemInvoiceLabel\": \"\",\n        \"scalar\": 0,\n        \"productItemVariants\": [\n          {\n            \"key\": \"\",\n            \"itemDimensions\": \"\",\n            \"dimensionLabel\": \"\",\n            \"hourlyBillInfos\": [\n              {\n                \"startTimeInSeconds\": 0,\n                \"endTimeInSeconds\": 0,\n                \"meterUnits\": 0,\n                \"price\": 0,\n                \"meteredUnitsPerTier\": \"\",\n                \"pricePerTier\": \"\",\n                \"primaryMeterUnitName\": \"\",\n                \"secondaryMeterUnitsPerTier\": \"\",\n                \"secondaryPricePerTier\": \"\",\n                \"priceInCredits\": 0,\n                \"priceInBaseCurrency\": 0\n              }\n            ],\n            \"totalBill\": {\n              \"startTimeInSeconds\": 0,\n              \"endTimeInSeconds\": 0,\n              \"meterUnits\": 0,\n              \"price\": 0,\n              \"meteredUnitsPerTier\": \"\",\n              \"pricePerTier\": \"\",\n              \"primaryMeterUnitName\": \"\",\n              \"secondaryMeterUnitsPerTier\": \"\",\n              \"secondaryPricePerTier\": \"\",\n              \"priceInCredits\": 0,\n              \"priceInBaseCurrency\": 0\n            },\n            \"lateArrivalMeters\": 0\n          }\n        ],\n        \"totalBill\": {\n          \"startTimeInSeconds\": 0,\n          \"endTimeInSeconds\": 0,\n          \"meterUnits\": 0,\n          \"price\": 0,\n          \"meteredUnitsPerTier\": \"\",\n          \"pricePerTier\": \"\",\n          \"primaryMeterUnitName\": \"\",\n          \"secondaryMeterUnitsPerTier\": \"\",\n          \"secondaryPricePerTier\": \"\",\n          \"priceInCredits\": 0,\n          \"priceInBaseCurrency\": 0\n        }\n      }\n    ],\n    \"appliedPromotions\": [\n      {\n        \"customerAppliedPromotionId\": \"\",\n        \"promotionId\": \"\",\n        \"promotionName\": \"\",\n        \"promotionType\": \"\",\n        \"discount\": 0,\n        \"hourlyDiscounts\": \"\",\n        \"promotionAppliedTimeInSeconds\": \"\",\n        \"maxDiscountPossible\": 0,\n        \"canBeUsedForPayAsYouGo\": false,\n        \"granularity\": \"\",\n        \"entityTd\": \"\",\n        \"dimensions\": \"\",\n        \"promotionAppliedTimeRange\": {\n          \"startTimeInSeconds\": \"\",\n          \"endTimeInSeconds\": \"\"\n        },\n        \"discountInCredits\": 0,\n        \"discountInBaseCurrency\": 0,\n        \"maxDiscountInBaseCurrency\": 0\n      }\n    ],\n    \"appliedPrepaids\": [\n      {\n        \"prepaidUri\": \"\"\n      }\n    ],\n    \"productPlanFees\": [\n      {\n        \"id\": \"\",\n        \"name\": \"\",\n        \"description\": \"\",\n        \"cost\": 0,\n        \"isOneTimeFee\": false,\n        \"isProrated\": false,\n        \"prorateToDay\": false,\n        \"discountable\": false,\n        \"prepayable\": false,\n        \"costInCredits\": 0,\n        \"costInBaseCurrency\": 0\n      }\n    ],\n    \"appliedInvoiceBasedFees\": [\n      {\n        \"feeId\": \"\",\n        \"feeName\": \"\",\n        \"feeAmount\": 0,\n        \"feeByTimeInSeconds\": \"\",\n        \"feeInCredits\": 0,\n        \"feeInBaseCurrency\": 0\n      }\n    ],\n    \"appliedInvoiceSpendingLimitFees\": [\n      {\n        \"id\": \"\",\n        \"label\": \"\",\n        \"feeAmount\": 0,\n        \"feeAmountInCredits\": 0,\n        \"feeAmountInBaseCurrency\": 0\n      }\n    ],\n    \"appliedCommitments\": [\n      {\n        \"commitmentId\": \"\",\n        \"obligationId\": \"\",\n        \"obligationName\": \"\",\n        \"feeAmount\": 0,\n        \"feeInCredits\": 0,\n        \"feeInBaseCurrency\": 0\n      }\n    ],\n    \"itemSubscriptionDetails\": [\n      {\n        \"productItemId\": \"\",\n        \"variantSubscriptionDetails\": [\n          {\n            \"groupInfo\": {\n              \"gi\": \"\"\n            },\n            \"hourlyUsage\": [\n              {\n                \"startTimeInSeconds\": \"\",\n                \"endTimeInSeconds\": \"\",\n                \"subscriptionUnits\": 0,\n                \"overageUnits\": 0\n              }\n            ]\n          }\n        ]\n      }\n    ],\n    \"totalBill\": {\n      \"startTimeInSeconds\": \"\",\n      \"endTimeInSeconds\": \"\",\n      \"totalPrice\": 0,\n      \"itemPrice\": 0,\n      \"fixPrice\": 0,\n      \"invoiceBasedFees\": 0,\n      \"invoiceSpendingLimitFees\": 0,\n      \"commitmentsFees\": 0,\n      \"prepaid\": 0,\n      \"totalDiscount\": 0,\n      \"totalPriceBeforeDiscount\": 0,\n      \"totalPriceBeforePrepaid\": 0,\n      \"totalPriceBeforeCommitments\": 0,\n      \"totalPriceBeforeSalesTax\": 0,\n      \"discountableFixPrice\": 0,\n      \"discountableBasePrice\": 0,\n      \"prepayableFixPrice\": 0,\n      \"prepayableNotDiscountableFees\": 0,\n      \"prepayableCommitmentsFees\": 0,\n      \"totalPrepayablePrice\": 0\n    },\n    \"invoicePriceStatus\": \"\",\n    \"creditUnit\": {\n      \"id\": \"\",\n      \"shortName\": \"\",\n      \"name\": \"\",\n      \"ratioToCurrency\": 0,\n      \"description\": \"\",\n      \"active\": false,\n      \"lastUpdateTimeInMillis\": \"\"\n    },\n    \"paymentStatus\": \"\",\n    \"paymentCreatedInSeconds\": \"\",\n    \"externalSystemStatus\": \"\",\n    \"invoiceBillInBaseCurrency\": {\n      \"startTimeInSeconds\": \"\",\n      \"endTimeInSeconds\": \"\",\n      \"totalPrice\": 0,\n      \"itemPrice\": 0,\n      \"fixPrice\": 0,\n      \"invoiceBasedFees\": 0,\n      \"invoiceSpendingLimitFees\": 0,\n      \"commitmentsFees\": 0,\n      \"prepaid\": 0,\n      \"totalDiscount\": 0,\n      \"totalPriceBeforeDiscount\": 0,\n      \"totalPriceBeforePrepaid\": 0,\n      \"totalPriceBeforeCommitments\": 0,\n      \"totalPriceBeforeSalesTax\": 0,\n      \"discountableFixPrice\": 0,\n      \"discountableBasePrice\": 0,\n      \"prepayableFixPrice\": 0,\n      \"prepayableNotDiscountableFees\": 0,\n      \"prepayableCommitmentsFees\": 0,\n      \"totalPrepayablePrice\": 0\n    },\n    \"invoiceBillInCredits\": {\n      \"startTimeInSeconds\": \"\",\n      \"endTimeInSeconds\": \"\",\n      \"totalPrice\": 0,\n      \"itemPrice\": 0,\n      \"fixPrice\": 0,\n      \"invoiceBasedFees\": 0,\n      \"invoiceSpendingLimitFees\": 0,\n      \"commitmentsFees\": 0,\n      \"prepaid\": 0,\n      \"totalDiscount\": 0,\n      \"totalPriceBeforeDiscount\": 0,\n      \"totalPriceBeforePrepaid\": 0,\n      \"totalPriceBeforeCommitments\": 0,\n      \"totalPriceBeforeSalesTax\": 0,\n      \"discountableFixPrice\": 0,\n      \"discountableBasePrice\": 0,\n      \"prepayableFixPrice\": 0,\n      \"prepayableNotDiscountableFees\": 0,\n      \"prepayableCommitmentsFees\": 0,\n      \"totalPrepayablePrice\": 0\n    },\n    \"prepaidPriceUsedBaseCurrency\": 0,\n    \"prepaidPriceUsed\": 0,\n    \"availablePrepaidLeft\": 0,\n    \"availablePrepaidLeftBaseCurrency\": 0,\n    \"prepaidUsageUsed\": 0,\n    \"availablePrepaidUsageLeft\": 0,\n    \"availablePrepaidLeftInCredits\": 0,\n    \"invoiceSalesTax\": {\n      \"totalTaxAmount\": 0,\n      \"totalTaxableAmount\": 0,\n      \"totalExemptAmount\": 0,\n      \"combinedTaxRate\": 0,\n      \"hasNexus\": false,\n      \"taxCode\": \"\"\n    },\n    \"availablePayAsYouGoMoney\": 0,\n    \"availablePayAsYouGoMoneyInBaseCurrency\": 0,\n    \"availablePayAsYouGoMoneyInCredits\": 0,\n    \"paymentCurrencyInfo\": {\n      \"basePlanCurrency\": \"USD\",\n      \"paymentCurrency\": \"USD\",\n      \"exchangeRate\": 0\n    },\n    \"paymentMethod\": {\n      \"methodType\": \"\",\n      \"last4\": \"\",\n      \"brand\": \"\"\n    },\n    \"messages\": [\n      {\n        \"level\": \"\",\n        \"code\": \"\",\n        \"message\": \"\"\n      }\n    ],\n    \"invoiceStartTime\": \"\",\n    \"invoiceEndTime\": \"\",\n    \"voided\": false\n  }\n]"
        },
        {
          "id": "TpFyQM8OYypO4W77cG562",
          "language": "400",
          "code": "// Invalid customer ID or query parameters provided\n"
        },
        {
          "id": "jVF70yjY_q7OBVsQx99b5",
          "language": "401",
          "code": "// Authentication required or invalid API key provided\n"
        },
        {
          "id": "NXHX7FVe39FiCGBcWH-zQ",
          "language": "403",
          "code": "// Insufficient permissions to access customer invoice data\n"
        },
        {
          "id": "CISzhDwftlDgqpWIGJXgS",
          "language": "404",
          "code": "// Customer not found or no invoices available\n"
        },
        {
          "id": "hDbF2P8x8Cw-zfwBu7gKg",
          "language": "500",
          "code": "// Internal server error occurred while retrieving invoice data\n"
        }
      ],
      "selectedLanguageId": "8ruRQIpvjY0t-0qbYFcfp"
    }
  },
  "children": [
    {
      "text": ""
    }
  ]
}