> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lumenaza.de/llms.txt
> Use this file to discover all available pages before exploring further.

# Trigger Installment Update

> Allows the customer to submit a change to the installment plan either by providing the amount in euro per month or in kWh per year. The post updates the annual_consumption property of the customer contracts and triggers an installment re-calculation. If the amount is provided in euro per month, the annual consumption is calculated from the working price of the customer's product.



## OpenAPI

````yaml /lumx_openapi.yaml post /v3/consumers/{userID}/contracts/{contractID}/trigger_installment_update/
openapi: 3.0.3
info:
  title: Lumenaza external API
  version: 3.8.0 (v3)
  description: Specification of the Lumenaza external API.
servers:
  - url: https://api.lumenaza.de/
    description: Produktivserver
  - url: https://api.test.lumenaza.de/
    description: Testserver
security: []
tags:
  - name: Community Data API
    description: >-
      The API is used to retrieve master data and measurement data for a
      community. A community is defined by all customers that belong to your
      company
  - name: Consumer API
    description: >-
      Manage consumers, their contracts, products, readings, and charges or
      credits
  - name: Consumption Forecast API
    description: Retrieve consumption forecasts for grid contracts
  - name: Customer Portal API
    description: Request a customer portal password reset
  - name: Customer API
    description: Retrieve product and pricing information for a customer contract
  - name: Files API
    description: Upload files and receive identifiers for use in other API requests
  - name: Market Partner API
    description: List market partners and retrieve market partner bills and payment advices
  - name: Master Data API
    description: Submit and track changes to customer and redispatch master data
  - name: Migration API
    description: Migrate consumer contracts and add contracts during migration
  - name: Offer Calculator API
    description: Calculate customer offers for a tariff and the supplied parameters
  - name: Price Calculator API
    description: >-
      Retrieve day-ahead electricity prices, local utility prices, and estimated
      CO₂ savings
  - name: Producer API
    description: >-
      Manage producers, their contracts, plants, feed-in data, and charges or
      credits
  - name: User Documents API
    description: List and retrieve documents associated with users and their contracts
  - name: Validation API
    description: >-
      Validate market location identifiers, IBANs, and preferred delivery start
      dates
paths:
  /v3/consumers/{userID}/contracts/{contractID}/trigger_installment_update/:
    post:
      tags:
        - Consumer API
      summary: Trigger Installment Update
      description: >-
        Allows the customer to submit a change to the installment plan either by
        providing the amount in euro per month or in kWh per year. The post
        updates the annual_consumption property of the customer contracts and
        triggers an installment re-calculation. If the amount is provided in
        euro per month, the annual consumption is calculated from the working
        price of the customer's product.
      operationId: trigger_installment_update
      parameters:
        - in: path
          name: contractID
          schema:
            type: string
          required: true
        - in: path
          name: userID
          schema:
            type: string
          required: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ContractInstallmentUpdate'
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/ContractInstallmentUpdate'
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/ContractInstallmentUpdate'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContractInstallmentUpdateResponse'
              examples:
                SuccessfulResponse:
                  value:
                    contract_id: '123456'
                    user_id: '789012'
                    detail: Installment update successful.
                  summary: Example of a successful installment update response
          description: ''
        '400':
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    additionalProperties:
                      type: array
                      items:
                        type: string
                    example:
                      email:
                        - Enter a valid email address.
                      non_field_errors:
                        - Invalid combination of fields.
                  - $ref: '#/components/schemas/DetailResponse'
              examples:
                BadRequest-InvalidUnit:
                  value:
                    detail: Invalid unit provided.
                  summary: Example of a bad request due to invalid unit provided
                BadRequest-InstallmentValueLowerThanBaseFee:
                  value:
                    detail: Installment value is lower than base fee gross price
                  summary: >-
                    Example of a bad request due to installment value being
                    lower than base fee gross price
                BadRequest-NoActiveTariffFound:
                  value:
                    detail: No active Tariff found for contract 123456
                  summary: >-
                    Example of a bad request due to no active tariff found for
                    the contract
          description: Field-validation errors or installment update business-rule errors.
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFoundResponse'
              examples:
                NotFound-ContractNotFound:
                  value:
                    detail: Contract not found.
                  summary: Example of a not found response due to contract not found
          description: The runtime contract lookup could not find the requested contract.
components:
  schemas:
    ContractInstallmentUpdate:
      type: object
      properties:
        unit:
          $ref: '#/components/schemas/ContractInstallmentUpdateUnitEnum'
        amount:
          type: integer
          minimum: 0
      required:
        - amount
        - unit
    ContractInstallmentUpdateResponse:
      type: object
      properties:
        contract_id:
          type: string
        user_id:
          type: string
        detail:
          type: string
      required:
        - contract_id
        - detail
        - user_id
    DetailResponse:
      type: object
      properties:
        detail:
          type: string
      required:
        - detail
    NotFoundResponse:
      type: object
      properties:
        detail:
          type: string
      required:
        - detail
    ContractInstallmentUpdateUnitEnum:
      enum:
        - kwh_per_year
        - cent_per_month
      type: string
      description: |-
        * `kwh_per_year` - kWh pro Jahr
        * `cent_per_month` - Cent pro Monat

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.