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

# Add case voucher

> Add case voucher to case



## OpenAPI

````yaml POST /v1/{tenantId}/case-vouchers/{caseId}
openapi: 3.1.0
info:
  title: Debbie Platform API Docs
  description: >
    The Debbie API is a RESTful interface, allowing you to programmatically

    update, add and access your data in the platform. It provides predictable
    URLs

    for accessing resources, and uses built-in HTTP features to receive commands
    and

    return responses. This makes it easy to communicate with third party
    systems.


    ## Idempotency


    The Debbie API supports idempotency for non-idempotent requests through the
    optional `Idempotency-Key` header. 

    This ensures that retrying the same request multiple times will produce the
    same result, preventing duplicate operations.


    ### Using Idempotency Keys


    - Include an `Idempotency-Key` header with a unique string (we recommend
    UUIDs)  

    - Maximum key length is 64 characters

    - Keys are valid for 48 hours

    - Responses served from the idempotency cache include an
    `Idempotency-Cached` header


    ### Example

    ```http

    Idempotency-Key: 123e4567-e89b-12d3-a456-426614174000

    ```


    ### Error Cases

    - Invalid key format: 400 Bad Request

    - Reusing a key for a different request: 400 Bad Request


    ### Best Practices

    - Use a new key for each unique business transaction

    - Use the same key when retrying a failed request 

    - Store keys with request details for debugging
  contact:
    email: support@debbie.dk
  version: v0.1.0
  x-logo:
    url: https://debbie-platform.github.io/platform-api-docs/deb-logo.svg
servers:
  - url: https://api.debbiecollect.com
security:
  - bearerAuth: []
tags:
  - name: Authorization
    description: Endpoints for interacting with authorization
  - name: Cases
    description: Endpoints for interacting with cases
  - name: Customers
    description: Endpoints for interacting with customers
  - name: Creditors
    description: Endpoints for interacting with creditors
  - name: Updates
    description: Endpoints for interacting with updates
  - name: Users
    description: Endpoints for interacting with updates
  - name: Files
    description: Endpoints for interacting with files
  - name: Case vouchers
    description: Endpoints for interacting with case vouchers
  - name: Billing
    description: Endpoints for interacting with billing
  - name: Links
    description: Endpoints for generating links
  - name: Webhooks
    description: >-
      Debbie provides a range of webhooks. To try them out please visit Debbie
      Caseworker and navigate to Settings --> Developers --> Webhooks.
  - name: Voucher Type Ids
    description: >
      ### Principals:

      | Type | id |

      | --- | --- |

      | Invoice (Faktura)          | eb41e58e-fccf-419d-a771-cd5027fe6e87 |

      | Credit note (Kreditnota)       | ef2cdc50-230f-4046-b1af-0f9c498dddd3 |

      | Final statement (OpgÃ¸relse)        |
      42385ae0-6846-425c-a793-8d47a3b190b5 |

      | On account invoice (Acontofaktura)    |
      2d101b6e-74f9-4a4d-9f8e-c7abe2264da0 |

      | Loan (GÃ¦ldsbrev)        | bf61f462-6d3c-42e8-a99a-852d4a664926 |


      ### Costs:

      | Type | id |

      | --- | --- |

      | Collection cost (Inkassoomkostning)        |
      07960de4-303d-4793-92da-3a8cfd5da1a1 |

      | Collection fee (Inkassogebyr)             |
      4c3ccbbf-0651-45b2-b37b-4fe736acfd7e |

      | Reminder fee (Rykkergebyr)              |
      3e51bf87-3c8f-4dd5-abd5-69417d113c89 |

      | Compensation cost (Kompensationsgebyr)       |
      ed3e3d61-e1bc-4ee2-9166-adf2c41a2bbf |


      ### Interests:

      | Type | id |

      | --- | --- |

      | DK interest (Procesrente)               |Â
      ca4af363-9925-436c-83d6-23b3db6ed5d2 |

      | Fixed interest (Fastrente)                 |
      299dc393-1b71-4950-860f-8fb485036722 |

      | Yearly interest (Ã…rlig rente)               |
      37db68dd-80be-40c7-8d2d-3619c793107f |


      ### Transactions:

      | Type | id |

      | --- | --- |

      | Deposit (Indbetaling)               |
      c51f2f6a-8081-45ef-b52d-5e0569fdf12e |
externalDocs:
  description: Find out more about Debbie here
  url: https://debbie.dk
paths:
  /v1/{tenantId}/case-vouchers/{caseId}:
    post:
      tags:
        - Case vouchers
      summary: Add case voucher to case
      description: Add case voucher to case
      operationId: add-case-voucher
      parameters:
        - in: path
          name: tenantId
          schema:
            type: string
            format: uuid
          required: true
          description: Id of the tenant
        - in: path
          name: caseId
          schema:
            type: string
          required: true
          description: Case id
      requestBody:
        description: New case voucher object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NewCaseVoucher'
            example:
              currency: DKK
              amount: -100000
              referenceId: D12412347
              text: J.no. 1234
              date: '2024-05-28 00:00:00.000+01'
              source: CREDITOR
              voucherTypeId: eb41e58e-fccf-419d-a771-cd5027fe6e87
        required: true
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NewCaseVoucherResponse'
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '409':
          $ref: '#/components/responses/ConflictError'
        '422':
          $ref: '#/components/responses/UnprocessableContent'
components:
  schemas:
    NewCaseVoucher:
      type: object
      properties:
        voucherTypeId:
          type: string
          format: uuid
          description: >-
            An id for the voucher type. A list of ids can be found in the
            Voucher Type Ids chapter.
        amount:
          type: integer
          description: >-
            Amount in base currency. For example 1.00 should be sent as 100. A
            negative amount (e.g. -100) represents a debt, while a positive
            amount (e.g. +100) represents a credit note or deposit.
        referenceId:
          type: string
        currency:
          $ref: '#/components/schemas/Currency'
        interest:
          type: number
          description: >-
            Used when the voucher is accumulating interest to specify the
            interest rate (yearly interest and compound interest). The number is
            in decimal, for example 0.1 would be an interest rate of 10%.
        date:
          type: string
        interestStartDate:
          type: string
        interestEndDate:
          type: string
        dueDate:
          type: string
        appendix:
          $ref: '#/components/schemas/File'
          description: The appendix is for pdf copies or similar for a case voucher.
        source:
          $ref: '#/components/schemas/CaseVoucherSource'
        uniqueId:
          type: string
          description: >-
            A unique id, that can be used to prevent creating the same case
            voucher twice. This id is unique at the tenant level, meaning that
            no two case vouchers can have the same unique id on the same tenant.
        referenceCaseVoucherId:
          type: string
          format: uuid
          description: The id of the voucher that this voucher is a child of.
        referenceVouchers:
          type: array
          items:
            $ref: '#/components/schemas/NewCaseVoucher'
        properties:
          type: object
          description: >-
            Case voucher properties. You can create property types under
            settings in the platform. Use the handle as object key like this: {
            "mySingleLineTextPropertyTypeHandle": "your value" }
          properties:
            mySingleLineTextPropertyTypeHandle:
              type: string
              description: A single line text property
        distribute:
          type: array
          items:
            type: object
            properties:
              value:
                oneOf:
                  - type: object
                    properties:
                      amount:
                        type: integer
                        description: >-
                          Amount in base currency. For example 1.00 should be
                          sent as 100.
                      caseVoucherReferenceId:
                        type: string
                        description: >-
                          Reference of the case voucher that the amount is
                          distributed to. For example and invoice no.
                    required:
                      - amount
                      - caseVoucherReferenceId
                  - type: object
                    properties:
                      amount:
                        type: integer
                        description: >-
                          Amount in base currency. For example 1.00 should be
                          sent as 100.
                      caseVoucherId:
                        type: string
                        format: uuid
                        description: >-
                          Id of the case voucher that the amount is distributed
                          to
                    required:
                      - amount
                      - caseVoucherId
          description: >-
            Distribution of the case voucher. The sum of the distribution must
            be equal to the amount of the case voucher.
      required:
        - voucherTypeId
        - amount
        - date
        - source
        - currency
    NewCaseVoucherResponse:
      type: object
      properties:
        caseVoucherId:
          type: string
          format: uuid
          description: Id of the case voucher
    Currency:
      type: string
      enum:
        - DKK
        - SEK
        - NOK
        - USD
        - EUR
        - GBP
        - CHF
      description: Currency
    File:
      type: object
      properties:
        fileName:
          type: string
        contentType:
          type: string
        fileId:
          type: string
          format: uuid
      required:
        - fileName
        - contentType
        - fileId
    CaseVoucherSource:
      type: string
      enum:
        - CREDITOR
        - COLLECTOR
      description: >-
        The source of the case voucher. "CREDITOR" if the case voucher is
        imposed by the creditor (typically from an ERP system). "COLLECTOR" if
        the case voucher is imposed by collector (debt collection agency). If it
        is a deposit it is a direct payment if set to "CREDITOR".
  responses:
    UnauthorizedError:
      description: Access token missing or invalid
    ConflictError:
      description: Conflict
    UnprocessableContent:
      description: Unable to process the contained instructions.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        Authentication can be done by using a bearer token in the Authorization
        header. This is done using the following format `Authorization: Bearer
        {token}`.

````