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

# Issue Cash Receipt

> Cash receipt issuance is asynchronous. The API first returns `202 Accepted` and an `issuanceKey`. A request that remains in progress or needs its issuance result confirmed can be finalized after 17:00 KST on the day following the request. Confirm issuance when the status API returns `ISSUED` or you receive `CASH_RECEIPT_ISSUED`.

For recipient types (`recipient.type`), the recipient identifier (`recipient.value`), and amount and validation rules, see the [Cash receipt guide](/en/docs/api-introduction/cash-receipt-guide).




## OpenAPI

````yaml /openapi.en.yaml post /v1/cashReceipts
openapi: 3.1.0
info:
  title: Bolta API
  description: >
    The Bolta e-tax invoice API. [API
    Overview](/en/docs/api-introduction/overview) | [Authentication
    guide](/en/docs/api-introduction/authentication) | [Use
    cases](/en/docs/api-introduction/usecase-b2b)
  version: 1.0.0
servers:
  - url: https://xapi.bolta.io
    description: Bolta API server
security:
  - basicAuth: []
tags:
  - name: Tax Invoice Issuance
    description: >
      Issue and amend e-tax invoices. [Calculating the issuance
      amount](/en/docs/api-introduction/issuance-guide) | [Amendment
      types](/en/docs/api-introduction/amendment-guide)
  - name: Tax Invoice Retrieval
    description: >
      Retrieve e-tax invoice results and request processing status, and download
      the PDF of an issued tax invoice. [Tax invoice PDF
      guide](/en/docs/api-introduction/tax-invoice-pdf)
  - name: Reverse Issuance
    description: >
      Request and manage reverse issuance of e-tax invoices. [Email-approval
      reverse issuance](/en/docs/api-introduction/usecase-reverse-email) |
      [Simple-approval reverse
      issuance](/en/docs/api-introduction/usecase-reverse-simple)
  - name: Cash Receipt
    description: >
      Issue, cancel, and check the status of cash receipts. [Cash receipt
      guide](/en/docs/api-introduction/cash-receipt-guide) | [Cash receipt
      webhooks](/en/docs/api-introduction/webhook-cash-receipt)
  - name: Business Registration Status
    description: >
      Check the registration status and tax type of a business registration
      number. Look up one number or up to 100 numbers at once. This API requires
      no issuer registration and no certificate. [Business registration status
      guide](/en/docs/api-introduction/business-registration-status)
  - name: Revenue and Expense
    description: >
      Retrieve the revenue and expense tax invoices of your own business in
      Bolta in the order they changed, and request a collection. Responses
      include documents issued through Bolta and documents collected from
      Hometax. You need a Standard plan or higher, and the calls deduct no
      points. Connect Hometax in the Bolta dashboard first. [Revenue and expense
      guide](/en/docs/api-introduction/revenue-expense)
  - name: Bank Account Transactions
    description: >
      Retrieve the bank accounts and transactions connected to your own business
      in Bolta, and request a sync. You need a Standard plan or higher, and the
      calls deduct no points. Connect bank accounts in the Bolta dashboard
      first. [Bank account transactions
      guide](/en/docs/api-introduction/bank-account-transactions)
  - name: Bank Account Holder
    description: >
      Look up account holder names with a bank code and an account number. One
      path takes a single account and the other takes up to 100 accounts at
      once. Each account that returns a holder name deducts 50 points. [Bank
      account holder guide](/en/docs/api-introduction/bank-account-holder)
  - name: Document Issuance
    description: >
      Issue National Tax Service certificates from Hometax or a certified copy
      of corporate registry, and download the original PDF. Hometax documents
      are issued only for the business that owns the API key, and you must
      register a joint certificate in the Bolta dashboard. A corporate registry
      is issued for the corporation in `corporationNumber` and needs no joint
      certificate. Supported corporation types are stock company, limited
      company, general partnership company, limited partnership company, limited
      liability company, incorporated association, incorporated foundation,
      medical corporation, cooperative (including social cooperative), and other
      corporate entity (such as a patent corporation). Each document deducts 500
      points for Hometax documents, 1,000 points for a corporate registry view
      copy, and 1,500 points for a submission copy. [Document issuance
      guide](/en/docs/api-introduction/document-issuance)
  - name: Issuer
    description: >
      Register and manage businesses that act as tax invoice issuers.
      Certificate requirements depend on the issuance type.
      [Glossary](/en/docs/api-introduction/glossary) | [Delegated
      issuance](/en/docs/api-introduction/usecase-delegated) | [Brokered Tax
      Invoice Issuance](/en/docs/api-introduction/usecase-brokered)
  - name: Certificate
    description: >
      Register and manage issuer certificates. [Certificate
      registration](/en/docs/api-introduction/certificate-registration)
paths:
  /v1/cashReceipts:
    post:
      tags:
        - Cash Receipt
      summary: Issue Cash Receipt
      description: >
        Cash receipt issuance is asynchronous. The API first returns `202
        Accepted` and an `issuanceKey`. A request that remains in progress or
        needs its issuance result confirmed can be finalized after 17:00 KST on
        the day following the request. Confirm issuance when the status API
        returns `ISSUED` or you receive `CASH_RECEIPT_ISSUED`.


        For recipient types (`recipient.type`), the recipient identifier
        (`recipient.value`), and amount and validation rules, see the [Cash
        receipt guide](/en/docs/api-introduction/cash-receipt-guide).
      parameters:
        - name: Bolta-Client-Reference-Id
          in: header
          description: >-
            Enter a client reference ID between 1 and 255 characters. The API
            uses this value as the idempotency key. If the same API key retries
            with the same client reference ID, request content, and request
            type, the API returns `202 Accepted` with the existing request's
            `issuanceKey`. If the request content or type differs, the API
            returns `409 Conflict` with `IDEMPOTENCY_CONFLICT`. To check the
            status later, pass this value as `clientReferenceId`.
            [Authentication
            guide](/en/docs/api-introduction/authentication#client-reference-id)
          required: true
          example: your-unique-reference-id
          schema:
            type: string
            minLength: 1
            maxLength: 255
            pattern: \S
        - name: Bolta-Webhook-Test-Code
          in: header
          description: >-
            Use this header only to reproduce an issuance failure webhook with a
            test key. Enter an issuance failure code, and the API sends the
            corresponding failure webhook. [Cash receipt
            webhooks](/en/docs/api-introduction/webhook-cash-receipt)
          required: false
          example: INVALID_RECIPIENT_IDENTIFIER
          schema:
            type: string
            enum:
              - INVALID_ISSUER
              - INVALID_RECIPIENT_IDENTIFIER
              - UNKNOWN
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CashReceiptIssueRequest'
            examples:
              Mobile phone number:
                x-parity-id: phone
                summary: Issue with a mobile phone number
                value:
                  itemName: Service fee
                  issuer:
                    businessRegistrationNumber: '1234567890'
                    organizationName: Supplier Company
                    representativeName: Jane Doe
                    telephone: 02-1234-5678
                  recipient:
                    type: PHONE
                    value: 010-1234-5678
                  amount:
                    supplyAmount: 100
                    vatAmount: 10
                    taxFreeAmount: 0
              Business registration number:
                x-parity-id: businessRegistrationNumber
                summary: >-
                  Issue with a business registration number (proof of
                  expenditure)
                value:
                  itemName: Service fee
                  issuer:
                    businessRegistrationNumber: '1234567890'
                    organizationName: Supplier Company
                    representativeName: Jane Doe
                    telephone: 02-1234-5678
                  recipient:
                    type: BUSINESS_REGISTRATION_NUMBER
                    value: '0987654321'
                  amount:
                    supplyAmount: 100000
                    vatAmount: 10000
                    taxFreeAmount: 0
              Self-issuance:
                x-parity-id: self
                summary: Self-issuance (issue without recipient information)
                value:
                  itemName: Service fee
                  issuer:
                    businessRegistrationNumber: '1234567890'
                    organizationName: Supplier Company
                    representativeName: Jane Doe
                    telephone: 02-1234-5678
                  recipient:
                    type: SELF
                  amount:
                    supplyAmount: 100
                    vatAmount: 10
                    taxFreeAmount: 0
      responses:
        '202':
          description: The API accepted the issuance request.
          headers:
            Location:
              description: Path to check the issuance status
              schema:
                type: string
                examples:
                  - >-
                    /v1/cashReceipts/status?clientReferenceId=your-unique-reference-id
          content:
            application/json:
              schema:
                type: object
                properties:
                  issuanceKey:
                    $ref: '#/components/schemas/CashReceiptIssuanceKey'
                required:
                  - issuanceKey
              example:
                issuanceKey: MRK98JGC5KOAEIPGK8U6UO05I3EAQPLI8OE78A3I
        '400':
          description: The request is invalid. The response `code` is `INVALID_REQUEST`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: API key authentication failed
        '403':
          description: >-
            The client does not have access to the issuer. The response `code`
            is `FORBIDDEN`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '409':
          description: >-
            The same clientReferenceId was used with different request content
            or a different request type. The response `code` is
            `IDEMPOTENCY_CONFLICT`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '503':
          description: >-
            Temporary internal API communication error. The response `code` is
            `SERVICE_UNAVAILABLE`.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      deprecated: false
components:
  schemas:
    CashReceiptIssueRequest:
      type: object
      description: Cash receipt issuance request body
      properties:
        itemName:
          type: string
          title: Item name
          description: Item name (up to 20 characters)
          minLength: 1
          maxLength: 20
          examples:
            - Service fee
        issuer:
          $ref: '#/components/schemas/CashReceiptIssuer'
        recipient:
          $ref: '#/components/schemas/CashReceiptRecipient'
        amount:
          $ref: '#/components/schemas/CashReceiptAmount'
      required:
        - itemName
        - issuer
        - recipient
        - amount
    CashReceiptIssuanceKey:
      type: string
      description: >-
        The cash receipt issuance key. Its format and length may change, so
        store the entire string as is.
      examples:
        - MRK98JGC5KOAEIPGK8U6UO05I3EAQPLI8OE78A3I
    ErrorResponse:
      type: object
      description: The error response returned when an API request fails
      properties:
        code:
          type: string
          description: Error type identifier
        message:
          type: string
          description: Error description
        traceId:
          type: string
          description: Request trace identifier
      required:
        - code
        - message
        - traceId
    CashReceiptIssuer:
      type: object
      description: Information about the cash receipt supplier.
      properties:
        businessRegistrationNumber:
          $ref: '#/components/schemas/BusinessRegistrationNumber'
          description: Supplier business registration number
        organizationName:
          type: string
          title: Organization name
          description: Supplier organization name (up to 20 characters)
          minLength: 1
          maxLength: 20
        representativeName:
          type: string
          title: Representative name
          description: Supplier representative name (up to 10 characters)
          minLength: 1
          maxLength: 10
        telephone:
          type: string
          title: Telephone
          description: >-
            Supplier telephone number. Enter an `010-1234-5678` or
            `070-1234-5678` number, a landline number with an area code, a 3- or
            4-digit exchange, and a 4-digit subscriber number, or a
            representative number with a 15xx, 16xx, or 18xx prefix followed by
            4 digits.
          pattern: >-
            ^(?:(?:02|0(?:31|32|33|41|42|43|44|51|52|53|54|55|61|62|63|64))-\d{3,4}-\d{4}|(?:010|070)-\d{4}-\d{4}|(?:15|16|18)\d{2}-\d{4})$
          examples:
            - 02-1234-5678
            - 010-1234-5678
            - 070-1234-5678
            - 1588-1234
      required:
        - businessRegistrationNumber
        - organizationName
        - representativeName
        - telephone
    CashReceiptRecipient:
      description: >
        Recipient information. Set `value` based on `type`. For detailed rules,
        see the [Cash receipt
        guide](/en/docs/api-introduction/cash-receipt-guide).
      oneOf:
        - $ref: '#/components/schemas/CashReceiptSelfRecipient'
        - $ref: '#/components/schemas/CashReceiptPhoneRecipient'
        - $ref: '#/components/schemas/CashReceiptBusinessRegistrationNumberRecipient'
      discriminator:
        propertyName: type
        mapping:
          SELF:
            $ref: '#/components/schemas/CashReceiptSelfRecipient'
          PHONE:
            $ref: '#/components/schemas/CashReceiptPhoneRecipient'
          BUSINESS_REGISTRATION_NUMBER:
            $ref: >-
              #/components/schemas/CashReceiptBusinessRegistrationNumberRecipient
    CashReceiptAmount:
      type: object
      description: >-
        The issuance amount. Each field and the total (supplyAmount + vatAmount
        + taxFreeAmount) must be no greater than 9,999,999,999, and the total
        must be greater than 0.
      properties:
        supplyAmount:
          type: integer
          format: int64
          minimum: 0
          maximum: 9999999999
          description: Supply amount
          examples:
            - 100
        vatAmount:
          type: integer
          format: int64
          minimum: 0
          maximum: 9999999999
          description: VAT amount
          examples:
            - 10
        taxFreeAmount:
          type:
            - integer
            - 'null'
          format: int64
          minimum: 0
          maximum: 9999999999
          description: Tax-free amount (optional, defaults to 0)
          examples:
            - 0
      required:
        - supplyAmount
        - vatAmount
    BusinessRegistrationNumber:
      type: string
      title: Business registration number
      description: >-
        A checksum-valid 10-digit number without hyphens (-). Pattern:
        `^\d{10}$`. Example numbers in the docs are placeholders that fail the
        checksum. Set a real business registration number.
      pattern: ^\d{10}$
      examples:
        - '1234567890'
    CashReceiptSelfRecipient:
      type: object
      additionalProperties: false
      properties:
        type:
          type: string
          enum:
            - SELF
        value:
          type:
            - string
            - 'null'
          title: Recipient identifier
          description: >-
            Omit this field or set it to `null` or an empty string for
            self-issuance.
          maxLength: 0
      required:
        - type
    CashReceiptPhoneRecipient:
      type: object
      additionalProperties: false
      properties:
        type:
          type: string
          enum:
            - PHONE
        value:
          type: string
          title: Mobile phone number
          description: A mobile phone number in `010-1234-5678` format
          pattern: ^010-\d{4}-\d{4}$
          examples:
            - 010-1234-5678
      required:
        - type
        - value
    CashReceiptBusinessRegistrationNumberRecipient:
      type: object
      additionalProperties: false
      properties:
        type:
          type: string
          enum:
            - BUSINESS_REGISTRATION_NUMBER
        value:
          $ref: '#/components/schemas/BusinessRegistrationNumber'
          title: Business registration number
          description: >-
            A 10-digit business registration number without hyphens for proof of
            expenditure
      required:
        - type
        - value
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: >-
        Append a colon to your API key, Base64-encode it, and put it in the
        header. Enter the API key as the username and leave the password empty.

````