Transfer Loan Ownerships

POST /v1/borrowers/loans/transfer_ownership

Changes the owner of the loan

Query parameters

  • is_migration boolean

    When this parameter is set to True, the transaction will be handled as if it had occurred on the date specified in the occurred_on field, rather than the current date and time. This is useful when migrating data from a legacy system or for building test cases.

    Default value is false.

application/json

Body

  • borrower_id string
  • loan_id string
  • occurred_on string(date-time)

    Represents the date and time at which the lender reported the transaction. This field is expressed as a datetime object with timezone information and is provided for reference purposes only. Please note that the 'occurred on' date is not used in loan management operations and does not affect the processing or status of the transaction. It is provided solely to track when the lender believes the transaction occurred, regardless of when it was actually processed by the loan management system. However if the request comes with the is_migration parameter set to true the occurred_on field will be used to handle the request as if it had happened on that date.

  • ownership_transfer object

    Additional properties are allowed.

    Hide ownership_transfer attributes Show ownership_transfer attributes object
    • effective_date string(date-time)
    • new_owner string
  • request_id string

    Optional field that will be returned unmodified in each response. Especially useful for keeping track of responses in batch requests.

Responses

  • 207 application/json

    Multi-Status

    Hide response attributes Show response attributes object
    • failed array[object] | null
      Hide failed attributes Show failed attributes object
      • borrower_id string
      • error_detail string
      • request_id string
      • status_code integer
    • succeeded array[object] | null
      Hide succeeded attributes Show succeeded attributes object
      • id string

        Identifier for the loan used by the lender.

      • kordev_id integer

        Identifier for the ownership transfer used internally by Kordev.

      • new_owner string
      • occurred_on string(date-time)
      • request_id string

        Optional field that will be returned unmodified in each response. Especially useful for keeping track of responses in batch requests.

      • transferred_amounts object

        Additional properties are allowed.

        Hide transferred_amounts attributes Show transferred_amounts attributes object
        • installment_fee object

          Additional properties are allowed.

          Hide installment_fee attributes Show installment_fee attributes object
          • current number
          • overdue number
          • total number
          • unpaid number
        • interest object

          Additional properties are allowed.

          Hide interest attributes Show interest attributes object
          • current number
          • overdue number
          • total number
          • unpaid number
        • principal object

          Additional properties are allowed.

          Hide principal attributes Show principal attributes object
          • current number
          • overdue number
          • total number
          • unpaid number
  • 400 application/json

    Bad Request

    Hide response attributes Show response attributes object
    • code integer

      Application-specific error code.

    • context object

      Application context.

      Additional properties are allowed.

    • error string

      Error message.

    • status string

      Status text.

  • 404 application/json

    Not Found

    Hide response attributes Show response attributes object
    • code integer

      Application-specific error code.

    • context object

      Application context.

      Additional properties are allowed.

    • error string

      Error message.

    • status string

      Status text.

  • 409 application/json

    Conflict

    Hide response attributes Show response attributes object
    • code integer

      Application-specific error code.

    • context object

      Application context.

      Additional properties are allowed.

    • error string

      Error message.

    • status string

      Status text.

  • 500 application/json

    Internal Server Error

    Hide response attributes Show response attributes object
    • code integer

      Application-specific error code.

    • context object

      Application context.

      Additional properties are allowed.

    • error string

      Error message.

    • status string

      Status text.

POST /v1/borrowers/loans/transfer_ownership
curl \
 --request POST 'https://sandbox.lms.kordev.io/v1/borrowers/loans/transfer_ownership' \
 --header "Content-Type: application/json" \
 --data '[{"borrower_id":"string","loan_id":"string","occurred_on":"2020-01-01T10:15:20-05:00","ownership_transfer":{"effective_date":"2020-01-01T00:00:00-05:00","new_owner":"string"},"request_id":"string"}]'
Request examples
[
  {
    "borrower_id": "string",
    "loan_id": "string",
    "occurred_on": "2020-01-01T10:15:20-05:00",
    "ownership_transfer": {
      "effective_date": "2020-01-01T00:00:00-05:00",
      "new_owner": "string"
    },
    "request_id": "string"
  }
]
Response examples (207)
{
  "failed": [
    {
      "borrower_id": "string",
      "error_detail": "string",
      "request_id": "string",
      "status_code": 42
    }
  ],
  "succeeded": [
    {
      "id": "string",
      "kordev_id": 42,
      "new_owner": "string",
      "occurred_on": "2025-05-04T09:42:00Z",
      "request_id": "string",
      "transferred_amounts": {
        "installment_fee": {
          "current": 42.0,
          "overdue": 42.0,
          "total": 42.0,
          "unpaid": 42.0
        },
        "interest": {
          "current": 42.0,
          "overdue": 42.0,
          "total": 42.0,
          "unpaid": 42.0
        },
        "principal": {
          "current": 42.0,
          "overdue": 42.0,
          "total": 42.0,
          "unpaid": 42.0
        }
      }
    }
  ]
}
Response examples (400)
{
  "code": 42,
  "context": {},
  "error": "string",
  "status": "string"
}
Response examples (404)
{
  "code": 42,
  "context": {},
  "error": "string",
  "status": "string"
}
Response examples (409)
{
  "code": 42,
  "context": {},
  "error": "string",
  "status": "string"
}
Response examples (500)
{
  "code": 42,
  "context": {},
  "error": "string",
  "status": "string"
}