List the refinance offers of a loan
Returns the refinance offers of the caller's term loan after a reviewer approved them, the newest first. Returns 404 RESOURCE_NOT_FOUND for a loan of another user.
Authorization
oauth2 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
Unique identifier for an account
uuidQuery Parameters
The number of refinance offers in one page.
The cursor for the next page.
The cursor for the previous page.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/v1/accounts/loan/550e8400-e29b-41d4-a716-446655440000/refinance/offers"{ "data": [ { "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "status": "QUOTED", "account_id": "550e8400-e29b-41d4-a716-446655440000", "replacement_account_id": "550e8400-e29b-41d4-a716-446655440000", "replacement_cycle_id": "550e8400-e29b-41d4-a716-446655440000", "payoff": { "value": 100000, "currency": "KES" }, "financed_principal": { "value": 100000, "currency": "KES" }, "terms": { "interest_rate": { "basis_points": 300, "period_value": 1, "period_unit": "DAYS" }, "tenure": { "duration": 30, "unit": "DAYS" }, "interest": { "value": 100000, "currency": "KES" }, "installment_count": 0, "first_due_date": "2026-10-31", "first_installment_amount": { "value": 100000, "currency": "KES" }, "total_repayable": { "value": 100000, "currency": "KES" } }, "start_date": "2019-08-24", "expires_at": "2019-08-24T14:15:22Z", "completed_at": "2026-09-01T10:15:30Z", "extra_cash": { "value": 100000, "currency": "KES" }, "destination": { "type": "string", "paybill_number": 400200, "account_number": "string" }, "payout": { "status": "PENDING", "completed_at": "2026-09-01T10:15:30Z" }, "resource_id": "string" } ], "links": { "next": "/v1/payees?after=eyJpZCI6MX0", "prev": "/v1/payees?before=eyJpZCI6MX0" }}{ "code": "BAD_REQUEST", "description": "Bad Request"}{ "code": "UNAUTHORISED", "description": "Unauthorised"}{ "code": "FORBIDDEN", "description": "Forbidden"}{ "code": "RATE_LIMIT_EXCEEDED", "description": "Too Many Requests"}{ "code": "INTERNAL_ERROR", "description": "Internal Server Error"}Accept a refinance offer POST
Pays the open purchases and opens the replacement purchase on the facility in one step. A repeated request returns the completed offer. Returns 404 `REFINANCING_NOT_FOUND` for an offer of another user, an offer for another facility, or an offer that no reviewer approved. Returns 409 `REFINANCING_NOT_ALLOWED` when the offer expired or the facility changed after the offer. Returns the same error when a manual block is on the borrower or on the facility.
Get a refinance offer GET
Returns a refinance offer of the caller after a reviewer approved it. Returns 404 `REFINANCING_NOT_FOUND` for an offer of another user, an offer for another loan, or an offer that no reviewer approved.