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

# Create one or more Credit Memos (max 100)

> **Scopes:** `credit_memo:create`



## OpenAPI

````yaml /api-reference/openapi.json post /v0/business/{business_id}/credit-memo
openapi: 3.1.0
info:
  title: Asset API
  version: '0.1'
servers:
  - url: https://api.sandbox.getasset.com
    description: Sandbox
  - url: https://api.getasset.com
    description: Production
security: []
paths:
  /v0/business/{business_id}/credit-memo:
    post:
      tags:
        - Credit Memo
      summary: Create one or more Credit Memos (max 100)
      description: '**Scopes:** `credit_memo:create`'
      operationId: create_credit_memos_v0_business__business_id__credit_memo_post
      parameters:
        - name: business_id
          in: path
          required: true
          schema:
            type: string
            format: biz_string
            title: Business Id
        - name: x-user-id
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: Optional external entity identifier that performed the action
            title: X-User-Id
          description: Optional external entity identifier that performed the action
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/CreditMemoCreate'
              maxItems: 100
              title: Credit Memos
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreditMemosSuccess'
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Not Found
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Unprocessable Content
        '503':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
          description: Service Unavailable
      security:
        - OAuth2PasswordBearer:
            - credit_memo:create
components:
  schemas:
    CreditMemoCreate:
      properties:
        customer_id:
          type: string
          format: cus_string
          title: Customer Id
          description: The ID of the Customer to issue the credit to
          examples:
            - cus_ApaM9xeQtNyVk5qpaHJbNj
        number:
          type: string
          maxLength: 255
          title: Number
          description: The number of the credit memo. Must be unique per business.
          examples:
            - CM-001
        amount:
          anyOf:
            - type: number
              exclusiveMinimum: 0
            - type: string
              pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$
          title: Amount
          description: The amount of the credit memo. Must be greater than zero.
          examples:
            - 100
        memo:
          anyOf:
            - type: string
              maxLength: 255
            - type: 'null'
          title: Memo
          description: Description of the credit memo
        issued_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Issued At
          description: The date and time the credit memo was issued. Defaults to now.
          examples:
            - '2026-01-15T00:00:00Z'
        tags:
          anyOf:
            - additionalProperties:
                anyOf:
                  - type: string
                  - items:
                      $ref: '#/components/schemas/TagValueInput-Input'
                    type: array
              type: object
            - type: 'null'
          title: Tags
          description: >-
            Inline tag input. Each field maps to either a single value (string,
            e.g. 'NYC') or a list of {value, amount} objects to allocate the
            credit memo across multiple values. The tag field must already
            exist; values are created automatically if missing. Per-field sum of
            amounts must not exceed the credit memo amount.
          examples:
            - Location: NYC
            - Job:
                - amount: '60.00'
                  value: Maple Street Remodel
                - amount: '40.00'
                  value: Downtown Office Rewire
      type: object
      required:
        - customer_id
        - number
        - amount
      title: CreditMemoCreate
    CreditMemosSuccess:
      properties:
        data:
          items:
            $ref: '#/components/schemas/CreditMemoPublic'
          type: array
          title: Data
        errors:
          items:
            $ref: '#/components/schemas/CreditMemoCreateError'
          type: array
          title: Errors
      type: object
      required:
        - data
        - errors
      title: CreditMemosSuccess
    ErrorResponse:
      properties:
        error:
          anyOf:
            - type: string
            - type: 'null'
          title: Error
          description: A description of the error
        data:
          title: Data
          description: Data associated with the error
      type: object
      required:
        - error
        - data
      title: ErrorResponse
    TagValueInput-Input:
      properties:
        value:
          type: string
          title: Value
          description: The tag value (option string)
          examples:
            - NYC
        amount:
          anyOf:
            - type: number
              minimum: 0
            - type: string
              pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$
            - type: 'null'
          title: Amount
          description: >-
            Portion of the source object allocated to this tag value. If
            omitted: with one value on a field the full source amount is used;
            with multiple values on a field the amount is split evenly. Mixed
            (some amounts set, some omitted) is rejected.
          examples:
            - '75.00'
      type: object
      required:
        - value
      title: TagValueInput
    CreditMemoPublic:
      properties:
        business_id:
          type: string
          format: biz_string
          title: Business Id
          description: The ID of the Business that the credit memo is associated with
          examples:
            - biz_Pk2fNFDd8wj7EFeLWJywc7
        customer_id:
          type: string
          format: cus_string
          title: Customer Id
          description: The ID of the Customer that the credit memo is issued to
          examples:
            - cus_ApaM9xeQtNyVk5qpaHJbNj
        number:
          type: string
          maxLength: 255
          title: Number
          description: The number of the credit memo
          examples:
            - CM-001
        amount:
          type: number
          title: Amount
          description: The amount of the credit memo
          examples:
            - 100
        memo:
          anyOf:
            - type: string
              maxLength: 255
            - type: 'null'
          title: Memo
          description: Description of the credit memo
        issued_at:
          type: string
          format: date-time
          title: Issued At
          description: The date and time the credit memo was issued
        journal_entry_id:
          type: string
          format: je_string
          title: Journal Entry Id
          description: The journal entry that issued the credit
          examples:
            - je_R2fAXCjqJPdpYata112zyW
        void_journal_entry_id:
          anyOf:
            - type: string
              format: je_string
            - type: 'null'
          title: Void Journal Entry Id
          description: The reversing journal entry created when the credit memo was voided
          examples:
            - je_R2fAXCjqJPdpYata112zyW
        voided_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Voided At
          description: The date and time the credit memo was voided
        created_by:
          anyOf:
            - type: string
              maxLength: 255
            - type: 'null'
          title: Created By
          description: The entity that created the credit memo
        id:
          type: string
          format: cm_string
          title: Id
          description: The ID of the credit memo
          examples:
            - cm_WQMDNUHpBThYSNh4AprDBo
        tags:
          anyOf:
            - additionalProperties:
                items:
                  $ref: '#/components/schemas/TagValueInput-Output'
                type: array
              type: object
            - type: 'null'
          title: Tags
          description: >-
            Tag field name to the list of values attached to the credit memo.
            Each value carries its allocated amount; a single-value field is
            still returned as a one-element list.
          examples:
            - Job:
                - amount: '60.00'
                  value: Maple Street Remodel
                - amount: '40.00'
                  value: Downtown Office Rewire
        voided:
          type: boolean
          title: Voided
          description: Whether the credit memo has been voided
          readOnly: true
      type: object
      required:
        - business_id
        - customer_id
        - number
        - amount
        - issued_at
        - journal_entry_id
        - id
        - voided
      title: CreditMemoPublic
    CreditMemoCreateError:
      properties:
        error:
          type: string
          title: Error
        number:
          type: string
          title: Number
      type: object
      required:
        - error
        - number
      title: CreditMemoCreateError
    TagValueInput-Output:
      properties:
        value:
          type: string
          title: Value
          description: The tag value (option string)
          examples:
            - NYC
        amount:
          anyOf:
            - type: number
            - type: 'null'
          title: Amount
          description: >-
            Portion of the source object allocated to this tag value. If
            omitted: with one value on a field the full source amount is used;
            with multiple values on a field the amount is split evenly. Mixed
            (some amounts set, some omitted) is rejected.
          examples:
            - '75.00'
      type: object
      required:
        - value
      title: TagValueInput
  securitySchemes:
    OAuth2PasswordBearer:
      type: oauth2
      flows:
        password:
          scopes: {}
          tokenUrl: /v0/auth/token

````