d0dcc5024bd1

latestOpenAPI 3.0.42026-08-104969330.3 KB
ManagedCases

Create case as managing partner

Creates a collection case on behalf of your client (or yourself) through the Debitura platform.

Understanding the Creditor Field: The creditor is the party that the debtor owes money to. This can be:

  • Your client's company - When you're submitting cases on behalf of clients you represent
  • Your own company - When you're submitting your own debt collection cases

How It Works:

  1. You provide the creditor's basic information (company name + country)
  2. Debitura creates a creditor record (if one doesn't exist)
  3. The collection case is created under that creditor
  4. You are set as the managing partner
  5. The case is automatically assigned to a collection partner based on jurisdiction

Managing Partner Benefits:

  • Submit cases on behalf of your clients via API
  • Maintain your client relationships
  • Leverage Debitura's global partner network
  • Monitor case progress through read-only access
  • Provide full-service debt recovery to your clients

Required Fields:

  • CreditorCompanyName - The company name of who the debtor owes money to
  • CreditorCountryAlpha2 OR CreditorCountry - Creditor's country (provide either code or name)
  • CurrencyCode - Case currency (e.g., 'USD', 'EUR', 'DKK')
  • Date - Invoice issue date
  • AmountToRecover - Claim amount
  • Debtor - Complete debtor information with jurisdiction

Debtor Rules:

  • debtor.type must be "Company" or "Private" (case-insensitive)
    • Company → debtor.name is mandatory (company name)
    • Private → debtor.name is mandatory (individual's full name)
  • For Company debtors, debtor.contactPerson is required
  • debtor.country (or debtor.countryAlpha2) is always required
  • debtor.stateAlpha2 is required for US cases - provide the two-letter state code (e.g., "CA", "NY"). For non-US cases, this field is optional.
  • debtor.state is a general-purpose region field (not used for US jurisdiction resolution)

Optional Fields:

  • DueDate - Invoice due date
  • AmountToRecoverOver6Months - Cumulative amount more than 6 months overdue (includes 12+ and 24+)
  • AmountToRecoverOver12Months - Cumulative amount more than 12 months overdue (includes 24+)
  • AmountToRecoverOver24Months - Cumulative amount more than 24 months overdue
  • ClaimLines - The unpaid invoices making up the claim (see below)
  • Comments - Additional notes
  • ClaimDescription - Description of the claim
  • CreditorReference - Your client's internal reference
  • CollectionPartnerId - Override automatic partner matching
  • IsTest - Mark as test case (excluded from production metrics)

Submitting Claim Lines (recommended for multi-invoice claims): Instead of totalling the claim yourself, send the unpaid invoices and let us do the arithmetic:

"claimLines": [
  { "dueDate": "2024-01-15", "amount": 423.42, "reference": "INV-1001" },
  { "dueDate": "2025-05-02", "amount": 700.87, "reference": "INV-1042" }
]
  • amount is the outstanding balance on that invoice — what the debtor still owes on it, already net of payments received and credit notes issued. It is not the invoice's original face value. Leave fully settled invoices out; every amount must be greater than zero, with at most 2 decimals.
  • We derive AmountToRecover and all three age buckets from the lines, so send claimLines instead of AmountToRecover and the AmountToRecoverOver6/12/24Months fields. Sending both is a 400.
  • Use claimLines whenever the debtor has already part-paid: it is the only way to express an honest age profile on a part-paid claim, because the buckets are then computed on the same outstanding balances the total is computed on.
  • claimLines prices on exact age data. Sending a single DueDate instead is an approximation and can produce a different quote for the same claim.
  • claimLines is a pricing input only. It is not stored and is not shown to the collecting partner — include a per-invoice breakdown in Comments if the partner needs to see one.
  • Maximum 1000 lines. Per-line errors are returned keyed by index, e.g. ClaimLines[2].DueDate.
  • If you omit the case-level DueDate, it is set to the oldest due date across your lines — so in that case Date must not be later than the earliest claimLines dueDate, or the request is rejected with a 400 on Date. Send an explicit DueDate if you need a different case due date.

Response: Returns the created case details including the case ID, reference number, and assignment information.

Important Notes:

  • The 12+ and 24+ fields must be supplied together. The 6+ field is optional, but when supplied it requires both other buckets.
  • Cumulative values must satisfy AmountToRecover ≥ 6+ ≥ 12+ ≥ 24+. DueDate may coexist with age buckets.
  • Creditor records are created fresh each time (no duplicate detection)
  • Contract requirements are automatically bypassed
  • Production cases enter Debitura's internal verification before proceeding to the assigned collection partner
  • Test cases bypass internal verification because delayed auto-validation is only scheduled for production cases
  • Cases appear in your 'Managed Cases' list
  • You have read-only access to monitor case progress
post/managed-cases

Headers

Idempotency-Keystring

Optional idempotency key (max 255 characters) for safely retrying this request. If a previous request used the same key with an identical body, the original terminal response is replayed verbatim. Reusing the key with a different body returns 422 with Type: "IdempotencyConflict". Field-level 400 validation errors are not stored, so you may fix the request and retry with the same key.

Request body

creditorCompanyNamestring required

Creditor company name for this case. If you're submitting cases on behalf of your clients, use your client's company name. If you're submitting your own cases, use your own partner company name.

creditorCountryAlpha2string nullable

Creditor country code (ISO 3166-1 alpha-2 format). Either this or CreditorCountry is required.

creditorCountrystring nullable

Creditor country name. Either this or CreditorCountryAlpha2 is required.

currencyCodestring required

Currency code for the case (ISO 4217 format)

datestring date-time required

Invoice issue date. Provide date only without time component.

dueDatestring date-time nullable

Invoice due date. Provide date only without time component.

commentsstring nullable

Optional comments about the case. Use this to provide context about payment attempts, communication history, or other relevant information.

claimDescriptionstring nullable

Client provided description of the services or goods delivered

creditorReferencestring nullable

Client's internal reference for the case (e.g., invoice number)

amountToRecovernumber double required

Total amount to recover from debtor (in the specified currency).

Required unless you send ClaimLines, in which case this must be omitted or 0 — the server derives the total by summing the outstanding balance of every claim line. Sending both a non-zero AmountToRecover and ClaimLines is rejected, because the two would disagree.

amountToRecoverOver6Monthsnumber double nullable

Optional cumulative portion of AmountToRecover that is more than 6 months overdue. Includes the 12+ and 24+ month amounts and must be supplied together with both fields.

amountToRecoverOver12Monthsnumber double nullable

Optional cumulative portion of AmountToRecover that is more than 12 months overdue. Includes the 24+ month amount and must be supplied together with AmountToRecoverOver24Months.

amountToRecoverOver24Monthsnumber double nullable

Optional cumulative portion of AmountToRecover that is more than 24 months overdue. Must be supplied together with AmountToRecoverOver12Months.

isTestboolean

When true, creates a test case that IS persisted to the database but marked as test data. Test cases are excluded from production metrics and can be easily filtered or deleted. Use this for integration testing and development.

tagstring nullable

Optional tag for scoped test data grouping (e.g. "suite-run-{uuid}"). Use this to group test cases created by a single CI pipeline run so they can be bulk-deleted via DELETE /test/cases?tag={tag} without affecting parallel runs. Only meaningful when IsTest is true. Max 100 characters.

collectionPartnerIdstring uuid nullable

Optional: Specify a collection partner ID to handle this case. When provided, this partner will be used regardless of lead agent matching rules. The partner must be active and have coverage for the debtor's jurisdiction.

Example request

{
  "creditorCompanyName": "Acme Services Inc",
  "creditorCountry": "United States",
  "currencyCode": "USD",
  "amountToRecover": 15000,
  "amountToRecoverOver6Months": 9000,
  "amountToRecoverOver12Months": 6000,
  "amountToRecoverOver24Months": 2000,
  "date": "2026-05-10",
  "dueDate": "2026-05-24",
  "claimDescription": "Software development services - Project Alpha",
  "comments": "Invoice INV-2024-1234 for custom ERP system development. Payment 90 days overdue despite multiple reminders. Client confirmed services received but cited cash flow issues.",
  "creditorReference": "INV-2024-1234",
  "isTest": false,
  "debtor": {
    "type": "Company",
    "name": "Pacific Trading LLC",
    "contactPerson": "John Smith",
    "companyRegistrationNumber": "47-1234567",
    "address": "123 Market Street, Suite 400",
    "zipCode": "94105",
    "city": "San Francisco",
    "stateAlpha2": "CA",
    "country": "United States",
    "email": "accounts@pacifictrading.com",
    "phone": "+1 415 555 0123"
  }
}

Response

Case created successfully

idstring uuid
dateCreatedstring date-time
dateUpdatedstring date-time nullable
referencestring nullable
creditorReferencestring nullable
creditorCommentsstring nullable
claimDescriptionstring nullable
grossAmountnumber double
remaindernumber double
interestFeesnumber double
reminderFeesnumber double
collectionFeesnumber double
totalAddedFeesnumber double
currencystring nullable
isTestCaseboolean
lifecyclestring nullable
dueDatestring date-time
datestring date-time
dateFinishedstring date-time nullable
dateCollectionStartedstring date-time nullable
closeCodestring nullable
currentEngagementPhasestring 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.

claimTypestring nullable

The type of claim for this case (e.g. "Unpaid Invoice", "Loan Repayment", "Breach of Contract"). Null if not set.

creditorDivisionIdstring uuid nullable
blendedAgeUpliftPointsnumber 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).

preLegalSuccessFeenumber 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.

solutionUrlstring 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.

exclusivePeriodEndDatestring 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.

disputeStatusstring 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.

Example response

{
  "debtor": {
    "type": "Company",
    "name": "Pacific Trading LLC",
    "contactPerson": "John Smith",
    "companyRegistrationNumber": "47-1234567",
    "address": "123 Market Street, Suite 400",
    "zipCode": "94105",
    "city": "San Francisco",
    "state": "California",
    "stateAlpha2": "CA",
    "countryAlpha2": "US",
    "country": "United States",
    "email": "accounts@pacifictrading.com",
    "phone": "+1 415 555 0123"
  }
}