Skip to main content
The Profile API returns information about the PeerPesa account that owns your API keys: contact and business details, KYC verification status, and transaction limits. Use it to confirm which environment and account a key belongs to, and to check limits before generating quotes.

The profile object

string
Unique account identifier (UUID).
string
individual or business.
string
Account holder’s first name.
string
Account holder’s last name.
string | null
Registered business name. null for individual accounts.
string
Verified email address.
string
Verified phone number in international format.
string
ISO 3166-1 alpha-2 country code.
string
Default fiat currency, for example KES.
string
not_started, pending, action_required, approved, or rejected. See KYC verification.
boolean
Whether 2FA is enabled on the account.
string
sandbox or production, based on the key used.
string
active, suspended, or closed.
string
ISO 8601 account creation timestamp.

GET /profile

Retrieves the profile of the authenticated account.
Response

PATCH /profile

Updates editable profile fields. Only the fields you send are changed.
string
Account holder’s first name.
string
Account holder’s last name.
string
New phone number in international format. Must be re-verified before it takes effect.
string
Default fiat currency: KES, TZS, NGN, ZAR, or ZMW.
Email, country, account type, and business details are tied to your KYC record and cannot be changed through the API. Contact support to update them.
Returns the updated profile object.

GET /profile/kyc

Returns the account’s KYC verification details.
cURL
Response
string
Current verification status.
integer
Verification tier. Higher levels unlock higher limits.
object[]
Outstanding requests from compliance. Empty when nothing is needed.

GET /profile/limits

Returns transaction limits for the account. Check these before generating a quote to avoid amount_too_high errors.
cURL
Response
string
Currency the limits are expressed in.
object
per_transaction, daily, and monthly limits with max, used, and remaining amounts.
object
When the daily and monthly usage counters reset.
To read wallet balances per coin and network, use GET /wallet/assets.

Errors

See Error Codes for the full list.