Skip to main content

Documentation Index

Fetch the complete documentation index at: https://api-docs.anzi.finance/llms.txt

Use this file to discover all available pages before exploring further.

Credit Status Error Codes

The API returns structured errors with a code and message. This page documents the error codes you may receive when calling Update Credit Status (PUT /guarantees/credit-status) and how to resolve them.

Update Credit Status (PUT /guarantees/credit-status)

These codes are returned in the response body with HTTP status 400 when a credit status update is rejected due to validation or business rules.
CodeMessage
GUA_44Guarantee already has an associated claim or has been novated
GUA_45Cannot update credit status because it is already in CLAIM_GUARANTEE, NOVATED, REVOKED, or PAID state. These states are final and cannot be modified.
GUA_46The new outstanding amount cannot be greater than the current outstanding amount.
GUA_47The outstanding amount cannot exceed the loan amount.
GUA_48The outstanding amount cannot be negative.
GUA_49The last payment date must be after the disbursement date.
GUA_50The new last payment date must be more recent than the currently recorded last payment date.
GUA_51The last payment date cannot be in the future.
GUA_55The guarantee was already updated today.
GUA_62Invalid loan status. Please use one of the valid statuses.
GUA_63Incomplete payment update: last payment date is required when the outstanding amount changes.
GUA_64Incomplete payment update: outstanding amount is required when the last payment date changes.
GUA_73Invalid or malformed date value. The provided date could not be parsed. Please use a valid date format (e.g., YYYY-MM-DD).
GUA_74For variable premium licenses, please include the guarantee value in the update.
GUA_75Guarantee value cannot be negative.
GUA_77On the first balance report, if the last payment date equals the disbursement date, the outstanding balance must equal the original loan amount.
GUA_78Cannot revoke a guarantee that has already received payments. The credit status can only be set to REVOKED when no payments have been reported.
GE_01Bad Request

Cause and resolution

GUA_44 — Guarantee has a claim or was novated

What happened: The guarantee already has an associated claim payment or has been novated to another guarantee. Once a claim or novation exists, the credit status cannot be changed. What to do: This is a terminal condition. If you believe this is incorrect, verify the guarantee’s current state by calling Get Guarantee by UID.

GUA_45 — Terminal credit status

What happened: The guarantee’s credit status is already in one of the terminal states: CLAIM_GUARANTEE, NOVATED, REVOKED, or PAID. These states are final and cannot be modified. What to do: No further credit status updates are possible for this guarantee. If the credit was set to the wrong status, contact your Anzi representative.

GUA_46 — Outstanding increased

What happened: The creditPrincipalOutstanding you sent is higher than the value currently recorded on the guarantee. The outstanding balance can only decrease or stay the same over time. What to do: Send a creditPrincipalOutstanding value that is equal to or less than the current outstanding balance. If the borrower has not made any payment, send the same value as the current outstanding.

GUA_47 — Outstanding exceeds loan amount

What happened: The creditPrincipalOutstanding you sent is greater than the original loanAmount of the guarantee. What to do: The outstanding balance can never exceed the original loan amount. Send a value that is less than or equal to loanAmount.

GUA_48 — Negative outstanding

What happened: The creditPrincipalOutstanding is a negative number. What to do: Send a value of 0 or greater. Use 0 when the credit has been fully paid.

GUA_49 — Payment date before disbursement

What happened: The creditLastPaymentDate you sent is before the guarantee’s disbursementDate. A payment cannot occur before the loan was disbursed. What to do: Send a creditLastPaymentDate that is on or after the disbursementDate.

GUA_50 — Payment date before previous payment date

What happened: The creditLastPaymentDate you sent is earlier than the payment date already recorded on the guarantee. Payment dates must move forward in time. What to do: Send a creditLastPaymentDate that is more recent than (or equal to) the currently recorded date. Check the guarantee’s current creditLastPaymentDate via Get Guarantee by UID.

GUA_51 — Payment date in the future

What happened: The creditLastPaymentDate is after today’s date (evaluated in the license’s timezone). What to do: Send a date that is today or earlier. Future payment dates are not allowed.

GUA_55 — Already updated today

What happened: The credit status for this guarantee was already updated today. Only one credit status update per calendar day is allowed (evaluated in the license’s timezone). What to do: Wait until the next calendar day to submit the update. If this is urgent, contact your Anzi representative.

GUA_62 — Invalid credit status value

What happened: The status field contains a value that does not correspond to any valid credit status. What to do: Use one of the valid values: CURRENT (0), DELINQUENT (1), CLAIM_GUARANTEE (2), NOVATED (3), PAID (4), or REVOKED (5). You can send either the string name or the numeric value.

GUA_63 — Missing payment date

What happened: You sent creditPrincipalOutstanding but did not include creditLastPaymentDate. Both fields must be provided together. What to do: Include both creditPrincipalOutstanding and creditLastPaymentDate in the request body.

GUA_64 — Missing outstanding amount

What happened: You sent creditLastPaymentDate but did not include creditPrincipalOutstanding. Both fields must be provided together. What to do: Include both creditPrincipalOutstanding and creditLastPaymentDate in the request body.

GUA_73 — Invalid or malformed date

What happened: The creditLastPaymentDate value could not be parsed as a valid date. It may be in an unrecognized format, contain invalid characters, or represent an impossible date. What to do: Send creditLastPaymentDate in a valid date format (e.g., YYYY-MM-DD). Ensure the value is a real calendar date.

GUA_74 — Missing guaranteeValue for variable premium license

What happened: Your license is configured with variable portfolio premiums paid by installment amount (FIRST_LOSS + installmentsEnabled + isPremiumReportedByCollections + INSTALLMENT_AMOUNT strategy), and guaranteeValue was not included in the request. What to do: Include guaranteeValue in every credit status update request. This value represents the premium amount collected for the current billing cycle.

GUA_75 — Negative guaranteeValue

What happened: The guaranteeValue field is a negative number. What to do: Send a guaranteeValue of 0 or greater.

GUA_77 — Invalid first balance report

What happened: This is the first time a balance is being reported for this guarantee, the creditLastPaymentDate equals the disbursementDate, but the creditPrincipalOutstanding does not equal the original loanAmount. On the first report with no actual payment, the outstanding must match the loan amount. What to do: If no payment has been made yet, send creditPrincipalOutstanding equal to the guarantee’s loanAmount. If a payment was made, send a creditLastPaymentDate that is after the disbursementDate.

GUA_78 — Cannot revoke guarantee with payments

What happened: You tried to set the credit status to REVOKED, but the guarantee has already received payments (the outstanding principal is less than the original loan amount). What to do: The REVOKED status is only allowed when no payments have been reported — i.e., the outstanding balance equals the original loan amount. If payments have been made, this guarantee cannot be revoked.

GE_01 — Bad Request (generic)

What happened: The request failed a general validation or business rule that is not mapped to a specific error code. What to do: Review the request body against the Update Credit Status schema. Check required fields, formats, and status transition rules. If the issue persists, use the exact code and message when contacting support.