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

# Add or update miscellaneous charges in upcoming Invoice for a account

> Add or update miscellaneous charges in upcoming Invoice for a account



## OpenAPI

````yaml put /accounts/{account_id}/miscellaneous_charges
openapi: 3.0.3
info:
  version: '1.0'
  title: Togai Apis
  contact:
    email: engg@togai.com
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  description: APIs for Togai App
servers:
  - description: Api endpoint
    url: https://api.togai.com/
  - description: Sandbox api endpoint
    url: https://sandbox-api.togai.com/
security:
  - bearerAuth: []
tags:
  - name: Customers
    description: Customer level calls
  - name: Accounts
    description: Account level calls
  - name: Event Schemas
    description: Event Schema level calls
  - name: Usage Meters
    description: Usage Meter level calls
  - name: Price Plans
    description: (DEPRECATED) Price Plan level calls
  - name: PricePlanV2
    description: Price Plan V2 level calls
  - name: Schedules
    description: Account Schedule level calls
  - name: Pricing Rules
    description: Pricing Rules level calls
  - name: Settings
    description: Settings
  - name: Price Experimentation
    description: Price Experimentation apis
  - name: InvoiceGroups
    description: Invoice Group level calls
  - name: Organization
    description: Organization level calls
  - name: FileStorage
    description: File Storage level calls
  - name: Aliases
    description: Alias level calls
  - name: Reports
    description: Report level calls
  - name: ReportTemplates
    description: Report Template level calls
  - name: Customer Portal
    description: Portal level calls
  - name: Alerts
    description: Alert level calls
  - name: Event Management
    description: APIs for getting events ingested in Togai
    externalDocs:
      description: docs
      url: https://togai.com/docs/billing/events
  - name: Metrics
    description: APIs for getting Togai metrics
    externalDocs:
      description: docs
      url: https://togai.com/docs/metrics
  - name: Licenses
    description: APIs for getting or updating license records in Togai
  - name: Entitlements
    description: APIs related to entitlements
  - name: Invoices
    description: Invoices API
  - name: Credits
    description: Credits API
  - name: Wallet
    description: Wallet API
  - name: InvoiceTemplates
    description: InvoiceTemplates API
  - name: InvoiceSequence
    description: InvoiceSequence API
  - name: Payments
    description: Payments API
  - name: Authentication
    description: Authentication API
externalDocs:
  description: Find out more about Togai
  url: https://docs.togai.com/docs
paths:
  /accounts/{account_id}/miscellaneous_charges:
    put:
      tags:
        - Invoices
      summary: Add or update miscellaneous charges in upcoming Invoice for a account
      description: Add or update miscellaneous charges in upcoming Invoice for a account
      operationId: manageMiscellaneousChargesInAccount
      parameters:
        - $ref: '#/components/parameters/account_id'
      requestBody:
        $ref: '#/components/requestBodies/ManageMiscellaneousChargesRequest'
      responses:
        '200':
          $ref: '#/components/responses/MiscellaneousChargesResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '401':
          $ref: '#/components/responses/ErrorResponse'
        '403':
          $ref: '#/components/responses/ErrorResponse'
        '404':
          $ref: '#/components/responses/ErrorResponse'
        '429':
          $ref: '#/components/responses/ErrorResponse'
        default:
          $ref: '#/components/responses/ErrorResponse'
components:
  parameters:
    account_id:
      in: path
      description: account_id corresponding to an account
      name: account_id
      required: true
      schema:
        type: string
        maxLength: 50
        example: ACC00001
  requestBodies:
    ManageMiscellaneousChargesRequest:
      description: Payload to update custom line items
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ManageMiscellaneousChargesRequest'
          examples:
            ManageMiscellaneousChargesRequest:
              $ref: '#/components/examples/ManageMiscellaneousChargesRequest'
  responses:
    MiscellaneousChargesResponse:
      description: Response for Miscellaneous Charges Request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/MiscellaneousChargesResponse'
          examples:
            MiscellaneousChargesResponse:
              $ref: '#/components/examples/MiscellaneousChargesResponse'
    ErrorResponse:
      description: Error response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          examples:
            ErrorResponse:
              summary: Error message
              value:
                message: <Reason message>
  schemas:
    ManageMiscellaneousChargesRequest:
      description: Payload to update custom line items
      type: object
      additionalProperties: false
      required:
        - items
      properties:
        items:
          $ref: '#/components/schemas/MiscellaneousCharges'
    MiscellaneousChargesResponse:
      description: Miscellaneous charges response
      type: object
      additionalProperties: false
      required:
        - data
      properties:
        data:
          $ref: '#/components/schemas/MiscellaneousCharges'
    ErrorResponse:
      type: object
      additionalProperties: false
      required:
        - message
      properties:
        message:
          type: string
          description: error description
          maxLength: 500
    MiscellaneousCharges:
      type: array
      items:
        title: MiscellaneousCharge
        description: >-
          Miscellaneous charges are the charges that can be added to the
          invoice. A charge must either have rate and quantity or value. In case
          of rate and quantity, the value must not be provided as it is
          automatically calculated as (rate * quantity).
        type: object
        additionalProperties: false
        required:
          - name
        properties:
          name:
            description: Name of the miscellaneous charge
            type: string
            example: Charge 1
          rate:
            description: Rate of the charge
            type: number
            example: 20
          quantity:
            description: Quantity of the charge
            type: number
            example: 10
          value:
            description: |
              Value of the charge
              Possible values:
              1. Fixed number [Example: 10]
              2. Json Logic [Example: {"*": [{"var": "um.lineitem.id"}, 0.1]}]
                 You can use all line item ids as variables in the json logic
            type: string
            example: 100
          considerForRevenue:
            description: >-
              Specifies whether to consider this miscellaneous charge for
              revenue or not
            type: boolean
            default: false
            example: true
  examples:
    ManageMiscellaneousChargesRequest:
      summary: A sample for ManageMiscellaneousChargesRequest
      value:
        items:
          - name: charge 1
            value: '100'
          - name: qty & rate charge
            rate: 20
            quantity: 10
          - name: json logic charge
            value: '{"var": "um.linitem.id"}'
    MiscellaneousChargesResponse:
      summary: A sample MiscellaneousChargesResponse
      value:
        data:
          - name: charge 1
            value: '100'
          - name: charge 2
            rate: 20
            quantity: 10
            value: '200'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: Bearer <credential>

````