---
title: "Fetch case by ID"
method: GET
path: "/cases/{id}"
tags: ["Cases"]
---

# Fetch case by ID

`GET /cases/{id}`

Returns case details for the provided Debitura case ID (a GUID).

## Path parameters

- `id` string, uuid, required

## Response `200`

Case found

- DebituraWebExternalApiContractsV1CasesInvoiceDto — V1 Invoice DTO for external partner APIs
  - `id` string, uuid
  - `dateCreated` string, date-time
  - `dateUpdated` string, date-time, nullable
  - `reference` string, nullable
  - `creditorReference` string, nullable
  - `creditorComments` string, nullable
  - `claimDescription` string, nullable
  - `grossAmount` number, double
  - `remainder` number, double
  - `interestFees` number, double
  - `reminderFees` number, double
  - `collectionFees` number, double
  - `totalAddedFees` number, double
  - `currency` string, nullable
  - `isTestCase` boolean
  - `lifecycle` string, nullable
  - `dueDate` string, date-time
  - `date` string, date-time
  - `dateFinished` string, date-time, nullable
  - `dateCollectionStarted` string, date-time, nullable
  - `closeCode` string, nullable
  - `currentEngagementPhase` string, nullable — The current phase of the case's engagement: "Pre-legal", "Legal", or "Enforcement". A different axis from Debitura.Web.ExternalApi.Contracts.V1.Cases.InvoiceDto.Lifecycle/Debitura.Web.ExternalApi.Contracts.V1.Cases.InvoiceDto.CloseCode — an Active case can be in any of the three phases. Null means "no active engagement" (e.g. lead / quoting / pre-contract-signing / unassigned, or a data-consistency gap) — this is a distinct third state, NOT a synonym for Pre-legal. Most cases legitimately read Pre-legal; phase only leaves Pre-legal on legal/enforcement quote flows. Not guaranteed to be monotonic: an admin correction can move phase backwards (e.g. Legal back to Pre-legal). Persists after case closure — reflects the case's last-known engagement phase, not the current Lifecycle. Note: this is a different field from a lead quote's own offered phase (the phase a partner's quote proposes to work the case at, if this case ever went through a quote flow) — this field is the case-level phase of its actual engagement, not a quote's terms.
  - `claimType` string, nullable — The type of claim for this case (e.g. "Unpaid Invoice", "Loan Repayment", "Breach of Contract"). Null if not set.
  - `creditorDivisionId` string, uuid, nullable
  - `debtor` DebituraWebExternalApiContractsV1CasesDebtorDto — V1 Debtor DTO for external partner APIs. The debtor is the party that owes the debt.
    - `type` string, required — Debtor type. Valid values: "Company" or "Person"
    - `name` string, required — Debtor name (company name or person's full name)
    - `contactPerson` string, nullable — Contact person at the company (required for companies, not used for persons)
    - `companyRegistrationNumber` string, nullable — Company registration number (VAT number, CVR, org number, etc.)
    - `address` string, nullable — Street address
    - `zipCode` string, nullable — Postal/ZIP code
    - `city` string, nullable — City name
    - `state` string, nullable — State/region/province name
    - `stateAlpha2` string, nullable — US state: two-letter code (e.g., "CA"), ISO 3166-2 format (e.g., "US-CA"), or full name (e.g., "California")
    - `countryAlpha2` string, nullable — Country code (ISO 3166-1 alpha-2 format)
    - `country` string, nullable — Country name
    - `email` string, nullable — Email address for debtor contact
    - `phone` string, nullable — Phone number (include country code)
  - `collectionPartner` DebituraWebExternalApiContractsV1CasesCollectionPartnerDto — V1 Collection Partner DTO for external partner APIs
    - `name` string, nullable
    - `officeEmail` string, nullable
    - `officePhone` string, nullable
    - `publicSite` string, nullable
    - `surveyCadenceMode` 0 | 1
  - `creditor` DebituraWebExternalApiContractsV1CasesCreditorDto — Creditor (client) information for external partner APIs. Represents the party that the debtor owes money to.
    - `id` string, uuid — Unique identifier for the creditor
    - `companyName` string, nullable — Company name of the creditor
    - `companyRegistrationNumber` string, nullable — Company registration number (CVR, VAT number, etc.)
    - `officeEmail` string, nullable — Primary office email address
    - `officePhone` string, nullable — Primary office phone number
    - `address` string, nullable — Street address
    - `city` string, nullable — City
    - `zipCode` string, nullable — Postal/ZIP code
    - `state` string, nullable — State or region (if applicable)
    - `country` string, nullable — Country name
    - `division` DebituraWebExternalApiContractsV1CasesCreditorDivisionDto — Creditor division information for external partner APIs. Represents a specific division or department within a creditor organization.
      - `id` string, uuid — Unique identifier for the division
      - `name` string, nullable — Name of the division
  - `bankAccount` DebituraWebExternalApiContractsV1CasesBankAccountDto — Bank account information for partner API. Full details provided as partners need this to: 1. Provide payment instructions to debtors (when debtor pays client directly) 2. Execute payouts to clients (when partner receives payment and pays out remainder)
    - `id` integer — Bank account identifier
    - `label` string, nullable — User-friendly label (e.g., "Main EUR Account")
    - `scheme` string, nullable — Account scheme: IBAN, SWIFT, or LOCAL
    - `currencyCode` string, nullable — Currency code (ISO 4217)
    - `bankCountryCode` string, nullable — Bank country code (ISO Alpha-2)
    - `accountHolderName` string, nullable — Account holder name (beneficiary)
    - `iban` string, nullable — IBAN (for IBAN scheme accounts)
    - `bic` string, nullable — BIC/SWIFT code (for IBAN and SWIFT scheme accounts)
    - `accountNumber` string, nullable — Account number (for SWIFT and LOCAL scheme accounts)
    - `localIdentifier` string, nullable — Local identifier (for LOCAL scheme accounts, e.g., sort code + account number)
    - `localIdentifierType` string, nullable — Type of local identifier (e.g., "Sort Code", "Routing Number")
    - `bankName` string, nullable — Bank name (optional)
    - `bankAddress` string, nullable — Bank address (optional)
    - `bankCity` string, nullable — Bank city (optional)
    - `bankZipCode` string, nullable — Bank zip/postal code (optional)
    - `bankState` string, nullable — Bank state/region (optional)
  - `blendedAgeUpliftPoints` number, double, nullable — MULTI-INVOICE AGE BUCKET PRICING Calculated blended age uplift percentage points (0-20) for multi-invoice cases. Shows the additional fee percentage added due to invoice age. Formula: ((A12-A24)×10 + A24×20) / Total Principal Null for single-invoice cases (age uplift is calculated from due date instead).
  - `preLegalSuccessFee` number, double, nullable — PRE-LEGAL SUCCESS FEE The total pre-legal success fee percentage for this case. Includes base fee + age-based uplift (blended or single-invoice). Null if pricing has not been calculated yet or if case is not in pre-legal phase. Example: 20.5 represents 20.5% success fee.
  - `solutionUrl` string, nullable — When the case is created with allowPendingContracts=true and required contracts are unsigned, this URL points to the signing page. Null when contracts are already signed or not applicable.
  - `signingHandoff` DebituraWebExternalApiContractsV1CasesSigningHandoffDto — Partner-facing handoff metadata for a creditor's pending signing chain. Returned on POST /cases responses (422 with pending-signing errors, or 200 with AllowPendingContracts=true when signings remain). Designed as an envelope so future fields (expiration, suggested email copy, etc.) can be added without polluting the parent DTO.
    - `combinedSigningUrl` string, nullable — Single signing entry URL that walks the creditor through every pending step (SDCA upgrade → PoA → JPA → KYC) on the Creditors app and returns to the partner-supplied returnUrl when done.
  - `exclusivePeriodEndDate` string, date-time, nullable — The date the exclusive collection period ends (or ended). Null if no collection period has been created for this case (e.g. custom-terms cases). Use GET /cases/{id}/exclusive-period for the full chain including extensions.
  - `disputeStatus` string, nullable — Whether the claim is disputed by the debtor. Returns the description of Debitura.Domain.Model.Receiveables.Invoices.Enums.ClaimDisputeStatus: "Yes, the claim is disputed", "No, the claim is not disputed", or "Don't Know". Null when the dispute status has not been set on the case.
  - `validation` DebituraDomainServicesCaseValidationCaseValidationLeanDto
    - `needsInfo` boolean
  - `assignedUser` DebituraWebExternalApiContractsV1CasesAssignedUserDto — Represents the creditor team member assigned to a case.
    - `email` string, nullable — The assigned user's email address.
    - `name` string, nullable — The assigned user's full name.
  - `allocationOutstanding` DebituraWebExternalApiContractsV1CasesInvoiceAllocationOutstandingDto — Additive external-API read model. Per-bucket outstanding on the debt ledger, produced by the payment allocation engine (bucket total minus Σ active stored allocations — never re-derived from a model). Mirrors the internal `Debitura.Domain.Model.Receiveables.InvoiceEconomics.EconomicalAllocationOutstanding` shape.
    - `principal` number, double
    - `interest` number, double
    - `reminderFees` number, double
    - `collectionFees` number, double

## Other responses

- `400` — ID missing, empty, or ID is not a collection case
- `404` — Case not found, deleted, or does not belong to your account

---

[API](https://skmtc.net/debitura/apis/debitura-customer-api.md) · [All operations](https://skmtc.net/debitura/apis/debitura-customer-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/debitura/debitura-customer-api/versions/46478f2e476f/schema)
