v1

latestOpenAPI 3.0.42026-08-045381279.6 KB
Cases

Preview case eligibility and requirements

Preview what would happen if you submitted a case, without actually creating it.

What This Endpoint Returns:

  • IsEligible - Whether the case can be submitted (partner available)
  • PartnerAssignment - Which collection partner would handle the case
  • RequiredActions - What contracts/documents need to be signed before submission
    • Standard Debt Collection Agreement (SDCA)
    • Power of Attorney (PoA) for the assigned partner
  • PricingPreview - Estimated success fee with age-based surcharges
  • Jurisdiction - Geographic details

Use This To:

  1. Check if a jurisdiction is supported before submitting
  2. Determine which documents need signing before case creation
  3. Get signing URLs to guide users through required actions
  4. Estimate pricing including age surcharges

Required Fields:

  • AmountToRecover - Total principal amount
  • CurrencyCode - ISO 4217 currency code (e.g., 'DKK', 'EUR', 'USD')
  • Debtor.Type - 'Company' or 'Private'
  • Debtor.CountryAlpha2 - ISO 3166-1 alpha-2 country code
  • Debtor.StateAlpha2 - Required for US cases only (e.g., 'CA', 'NY')

Optional Fields (Multi-Invoice Age Pricing):

  • AmountToRecoverOver12Months - Portion over 12 months overdue
  • AmountToRecoverOver24Months - Portion over 24 months overdue (Both must be provided together if used)
  • AmountToRecoverOver6Months - Portion over 6 months overdue (optional, improves pricing tier accuracy at the 180-day threshold; requires Over12/Over24)

Solution URLs Are Context-Aware:

  • Bearer token (referral partner) → referral onboarding URLs
  • XApiKey (creditor) → standard creditor app URLs

Important Notes:

  • This endpoint does NOT create a case - it only previews what would happen
  • The preview uses the same eligibility logic as POST /cases
  • If multiple partners match (system limitation), the first match is returned
  • All required actions must be completed before calling POST /cases

Example Workflow:

1. POST /cases/preview → Check eligibility and get signing URLs
2. User completes required actions (signs SDCA, signs PoA)
3. POST /cases → Create the actual case
post/cases/preview

Request body

amountToRecovernumber double required

The TOTAL amount to recover for this case. This represents the full principal amount across all invoices (if multiple invoices are bundled).

For multi-invoice cases with different ages, you can optionally provide age breakdown fields (AmountToRecoverOver12Months and AmountToRecoverOver24Months) to enable blended age-based pricing.

If age breakdown fields are omitted, the preview will show base pricing without age surcharge calculation.

currencyCodestring required

ISO 4217 currency code for the amount (e.g., "DKK", "EUR", "USD")

amountToRecoverOver6Monthsnumber double nullable

OPTIONAL - MULTI-INVOICE AGE BUCKET PRICING (PRICING ZONE 180-DAY THRESHOLD)

The portion of AmountToRecover that is more than 6 months (180 days) overdue. This includes amounts that are 12+ and 24+ months overdue.

This field is optional and can only be provided alongside AmountToRecoverOver12Months and AmountToRecoverOver24Months. It enables precise pricing tier selection based on the 180-day threshold. When omitted, the system falls back to deriving the threshold from AmountToRecoverOver12Months.

Validation rules:

  • Must be ≤ AmountToRecover
  • Must be ≥ AmountToRecoverOver12Months
amountToRecoverOver12Monthsnumber double nullable

OPTIONAL - MULTI-INVOICE AGE BUCKET PRICING

The portion of AmountToRecover that is more than 12 months overdue. This includes amounts that are 24+ months overdue.

If provided, AmountToRecoverOver24Months must also be provided. Both fields must be provided together or both omitted.

Used to calculate blended age uplift for multi-invoice cases:

  • Amount under 12 months = AmountToRecover - AmountToRecoverOver12Months
  • Amount 12-24 months = AmountToRecoverOver12Months - AmountToRecoverOver24Months
  • Amount over 24 months = AmountToRecoverOver24Months

Blended uplift formula: ((A12-A24)×10 + A24×20) / AmountToRecover where A12 = AmountToRecoverOver12Months, A24 = AmountToRecoverOver24Months

Validation rules:

  • Must be ≤ AmountToRecover
  • Must be ≥ AmountToRecoverOver24Months
amountToRecoverOver24Monthsnumber double nullable

OPTIONAL - MULTI-INVOICE AGE BUCKET PRICING

The portion of AmountToRecover that is more than 24 months overdue.

If provided, AmountToRecoverOver12Months must also be provided. Both fields must be provided together or both omitted.

Used to calculate blended age uplift for multi-invoice cases. See AmountToRecoverOver12Months for full details on the calculation.

Validation rules:

  • Must be ≤ AmountToRecoverOver12Months
  • Must be ≤ AmountToRecover
dueDatestring date-time nullable

Optional invoice due date. Mutually exclusive with age bucket fields. If provided, Debitura computes the age surcharge internally — no need to calculate age buckets. Cannot be a future date.

returnUrlstring nullable

Optional: URL the creditor user should land on after completing any pending signing chain (SDCA upgrade / PoA / JPA / KYC) on the Debitura Creditors app. Embedded, URL-encoded, into PreviewCaseResponseApiViewModel.Result.SigningHandoff.CombinedSigningUrl (when at least one signing-related required action is present) and into BusinessErrorResponseApiDTO.SigningHandoff.CombinedSigningUrl / InvoiceDto.SigningHandoff.CombinedSigningUrl on POST /cases.

Must be an absolute http(s) URL. Values that fail validation (relative URLs, non-http schemes, header-injection characters) are silently dropped — the combined URL is still emitted but without the returnUrl query parameter, and the Creditors app falls back to its own safe in-app default landing.

Additive. Existing integrations that omit this field see the same behaviour as before.

Example request

{
  "amountToRecover": 50000,
  "currencyCode": "USD",
  "amountToRecoverOver12Months": 30000,
  "amountToRecoverOver24Months": 15000,
  "debtor": {
    "type": "Company",
    "countryAlpha2": "US",
    "stateAlpha2": "CA"
  }
}

Response

Preview completed