---
title: "Correct the posted date of one active journal entry"
method: POST
path: "/accountant/companies/{customerId}/journal-entries/{id}/correct-date"
tags: ["Accountant Portal", "Journal Entries"]
---

# Correct the posted date of one active journal entry

`POST /accountant/companies/{customerId}/journal-entries/{id}/correct-date`

## Request

- Base URL: `https://api.medianfi.com/api/v1`
- URL: `https://api.medianfi.com/api/v1/accountant/companies/{customerId}/journal-entries/{id}/correct-date`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-Key`

Accountant-only date correction for a posted journal entry. The target date must be inside the posted-ledger date domain. Evidence naming the source of the new date is required. When a GL period exists for the target date it is bound onto `period_id`; otherwise period_id stays null (do not invent missing months). A matching source-transaction `occurred_on` is moved in the same write. Requires audit logging and GL recompute. Does not re-date SafeGuard `qbo-sg-9852`.

## Request body

- CorrectJournalEntryDateRequest
  - `entryDate` string, date, required: Target posted date (YYYY-MM-DD) inside the ledger date domain.
  - `evidence` string, required: Source of the corrected date (for example a QuickBooks TxnDate).

## Response `200`

Journal entry date corrected

- JournalEntryResponse
  - `success` boolean
  - `data` JournalEntry
    - `id` string, uuid
    - `companyId` string, uuid
    - `entityId` string, uuid, nullable: Concrete legal posting entity. Null is legacy data and resolves to the primary entity.
    - `entryDate` string, date
    - `description` string
    - `sourceType` 'transaction' | 'document' | 'adjustment' | 'system'
    - `sourceId` string, uuid, nullable
    - `periodId` string, uuid, nullable
    - `status` 'posted' | 'void'
    - `createdByUserId` string, uuid, nullable
    - `createdAt` string, date-time
    - `deletedAt` string, date-time, nullable
    - `deletedByUserId` string, uuid, nullable
    - `relatedJeId` string, uuid, nullable
    - `adjustmentReason` string, nullable
    - `isClosingEntry` boolean: A period-end closing entry (a system entry keyed on one of the company's periods). Reports leave these out of the P&L.
    - `sourceLabel` string
    - `sourceLink` object, nullable
      - `kind` string
      - `id` string
    - `lines` JournalLine[]
      - `id` string, uuid, required
      - `journalEntryId` string, uuid, required
      - `glAccountId` string, uuid, required
      - `classId` string, uuid, nullable: Line-level class dimension for downstream reporting. Accountant-portal responses always carry this field. Customer-facing responses do not carry it on journal lines.
      - `className` string, nullable: Name of the class in `classId`, resolved from the company's class list. Accountant-portal responses only, present when the class is known.
      - `classStatus` 'draft' | 'active' | 'inactive': Status of the class in `classId`. Accountant-portal responses only; never returned to the customer app.
      - `debitCents` integer, required
      - `creditCents` integer, required
      - `currency` string, required
      - `memo` string, nullable
      - `transactionId` string, uuid, nullable
      - `documentId` string, uuid, nullable

## Other responses

- `401`: Authentication required
- `403`: Insufficient permissions or not a company member
- `404`: Resource not found
- `409`: Journal entry is already void, non-posted, or soft-deleted
- `422`: Date is out of policy, the entry is reconciled, or the target period is filing-locked

---

[API](https://skmtc.dev/medianfi/apis/median-api.md) · [All operations](https://skmtc.dev/medianfi/apis/median-api/llms.txt) · [OpenAPI document](https://skmtc.dev/medianfi/apis/median-api/revisions/20090ea32b0d?raw)
