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

# Void an invoice

> Cancels a wrongly raised invoice; its charges go back to open. For an already-issued invoice, use Cancel an issued invoice (which issues a credit note).

The admission must be on new billing (`use_new_billing`); otherwise this returns 409. Returns 503 when billing is not configured on the server, and 502 when the billing service fails.



## OpenAPI

````yaml api-reference/doc-tool/ipd-api/ipd-sdk-openapi.json post /ipd/v1/sdk/admissions/{admission_id}/billing/invoices/{invoice_id}/void
openapi: 3.1.0
info:
  title: Eka IPD Admission API
  version: '1.0'
servers:
  - description: Production
    url: https://api.eka.care
  - description: Stage/Sandbox
    url: https://api.dev.eka.care
security: []
paths:
  /ipd/v1/sdk/admissions/{admission_id}/billing/invoices/{invoice_id}/void:
    post:
      tags:
        - IPD API
      summary: Void an invoice
      description: >-
        Cancels a wrongly raised invoice; its charges go back to open. For an
        already-issued invoice, use Cancel an issued invoice (which issues a
        credit note).


        The admission must be on new billing (`use_new_billing`); otherwise this
        returns 409. Returns 503 when billing is not configured on the server,
        and 502 when the billing service fails.
      operationId: IpdSdkVoidAnInvoice
      parameters:
        - name: auth
          in: header
          required: true
          schema:
            type: string
          example: >-
            eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJiX2lkIjoiMTIzNDU2IiwiY2xpZW50X2lkIjoiNzg5MCIsImV4dHJhX2ZpZWxkIjoiZXh0cmFfZmllbGRfZGF0YSJ9.q9KzBI6f4l3OyM_EkB5Quq0l9EEMFh5JS-fx3F_PHUM
        - schema:
            minLength: 1
            type: string
          in: path
          name: admission_id
          required: true
          description: Id of the IPD admission.
        - schema:
            minLength: 1
            type: string
          in: path
          name: invoice_id
          required: true
          description: Id of the invoice.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              additionalProperties: false
              type: object
              properties:
                reason:
                  description: Why — kept on the audit trail.
                  type: string
      responses:
        '200':
          description: >-
            An invoice: `id`, `invoiceNumber`, `status`, `subtotal`,
            `discountTotal`, `taxTotal`, `total`, `amountPaid`, `amountDue`,
            `issuedAt`, …
          content:
            application/json:
              schema:
                additionalProperties: true
                description: >-
                  An invoice: `id`, `invoiceNumber`, `status`, `subtotal`,
                  `discountTotal`, `taxTotal`, `total`, `amountPaid`,
                  `amountDue`, `issuedAt`, …
                example:
                  id: inv-201
                  invoiceNumber: INV-000201
                  status: partly_paid
                  subtotal: '7545.00'
                  discountTotal: '0.00'
                  taxTotal: '0.00'
                  total: '7545.00'
                  amountPaid: '5000.00'
                  amountDue: '2545.00'
                  issuedAt: '2026-10-07T12:00:00.000Z'
                type: object
                properties: {}
        '400':
          description: Bad Request — the request failed validation or was rejected.
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                properties:
                  message:
                    type: string
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                properties:
                  message:
                    type: string
        '404':
          description: >-
            Not Found — the admission (or the addressed record) does not exist
            in your workspace.
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                properties:
                  message:
                    type: string
        '409':
          description: >-
            Conflict — the admission is not on new billing, or the request
            conflicts with the account's current state.
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                properties:
                  message:
                    type: string
        '502':
          description: Bad Gateway — the billing service failed.
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                properties:
                  message:
                    type: string
        '503':
          description: >-
            Service Unavailable — billing or pharmacy notification is not
            configured.
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                properties:
                  message:
                    type: string

````

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