Saltar al contenido principal
POST
/
api
/
v1
/
br
/
loan-accounts
/
{id}
/
pdd-stage
/
transitions
Aplicar la transición de etapa PDD de la cuenta de préstamo
curl --request POST \
  --url https://lender.sandbox.lerian.net/api/v1/br/loan-accounts/{id}/pdd-stage/transitions \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "businessDate": "<string>",
  "effectiveAt": "<string>",
  "idempotencyKey": "<string>",
  "jurisdictionCode": "<string>",
  "profileVersion": "<string>",
  "reason": "<string>",
  "triggeredBy": "<string>"
}
'
import requests

url = "https://lender.sandbox.lerian.net/api/v1/br/loan-accounts/{id}/pdd-stage/transitions"

payload = {
"businessDate": "<string>",
"effectiveAt": "<string>",
"idempotencyKey": "<string>",
"jurisdictionCode": "<string>",
"profileVersion": "<string>",
"reason": "<string>",
"triggeredBy": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
businessDate: '<string>',
effectiveAt: '<string>',
idempotencyKey: '<string>',
jurisdictionCode: '<string>',
profileVersion: '<string>',
reason: '<string>',
triggeredBy: '<string>'
})
};

fetch('https://lender.sandbox.lerian.net/api/v1/br/loan-accounts/{id}/pdd-stage/transitions', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
CURLOPT_URL => "https://lender.sandbox.lerian.net/api/v1/br/loan-accounts/{id}/pdd-stage/transitions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'businessDate' => '<string>',
'effectiveAt' => '<string>',
'idempotencyKey' => '<string>',
'jurisdictionCode' => '<string>',
'profileVersion' => '<string>',
'reason' => '<string>',
'triggeredBy' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://lender.sandbox.lerian.net/api/v1/br/loan-accounts/{id}/pdd-stage/transitions"

payload := strings.NewReader("{\n \"businessDate\": \"<string>\",\n \"effectiveAt\": \"<string>\",\n \"idempotencyKey\": \"<string>\",\n \"jurisdictionCode\": \"<string>\",\n \"profileVersion\": \"<string>\",\n \"reason\": \"<string>\",\n \"triggeredBy\": \"<string>\"\n}")

req, _ := http.NewRequest("POST", url, payload)

req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.post("https://lender.sandbox.lerian.net/api/v1/br/loan-accounts/{id}/pdd-stage/transitions")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"businessDate\": \"<string>\",\n \"effectiveAt\": \"<string>\",\n \"idempotencyKey\": \"<string>\",\n \"jurisdictionCode\": \"<string>\",\n \"profileVersion\": \"<string>\",\n \"reason\": \"<string>\",\n \"triggeredBy\": \"<string>\"\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://lender.sandbox.lerian.net/api/v1/br/loan-accounts/{id}/pdd-stage/transitions")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"businessDate\": \"<string>\",\n \"effectiveAt\": \"<string>\",\n \"idempotencyKey\": \"<string>\",\n \"jurisdictionCode\": \"<string>\",\n \"profileVersion\": \"<string>\",\n \"reason\": \"<string>\",\n \"triggeredBy\": \"<string>\"\n}"

response = http.request(request)
puts response.read_body
{
  "accrualState": "<string>",
  "businessDate": "<string>",
  "currentStage": "<string>",
  "effectiveAt": "<string>",
  "jurisdictionCode": "<string>",
  "latestTransitionId": "<string>",
  "loanAccountId": "<string>",
  "profileVersion": "<string>",
  "reason": "<string>",
  "triggeredBy": "<string>",
  "updatedAt": "<string>",
  "latestTransition": {
    "accrualState": "<string>",
    "businessDate": "<string>",
    "createdAt": "<string>",
    "effectiveAt": "<string>",
    "fromStage": "<string>",
    "id": "<string>",
    "jurisdictionCode": "<string>",
    "profileVersion": "<string>",
    "reason": "<string>",
    "toStage": "<string>",
    "triggeredBy": "<string>"
  }
}
{
"code": "<string>",
"detail": "<string>",
"errors": [
{
"location": "<string>",
"message": "<string>",
"value": "<unknown>"
}
],
"instance": "<string>",
"status": 123,
"title": "<string>",
"type": "about:blank"
}

Autorizaciones

Authorization
string
header
requerido

JWT bearer token issued by the identity provider.

Parámetros de ruta

id
string<uuid>
requerido

Loan account identifier.

Cuerpo

application/json
businessDate
string
requerido

Business date (YYYY-MM-DD or RFC3339).

Ejemplo:

"2026-06-14"

effectiveAt
string
requerido

Effective timestamp (RFC3339 or YYYY-MM-DD).

Ejemplo:

"2026-06-14T12:00:00Z"

toStage
enum<string>
requerido

Target PDD stage.

Opciones disponibles:
current,
stage_1,
stage_2,
stage_3
Ejemplo:

"stage_1"

idempotencyKey
string

Client-supplied idempotency key; deduplicated at the persistence layer.

Maximum string length: 128
jurisdictionCode
string

Jurisdiction code.

Maximum string length: 8
Ejemplo:

"BR"

profileVersion
string

Jurisdiction profile version.

Maximum string length: 64
Ejemplo:

"1.0.0"

reason
string

Reason for the transition or cure.

Maximum string length: 512
triggeredBy
string

Actor or system that triggered the transition.

Maximum string length: 128

Respuesta

OK

accrualState
string
requerido

Interest accrual state implied by the current stage: accruing or suspended.

Ejemplo:

"accruing"

businessDate
string
requerido

Business date the current stage applies to (YYYY-MM-DD, UTC).

Ejemplo:

"2026-06-14"

currentStage
string
requerido

Current PDD delinquency stage: one of current, stage_1, stage_2, stage_3.

Ejemplo:

"stage_1"

effectiveAt
string
requerido

RFC3339 UTC timestamp at which the current stage became effective.

Ejemplo:

"2026-06-14T12:00:00Z"

jurisdictionCode
string
requerido

ISO jurisdiction code governing the staging (e.g. "BR").

Ejemplo:

"BR"

latestTransitionId
string
requerido

UUID of the most recent PDD stage transition applied to the account.

Ejemplo:

"550e8400-e29b-41d4-a716-446655440001"

loanAccountId
string
requerido

UUID of the loan account whose PDD staging state is reported.

Ejemplo:

"550e8400-e29b-41d4-a716-446655440000"

profileVersion
string
requerido

Jurisdiction profile version in effect for the staging rules.

Ejemplo:

"1.0.0"

reason
string
requerido

Reason recorded for entering the current stage.

triggeredBy
string
requerido

Actor or system that triggered the current stage.

updatedAt
string
requerido

RFC3339 UTC timestamp when the staging state was last updated.

Ejemplo:

"2026-06-14T12:00:00Z"

latestTransition
object

Detail of the most recent stage transition; omitted when no transition exists.