Cowdidocs
API ReferenceInstallments

List installments for an account

GET
/v1/accounts/{accountId}/installments

Retrieves the installment schedule for a lending account: a term loan, a revolving credit account, or a Flex Credit account. Requires an authenticated user. Returns 404 when the account does not exist or is not the caller's. Returns 400 when the account is not a lending account.

AuthorizationBearer <token>

Create a client with POST /v1/oauth/clients, then exchange its credentials for an access token. AUTHORIZATION_CODE clients act on behalf of a signed-in user and always use PKCE; CLIENT_CREDENTIALS clients act as themselves. A client may only be granted scopes its creator already holds — read the grantable list from GET /v1/oauth/clients/scopes.

In: header

Path Parameters

accountId*string

Unique identifier of the account.

Formatuuid

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/v1/accounts/550e8400-e29b-41d4-a716-446655440000/installments"
{  "installments": [    {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "position": 1,      "status": "PENDING",      "amount": 5000,      "paid_amount": 3000,      "waived_amount": 500,      "written_off_amount": 1000,      "outstanding_amount": 2000,      "currency": "KES",      "due_date": "2025-02-15",      "original_due_date": "2025-01-15",      "is_amount_locked": false,      "paid_at": "2026-01-15T09:30:00Z",      "breakdown": {        "principal_amount": 4000,        "interest_amount": 1000,        "principal_paid_amount": 3000,        "interest_paid_amount": 500,        "interest_waived_amount": 500,        "principal_written_off_amount": 2000,        "interest_written_off_amount": 500,        "arrears_written_off_amount": 1000      },      "resource_id": "string"    }  ]}
{  "code": "BAD_REQUEST",  "description": "Bad Request"}
{  "code": "UNAUTHORISED",  "description": "Unauthorised"}
{  "code": "FORBIDDEN",  "description": "Forbidden"}
{  "code": "BAD_REQUEST",  "description": "Invalid input"}
{  "code": "RATE_LIMIT_EXCEEDED",  "description": "Too Many Requests"}
{  "code": "INTERNAL_ERROR",  "description": "Internal Server Error"}