Workday Finance Journal Entries API

Journal entry creation and retrieval

OpenAPI Specification

workday-finance-journal-entries-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Workday Finance Financial Management Accounts Journal Entries API
  description: Core API for financial management operations including general ledger, accounts payable, accounts receivable, financial reporting, tax management, financial organizations, and worktag management. Exposes data relative to accounts, accounting, business plans, and related financial structures.
  version: v41.2
  contact:
    name: Workday API Support
    email: api-support@workday.com
  termsOfService: https://www.workday.com/en-us/legal.html
servers:
- url: https://wd2-impl-services1.workday.com/ccx/api/financial-management/v41.2/{tenant}
  description: Workday Financial Management API Server
  variables:
    tenant:
      default: mycompany
      description: Workday tenant name
security:
- bearerAuth: []
tags:
- name: Journal Entries
  description: Journal entry creation and retrieval
paths:
  /journalEntries:
    get:
      operationId: listJournalEntries
      summary: List Journal Entries
      description: Returns a collection of journal entries filtered by date, period, or account.
      tags:
      - Journal Entries
      parameters:
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/offset'
      - name: period
        in: query
        description: Filter by accounting period
        schema:
          type: string
      - name: account
        in: query
        description: Filter by account ID
        schema:
          type: string
      responses:
        '200':
          description: Collection of journal entries returned successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  total:
                    type: integer
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/JournalEntry'
        '401':
          $ref: '#/components/responses/Unauthorized'
    post:
      operationId: createJournalEntry
      summary: Create Journal Entry
      description: Creates a new journal entry in the general ledger.
      tags:
      - Journal Entries
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/JournalEntryCreate'
      responses:
        '201':
          description: Journal entry created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JournalEntry'
        '400':
          $ref: '#/components/responses/BadRequest'
  /journalEntries/{journalEntryId}:
    get:
      operationId: getJournalEntry
      summary: Get Journal Entry
      description: Returns details of a specific journal entry.
      tags:
      - Journal Entries
      parameters:
      - $ref: '#/components/parameters/journalEntryId'
      responses:
        '200':
          description: Journal entry details returned successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/JournalEntry'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  parameters:
    offset:
      name: offset
      in: query
      description: Number of results to skip for pagination
      schema:
        type: integer
        default: 0
    journalEntryId:
      name: journalEntryId
      in: path
      required: true
      description: The unique identifier of the journal entry
      schema:
        type: string
    limit:
      name: limit
      in: query
      description: Maximum number of results to return
      schema:
        type: integer
        default: 20
        maximum: 100
  schemas:
    JournalEntryCreate:
      type: object
      required:
      - period
      - lines
      properties:
        period:
          type: string
          description: Financial period identifier
        postingDate:
          type: string
          format: date
        memo:
          type: string
        lines:
          type: array
          items:
            $ref: '#/components/schemas/JournalEntryLine'
    ResourceReference:
      type: object
      properties:
        id:
          type: string
        descriptor:
          type: string
        href:
          type: string
          format: uri
    ErrorResponse:
      type: object
      properties:
        error:
          type: string
          description: Error code
        message:
          type: string
          description: Human-readable error message
    JournalEntry:
      type: object
      properties:
        id:
          type: string
          description: Journal entry unique identifier
        descriptor:
          type: string
          description: Journal entry display name
        journalEntryNumber:
          type: string
          description: Sequential journal entry number
        status:
          type: string
          enum:
          - draft
          - posted
          - reversed
        period:
          $ref: '#/components/schemas/ResourceReference'
        postingDate:
          type: string
          format: date
          description: Date the entry is posted to the ledger
        lines:
          type: array
          items:
            $ref: '#/components/schemas/JournalEntryLine'
        createdOn:
          type: string
          format: date-time
        href:
          type: string
          format: uri
    JournalEntryLine:
      type: object
      properties:
        lineOrder:
          type: integer
        account:
          $ref: '#/components/schemas/ResourceReference'
        debitAmount:
          type: number
          format: double
        creditAmount:
          type: number
          format: double
        currency:
          type: string
        memo:
          type: string
        worktags:
          type: array
          items:
            $ref: '#/components/schemas/ResourceReference'
  responses:
    Unauthorized:
      description: Authentication required
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    BadRequest:
      description: Invalid request parameters
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
externalDocs:
  description: Workday Financial Management API Documentation
  url: https://community.workday.com/sites/default/files/file-hosting/productionapi/Financial_Management/v41.2/index.html