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

# Create multiple Journal Entries

> Creates multiple new Journal Entries.



## OpenAPI

````yaml POST /v0/bulk/journal-entries
openapi: 3.1.0
info:
  title: Teal API
  version: '0.1'
servers:
  - url: https://api.sandbox.teal.dev
    description: Sandbox
  - url: https://api.teal.dev
    description: Production
security: []
paths:
  /v0/bulk/journal-entries:
    post:
      tags:
        - Journal Entries
      summary: Create multiple Journal Entries
      description: Creates multiple new Journal Entries.
      operationId: bulk_create_journal_entry_v0_bulk_journal_entries_post
      parameters:
        - name: expand
          in: query
          required: false
          schema:
            anyOf:
              - type: array
                items:
                  $ref: '#/components/schemas/JournalEntryExpandPath'
              - type: 'null'
            description: Comma-separated list of expandable paths.
            teal_explode: false
            title: Expand
          description: Comma-separated list of expandable paths.
        - name: teal-instance-id
          in: header
          required: true
          schema:
            type: string
            description: The Teal instance ID
            title: Teal-Instance-Id
          description: The Teal instance ID
        - name: modified-by
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: An optional identifier for audit logging.
            title: Modified-By
          description: An optional identifier for audit logging.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/JournalEntryCreate'
              title: Journal Entries
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ExpandableJournalEntry'
                title: >-
                  Response Bulk Create Journal Entry V0 Bulk Journal Entries
                  Post
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TealErrorResponse'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TealErrorResponse'
          description: Not Found
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TealErrorResponse'
          description: Unprocessable Content
        '503':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TealErrorResponse'
          description: Service Unavailable
      security:
        - OAuth2PasswordBearer: []
components:
  schemas:
    JournalEntryExpandPath:
      type: string
      enum:
        - accrual_source
        - line_entries
        - line_entries.transaction
        - line_entries.ledger
        - line_entries.opposing_ledger_ids
        - line_entries.payment_applications
      title: JournalEntryExpandPath
    JournalEntryCreate:
      properties:
        datetime:
          type: string
          format: date-time
          title: Datetime
          description: |-
            The datetime the Journal Entry was created in UTC 
                    time.
          examples:
            - '2023-02-15T06:42:18Z'
        description:
          type: string
          maxLength: 512
          title: Description
          description: |-
            An arbitrary string on the object, useful for 
                    displaying to the user.
          examples:
            - Payroll#230215
        line_entries:
          items:
            $ref: '#/components/schemas/LineEntryWithTags'
          type: array
          title: Line Entries
          description: |-
            The Line Entry objects to be associated with the 
                    Journal Entry. Must include at least two Line Entries, one debit and one 
                    credit, and the sum of the `amount`s of all debit entries must equal the 
                    sum of the `amount`s of the credit entries.
          examples:
            - - amount: '31282.27999999999883584678173065185546875'
                debit_credit: credit
                ledger_id: 7JRNsKwy2Lw66caxVU7WGC
              - amount: '31282.27999999999883584678173065185546875'
                debit_credit: debit
                ledger_id: HLn8oy2eqMUCwjp1Cwdgco
      type: object
      required:
        - datetime
        - description
        - line_entries
      title: JournalEntryCreate
    ExpandableJournalEntry:
      properties:
        id:
          type: string
          title: Id
          description: The unique ID of the object.
          examples:
            - C4ocnUQze8kDwQ3EczkZXn
        description:
          type: string
          maxLength: 512
          title: Description
          description: |-
            An arbitrary string on the object, useful for 
                    displaying to the user.
          examples:
            - Payroll#230215
        datetime:
          type: string
          format: date-time
          title: Datetime
          description: |-
            The datetime the Journal Entry was created in UTC 
                    time.
          examples:
            - '2023-02-15T06:42:18Z'
        creation_date:
          type: string
          format: date-time
          title: Creation Date
          description: >-
            The timestamp when this journal entry record was created in the
            database.
          examples:
            - '2023-02-15T06:42:18Z'
        is_opening_balance:
          type: boolean
          title: Is Opening Balance
          description: |-
            Whether the Journal Entry represents an
                    opening balance.
          examples:
            - false
        line_entry_ids:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Line Entry Ids
          description: |-
            The ids of the Line Entries detailing the Journal
                    Entry's movement of value.
          examples:
            - - XMDsKVuW4Wmi3LTW31Qw6E
              - NULcvXTkLczde32qs1rqgB
        linked_entity:
          type: 'null'
          title: Linked Entity
          description: Deprecated - always null
        creation_source:
          $ref: '#/components/schemas/JournalEntryCreationSource'
          description: >-
            The source of the journal entry creation: 'manual' if created
            manually by the user, 'transaction' if auto-generated from
            transaction categorization (e.g., Plaid sync), or 'legacy' if
            auto-generated from the old AR/AP system.
        line_entries:
          anyOf:
            - items:
                $ref: '#/components/schemas/ExpandableDetailedLineEntry'
              type: array
            - type: 'null'
          title: Line Entries
          description: >-
            List of Line Entries. platformGL instances only. Included in
            expanded responses.
          examples:
            - - amount: 31282.28
                datetime: '2023-02-15T06:42:18Z'
                debit_credit: debit
                description: Payroll#230215
                editable: false
                id: XMDsKVuW4Wmi3LTW31Qw6E
                journal_entry_description: Payroll#230215
                journal_entry_id: C4ocnUQze8kDwQ3EczkZXn
                ledger_id: 7JRNsKwy2Lw66caxVU7WGC
                ledger_name: Pluto Checking 4242
                tags: []
                transaction_id: txn_UjL3BQnEaJtecuC7CUeDk
              - amount: 31282.28
                datetime: '2023-02-15T06:42:18Z'
                debit_credit: credit
                description: Payroll#230215
                editable: false
                id: NULcvXTkLczde32qs1rqgB
                journal_entry_description: Payroll#230215
                journal_entry_id: C4ocnUQze8kDwQ3EczkZXn
                ledger_id: HLn8oy2eqMUCwjp1Cwdgco
                ledger_name: Payroll Expense
                tags: []
        accrual_source:
          anyOf:
            - $ref: '#/components/schemas/AccrualSource'
            - type: 'null'
          description: >-
            The accrual source associated with this journal entry, if any.
            Included in expanded responses.
      type: object
      required:
        - id
        - description
        - datetime
        - creation_date
        - is_opening_balance
        - creation_source
      title: ExpandableJournalEntry
    TealErrorResponse:
      properties:
        message:
          anyOf:
            - type: string
            - type: 'null'
          title: Message
          description: A description of the error for API developers.
        data:
          title: Data
          description: Data associated with the error.
        display_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Display Message
          description: A description of the error for end users.
        error_code:
          anyOf:
            - $ref: '#/components/schemas/TealErrorCode'
            - type: 'null'
          description: Error code associated with the error.
      type: object
      required:
        - message
      title: TealErrorResponse
    LineEntryWithTags:
      properties:
        amount:
          anyOf:
            - type: number
              maximum: 1000000000000000000
              minimum: -1000000000000000000
            - type: string
              pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$
          title: Amount
          description: The value of the line entry in decimal dollar cents.
          examples:
            - '31282.27999999999883584678173065185546875'
        debit_credit:
          $ref: '#/components/schemas/DebitCredit'
          description: Indicates if the amount is a credit or debit.
          examples:
            - credit
        description:
          anyOf:
            - type: string
              maxLength: 4000
            - type: 'null'
          title: Description
          description: >-
            An arbitrary string on the object, useful for displaying to the user
            or for categorization.
          examples:
            - Payroll#230215
        ledger_id:
          type: string
          title: Ledger Id
          description: The ID of the Line Entry's Ledger.
          examples:
            - 7JRNsKwy2Lw66caxVU7WGC
        tag_ids:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Tag Ids
          description: A list of IDs of the Tag objects associated with the Line Entry.
      type: object
      required:
        - amount
        - debit_credit
        - ledger_id
      title: LineEntryWithTags
    JournalEntryCreationSource:
      type: string
      enum:
        - manual
        - transaction
        - accrual
        - payment_application
        - legacy
        - scheduled_accrual
      title: JournalEntryCreationSource
      description: >-
        The source that created a journal entry.


        - `manual`: Created manually by the user via the UI.

        - `transaction`: Created automatically from a transaction categorization
        (e.g., Plaid sync).

        - `accrual`: Created automatically as part of an accrual workflow.

        - `payment_application`: Created automatically as part of a payment
        application workflow.

        - `legacy`: Created automatically from the old AR/AP system
        (receivables/payables).

        - `scheduled_accrual`: Created automatically by the background accrual
        schedule job.
    ExpandableDetailedLineEntry:
      properties:
        amount:
          type: number
          title: Amount
          description: The value of the line entry in decimal dollar cents.
          examples:
            - '31282.27999999999883584678173065185546875'
        debit_credit:
          $ref: '#/components/schemas/DebitCredit'
          description: Indicates if the amount is a credit or debit.
          examples:
            - credit
        description:
          anyOf:
            - type: string
              maxLength: 4000
            - type: 'null'
          title: Description
          description: >-
            An arbitrary string on the object, useful for displaying to the user
            or for categorization.
          examples:
            - Payroll#230215
        ledger_id:
          type: string
          title: Ledger Id
          description: The ID of the Line Entry's Ledger.
          examples:
            - 7JRNsKwy2Lw66caxVU7WGC
        related_line_entry_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Related Line Entry Id
          description: >-
            If the Line Entry is identified as a transfer between accounts, the
            ID of the Line Entry in the opposing Ledger. Related guide:
            [Auto-categorization](https://docs.teal.dev/guides/platform/categorization/pipeline#transfers-between-accounts)
        transaction_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Transaction Id
          description: The ID of the associated Transaction, if one exists.
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
          description: The unique ID of the object.
          examples:
            - XMDsKVuW4Wmi3LTW31Qw6E
        datetime:
          type: string
          format: date-time
          title: Datetime
          description: The datetime the Line Entry was created in UTC time.
          examples:
            - '2023-02-15T06:42:18Z'
        editable:
          type: boolean
          title: Editable
          description: >-
            Indicates if the Line Entry can be manually added or removed from a
            Ledger, as dictated by the `editable` property on the Ledger.
          examples:
            - true
        journal_entry:
          anyOf:
            - $ref: '#/components/schemas/JournalEntry'
            - type: 'null'
          description: Expandable. The associated Journal Entry object.
          examples:
            - creation_date: '2023-02-15T06:42:18Z'
              creation_source: manual
              datetime: '2023-02-15T06:42:18Z'
              description: Payroll#230215
              id: C4ocnUQze8kDwQ3EczkZXn
              is_opening_balance: false
              line_entry_ids:
                - XMDsKVuW4Wmi3LTW31Qw6E
                - NULcvXTkLczde32qs1rqgB
        journal_entry_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Journal Entry Id
          description: The ID of the associated Journal Entry.
          examples:
            - C4ocnUQze8kDwQ3EczkZXn
        journal_entry_description:
          type: string
          maxLength: 512
          title: Journal Entry Description
          description: An arbitrary string on the object, useful for displaying to users.
          examples:
            - Payroll#230215
        ledger:
          anyOf:
            - $ref: '#/components/schemas/Ledger'
            - type: 'null'
          description: Expandable. The associated Ledger object.
          examples:
            - created_at: '2024-01-01T00:00:00'
              debit_credit: debit
              editable: false
              financial_account_type: bank_account
              id: 7JRNsKwy2Lw66caxVU7WGC
              is_required: false
              name: Pluto Checking 4242
              report_cash_flow: true
              sort_code: '2240'
              sub_type: current_assets
              type: asset
        ledger_name:
          type: string
          title: Ledger Name
          description: The name of the Line Entry's Ledger.
          examples:
            - Payroll Expense
        opposing_ledger_ids:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Opposing Ledger Ids
          description: >-
            Expandable. IDs of the ledgers on the other side(s) of the line
            entry with opposite debit/credit.
        tags:
          anyOf:
            - items:
                $ref: '#/components/schemas/Tag'
              type: array
            - type: 'null'
          title: Tags
          description: A list of all the Tags associated with the Line Entry, if any.
        transaction:
          anyOf:
            - $ref: '#/components/schemas/Transaction'
            - type: 'null'
          description: Expandable. The associated Transaction object, if one exists.
          examples:
            - amount: 31282.28
              datetime: '2023-02-15T06:42:18Z'
              description: Payroll#230215
              id: txn_UjL3BQnEaJtecuC7CUeDk
              journal_entry_id: C4ocnUQze8kDwQ3EczkZXn
              ledger_id: 7JRNsKwy2Lw66caxVU7WGC
              line_entry_id: XMDsKVuW4Wmi3LTW31Qw6E
              personal: false
              posted_status: posted
              review_status: reviewed
              source_account_id: L7RR1Yz85FJoASPvPLs441
        payment_applications:
          anyOf:
            - items:
                $ref: '#/components/schemas/LineEntryPaymentApplication'
              type: array
            - type: 'null'
          title: Payment Applications
          description: >-
            Payments applied to an accrual source (bill/invoice) using the Line
            Entry.
        accrual_source:
          anyOf:
            - $ref: '#/components/schemas/AccrualSource'
            - type: 'null'
          description: The accrual source linked to a line entry, if one exists.
      type: object
      required:
        - amount
        - debit_credit
        - ledger_id
        - id
        - datetime
        - editable
        - journal_entry_id
        - journal_entry_description
        - ledger_name
      title: ExpandableDetailedLineEntry
    AccrualSource:
      properties:
        id:
          type: string
          title: Id
        instance_id:
          type: string
          title: Instance Id
        external_id:
          anyOf:
            - type: string
            - type: 'null'
          title: External Id
        reference_number:
          type: string
          title: Reference Number
        external_party_id:
          anyOf:
            - type: string
            - type: 'null'
          title: External Party Id
        type:
          $ref: '#/components/schemas/AccrualSourceType'
        status:
          $ref: '#/components/schemas/AccrualSourceStatus'
        effective_date:
          type: string
          format: date
          title: Effective Date
        due_date:
          anyOf:
            - type: string
              format: date
            - type: 'null'
          title: Due Date
        gross_amount:
          type: number
          title: Gross Amount
        amount_paid:
          type: number
          title: Amount Paid
        amount_adjusted:
          type: number
          title: Amount Adjusted
        amount_outstanding:
          type: number
          title: Amount Outstanding
        notes:
          anyOf:
            - type: string
            - type: 'null'
          title: Notes
        lines:
          anyOf:
            - items:
                $ref: '#/components/schemas/AccrualSourceLine'
              type: array
            - type: 'null'
          title: Lines
      type: object
      required:
        - id
        - instance_id
        - reference_number
        - type
        - status
        - effective_date
        - gross_amount
        - amount_paid
        - amount_adjusted
        - amount_outstanding
      title: AccrualSource
    TealErrorCode:
      type: string
      enum:
        - invalid_date
        - invalid_ledger
        - missing_parameters
        - duplicate_name
        - duplicate_sort_code
        - invalid_ledger_type
        - invalid_ledger_report_cash_flow
        - deleting_required_ledger
        - repeated_tag_group
        - deleting_transaction_line
        - modifying_read_only_ledger
        - debits_credits_not_equal
        - modifying_datetime_opening_balance
        - modifying_accrual_journal_entry
        - modifying_payment_application_journal_entry
        - reconciliation_in_progress
        - reconciled_balance_does_not_match
        - journal_entry_outside_reconciliation_period
        - entries_start_date_after_transactions
        - entries_start_date_after_reconciliations
        - entries_start_date_after_journal_entries
      title: TealErrorCode
    DebitCredit:
      type: string
      enum:
        - debit
        - credit
      title: DebitCredit
    JournalEntry:
      properties:
        id:
          type: string
          title: Id
          description: The unique ID of the object.
          examples:
            - C4ocnUQze8kDwQ3EczkZXn
        description:
          type: string
          maxLength: 512
          title: Description
          description: |-
            An arbitrary string on the object, useful for 
                    displaying to the user.
          examples:
            - Payroll#230215
        datetime:
          type: string
          format: date-time
          title: Datetime
          description: |-
            The datetime the Journal Entry was created in UTC 
                    time.
          examples:
            - '2023-02-15T06:42:18Z'
        creation_date:
          type: string
          format: date-time
          title: Creation Date
          description: >-
            The timestamp when this journal entry record was created in the
            database.
          examples:
            - '2023-02-15T06:42:18Z'
        is_opening_balance:
          type: boolean
          title: Is Opening Balance
          description: |-
            Whether the Journal Entry represents an
                    opening balance.
          examples:
            - false
        line_entry_ids:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Line Entry Ids
          description: |-
            The ids of the Line Entries detailing the Journal
                    Entry's movement of value.
          examples:
            - - XMDsKVuW4Wmi3LTW31Qw6E
              - NULcvXTkLczde32qs1rqgB
        linked_entity:
          type: 'null'
          title: Linked Entity
          description: Deprecated - always null
        creation_source:
          $ref: '#/components/schemas/JournalEntryCreationSource'
          description: >-
            The source of the journal entry creation: 'manual' if created
            manually by the user, 'transaction' if auto-generated from
            transaction categorization (e.g., Plaid sync), or 'legacy' if
            auto-generated from the old AR/AP system.
      type: object
      required:
        - id
        - description
        - datetime
        - creation_date
        - is_opening_balance
        - creation_source
      title: JournalEntry
    Ledger:
      properties:
        id:
          type: string
          title: Id
          description: The unique ID of the object.
          examples:
            - 7JRNsKwy2Lw66caxVU7WGC
        name:
          type: string
          maxLength: 255
          title: Name
          description: The name of the ledger.
          examples:
            - Pluto Checking 4242
        debit_credit:
          $ref: '#/components/schemas/DebitCredit'
          description: Indicates if the ledger is a credit or debit ledger.
          examples:
            - debit
        editable:
          type: boolean
          title: Editable
          description: >-
            Whether line entries can be manually added or removed from the
            ledger.
          examples:
            - false
        financial_account_type:
          anyOf:
            - $ref: '#/components/schemas/FinancialAccountType'
            - type: 'null'
          description: Indicates that the ledger represents a real-world financial account.
          examples:
            - bank_account
        is_required:
          type: boolean
          title: Is Required
          description: >-
            Indicates that the ledger is one of the four system ledgers required
            for Teal to work. In the default chart of accounts, these are named
            one of: `Transfers Between Accounts`, `Opening Balance Retained
            Earnings`, `Uncategorized Cash Inflow`, `Uncategorized Cash
            Outflow`. You can update the names of these to fit your needs.
          examples:
            - false
        required_ledger_purpose:
          anyOf:
            - $ref: '#/components/schemas/SpecialLedgerType'
            - type: 'null'
          description: >-
            Required ledgers fulfill specific system functions and are necessary
            for the accounting system to operate.
          examples:
            - account_transfers
        parent:
          anyOf:
            - $ref: '#/components/schemas/Ledger'
            - type: 'null'
          description: >-
            Expandable. If the ledger is a child ledger, the parent ledger
            object.
        parent_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Parent Id
          description: If the ledger is a child Ledger, the ID of the parent ledger object.
          examples:
            - null
        report_cash_flow:
          type: boolean
          title: Report Cash Flow
          description: >-
            Whether or not this ledger is included in the cash flow report. For
            ledgers with a financial_account_type, this value is automatically
            determined and cannot be modified.
          examples:
            - false
        sort_code:
          type: string
          maxLength: 20
          title: Sort Code
          description: >-
            Determines the display order in reports, ordered digit by digit,
            starting from the leftmost position. For example, `20010` will come
            before `3050`.
          examples:
            - '1400'
        sub_type:
          $ref: '#/components/schemas/LedgerSubType'
          description: >-
            Indicates similar characteristics and accounting treatment for a
            group of ledgers within a `type`.
          examples:
            - current_assets
        type:
          $ref: '#/components/schemas/LedgerType'
          description: >-
            Indicates the purpose and location of the funds and value recorded
            in the ledger and which report it is included in: `asset`,
            `liability` and `equity` ledgers are displayed on the balance sheet;
            `revenue` and `expenses` are displayed on the income statement.
          examples:
            - asset
        created_at:
          type: string
          format: date-time
          title: Created At
          description: The datetime when the ledger was created.
          examples:
            - '2024-01-01T00:00:00Z'
      type: object
      required:
        - id
        - name
        - debit_credit
        - editable
        - is_required
        - parent_id
        - report_cash_flow
        - sort_code
        - sub_type
        - type
        - created_at
      title: Ledger
    Tag:
      properties:
        id:
          type: string
          title: Id
          description: The unique ID of the object.
          examples:
            - UjL3BQnEaJtecuC7CUeDk
        name:
          type: string
          title: Name
          description: An arbitrary string, useful for identifying the tag to the user.
          examples:
            - Sprinter - 1ab-c23
        tag_group_id:
          type: string
          title: Tag Group Id
          description: The ID of the tag group.
          examples:
            - NCB2xo5S1yQbNgyWskXpwG
      type: object
      required:
        - id
        - name
        - tag_group_id
      title: Tag
    Transaction:
      properties:
        id:
          type: string
          title: Id
          description: |-
            The unique ID of the object. This is used as an idempotency 
                    key to prevent duplicates. This is manually set as part of the create 
                    transactions request. If the transaction is created via a data integration, 
                    Plaid for example, it will be set to the `transaction_id` to enforce 
                    idempotency with the data source.
          examples:
            - t_9237232
        amount:
          type: number
          title: Amount
          description: The value of the transaction in decimal dollar cents.
          examples:
            - 132629.38
        datetime:
          type: string
          format: date-time
          title: Datetime
          description: |-
            The UTC datetime that the Transaction was created. This
                    will never be before an Instance's `entries_start` date. When importing 
                    transactions, transactions whose datetime is before the Instance’s 
                    `entries_start` date will be skipped. Other transactions will be processed 
                    as normal.
          examples:
            - '2024-03-15T15:28:53Z'
        description:
          type: string
          maxLength: 512
          title: Description
          description: |-
            An arbitrary string on the object, useful for
                    displaying information to the user. 
                    Descriptions over 512 characters will be truncated.
          examples:
            - Payroll March 15 2024
        metadata:
          anyOf:
            - additionalProperties:
                type: string
              type: object
            - type: 'null'
          title: Metadata
          description: |-
            Arbitrary structured information about the transaction.
                    This could be location of the transaction to display to the user or vendor 
                    information to use as part of a Platform or Instance categorization rule. 
                    Teal does not use metadata for any accounting purposes.
          examples:
            - null
        categorization_method:
          anyOf:
            - $ref: '#/components/schemas/CategorizerType'
            - type: 'null'
          description: >-
            How the Transaction was assigned its 
                    category.

            See the [categorization
            guide](https://docs.teal.dev/guides/platform/categorization/pipeline) 
                    for more details.
          examples:
            - similarity
        posted_status:
          $ref: '#/components/schemas/PostedStatus'
          description: |-
            Indicates if the corresponding journal entry and 
                    line entries for the transaction have been have been created. `deleted` 
                    indicates that the transaction is `posted` but the corresponding journal entry
                    and line entries have been deleted.
          examples:
            - posted
        review_status:
          $ref: '#/components/schemas/ReviewStatus'
          description: |-
            Indicates if the transaction has been reviewed. 
                    See the [reviewing transactions](https://docs.teal.dev/guides/transactions/reviewing_transactions) 
                    for steps on how to use this.
          examples:
            - reviewed
        journal_entry_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Journal Entry Id
          description: |-
            The ID of the Journal Entry that the 
                    Transaction's Line Entry is associated with.
          examples:
            - C4ocnUQze8kDwQ3EczkZXn
        journal_entry:
          type: 'null'
          title: Journal Entry
          description: Expandable. The associated Journal Entry object.
          examples:
            - null
        source_account_id:
          type: string
          title: Source Account Id
          description: |-
            The ID of the transaction source account
                    where the transaction is stored.
        ledger_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Ledger Id
          description: |-
            The ID of the financial account ledger associated 
                    with the Transaction.
          examples:
            - 7JRNsKwy2Lw66caxVU7WGC
        ledger:
          type: 'null'
          title: Ledger
          description: |-
            Expandable. The Ledger object of the financial 
                    account associated with the Transaction.
          examples:
            - null
        line_entry_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Line Entry Id
          description: |-
            The ID of the financial account ledger associated 
                    with the Transaction.
          examples:
            - XMDsKVuW4Wmi3LTW31Qw6E
        line_entry:
          type: 'null'
          title: Line Entry
          description: Expandable. The associated Line Entry.
          examples:
            - null
        opposing_line_entry_ids:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Opposing Line Entry Ids
          description: |-
            A list of IDs of all the Line Entries 
                    objects in the journal entry with the opposite `debit_credit` status. For
                    example if the Transaction's line entry is a debit this opposing line entries
                    will be credit line entries.
          examples:
            - - NULcvXTkLczde32qs1rqgB
        opposing_line_entries:
          type: 'null'
          title: Opposing Line Entries
          description: |-
            Expandable. A list of the Line Entry objects
                    with the opposite `debit_credit` status.
          examples:
            - null
        tags:
          anyOf:
            - items:
                $ref: '#/components/schemas/Tag'
              type: array
            - type: 'null'
          title: Tags
          description: |-
            A list of all the Tags associated with the Transaction, 
                    if any. Tags are transitive — the tags on a Transaction are applied to 
                    its corresponding Line Entry or Line Entries.
          examples:
            - null
        personal:
          type: boolean
          title: Personal
          description: Whether the transaction is a non-business personal transaction.
          examples:
            - false
      type: object
      required:
        - id
        - amount
        - datetime
        - description
        - posted_status
        - review_status
        - source_account_id
        - personal
      title: Transaction
    LineEntryPaymentApplication:
      properties:
        payment_application_id:
          type: string
          title: Payment Application Id
        matched_amount:
          type: number
          title: Matched Amount
        accrual_source:
          anyOf:
            - $ref: '#/components/schemas/LineEntryPaymentApplicationAccrualSource'
            - type: 'null'
        source_type:
          $ref: '#/components/schemas/PaymentApplicationSourceType'
        status:
          $ref: '#/components/schemas/PaymentApplicationStatus'
        adjustments:
          items:
            $ref: '#/components/schemas/PaymentApplicationAccrualAdjustment'
          type: array
          title: Adjustments
      type: object
      required:
        - payment_application_id
        - matched_amount
        - accrual_source
        - source_type
        - status
        - adjustments
      title: LineEntryPaymentApplication
    AccrualSourceType:
      type: string
      enum:
        - invoice
        - bill
        - payroll
      title: AccrualSourceType
    AccrualSourceStatus:
      type: string
      enum:
        - paid
        - open
        - draft
        - cancelled
      title: AccrualSourceStatus
    AccrualSourceLine:
      properties:
        id:
          type: string
          title: Id
        accrual_source_id:
          type: string
          title: Accrual Source Id
        external_id:
          anyOf:
            - type: string
            - type: 'null'
          title: External Id
        account_id:
          type: string
          title: Account Id
        line_number:
          type: integer
          title: Line Number
        description:
          type: string
          title: Description
        amount:
          type: number
          title: Amount
      type: object
      required:
        - id
        - accrual_source_id
        - account_id
        - line_number
        - description
        - amount
      title: AccrualSourceLine
    FinancialAccountType:
      type: string
      enum:
        - bank_account
        - credit_card
        - payments
        - payroll
        - loan
        - prepaid_card
        - accounts_receivable
        - accounts_payable
        - treasury
        - investment
      title: FinancialAccountType
    SpecialLedgerType:
      type: string
      enum:
        - uncat_inflow
        - uncat_outflow
        - account_transfers
        - opening_balances
        - accounts_receivable
        - accounts_payable
        - wages_expense
        - bonus_expense
        - commissions_expense
        - contractor_expense
        - employee_reimbursements
        - severance_expense
        - payroll_tax_expense
        - employer_benefits_expense
        - health_insurance_expense
        - wages_payable
        - payroll_tax_payable
        - employee_benefit_liabilities
        - payroll_liabilities
      title: SpecialLedgerType
      description: Special ledgers are ledgers that have special behaviour in the system.
    LedgerSubType:
      type: string
      enum:
        - current_assets
        - non-current_assets
        - transfers_between_accounts
        - uncategorized_assets
        - current_liabilities
        - non-current_liabilities
        - equity
        - operating_revenues
        - other_income
        - cost_of_goods_sold
        - operating_expenses
        - other_expenses
        - retained_earnings
      title: LedgerSubType
    LedgerType:
      type: string
      enum:
        - asset
        - liability
        - equity
        - revenue
        - expense
      title: LedgerType
    CategorizerType:
      type: string
      enum:
        - ai
        - rules
        - similarity
        - transfer_between_accounts
        - uncategorized
        - user
      title: CategorizerType
    PostedStatus:
      type: string
      enum:
        - not_posted
        - posted
        - deleted
      title: PostedStatus
    ReviewStatus:
      type: string
      enum:
        - unreviewed
        - reviewed
      title: ReviewStatus
    LineEntryPaymentApplicationAccrualSource:
      properties:
        accrual_source_id:
          type: string
          title: Accrual Source Id
        type:
          $ref: '#/components/schemas/AccrualSourceType'
        external_id:
          anyOf:
            - type: string
            - type: 'null'
          title: External Id
        external_party_id:
          anyOf:
            - type: string
            - type: 'null'
          title: External Party Id
        reference_number:
          type: string
          title: Reference Number
        effective_date:
          type: string
          format: date
          title: Effective Date
        gross_amount:
          type: number
          title: Gross Amount
      type: object
      required:
        - accrual_source_id
        - type
        - external_id
        - external_party_id
        - reference_number
        - effective_date
        - gross_amount
      title: LineEntryPaymentApplicationAccrualSource
    PaymentApplicationSourceType:
      type: string
      enum:
        - bank_transaction
        - customer_credit
        - manual
      title: PaymentApplicationSourceType
    PaymentApplicationStatus:
      type: string
      enum:
        - proposed
        - confirmed
        - rejected
      title: PaymentApplicationStatus
    PaymentApplicationAccrualAdjustment:
      properties:
        accrual_adjustment_id:
          type: string
          title: Accrual Adjustment Id
        debit_account_id:
          type: string
          title: Debit Account Id
        credit_account_id:
          type: string
          title: Credit Account Id
        amount:
          type: number
          title: Amount
      type: object
      required:
        - accrual_adjustment_id
        - debit_account_id
        - credit_account_id
        - amount
      title: PaymentApplicationAccrualAdjustment
  securitySchemes:
    OAuth2PasswordBearer:
      type: oauth2
      description: >-
        Bearer authentication header of the form Bearer <token>, where <token>
        is your auth token.
      flows:
        password:
          scopes: {}
          tokenUrl: https://developer.teal.dev

````