Affinity API 1.0 Help

Onboarding an individual

Accounts are classified into two distinct groups

  1. MKYC - Medium KYC accounts

  2. EKYC - Enhanced KYC accounts

1. MKYC accounts

MKYC accounts satisfy the minimum KYC requirements necessary to open an account

MKYC requirements

Field

Type

Description

Notes

1.

firstName

string

The customer's first name

[required]

2.

lastName

string

The customer's last name

[required]

3.

phoneNumber

string

The customer’s phone number in international format (e.g., +233XXXXXXXXX)

[required]

4.

profilePicture

string

Must be a recent, live image of the customer, used for accurate identification (see here for further details)

[required]

5.

ghanaPostAddress

string

Ghana post GPS address

[required]

6.

identificationType

string

Identification type. Must be one of the following PASSPORT, GHANA_CARD

[required]

7.

identificationNumber

string

Identification number

[required]

8.

nationality

string

Country ISO Alpha 2 code e.g. GH for Ghana

[required]

9.

accountManagementType

string

Must be one of the following MANAGED, NOT_MANAGED (see here for further details)

[required]

10.

identificationFileKey

string

Bio data page/side image

[optional]

11.

identificationBackFileKey

string

Back cover image

[optional]

12.

residencyPermitNumber

string

A government-issued identifier found on the customer’s residency permit, required for identity verification and regulatory compliance

[optional] for Ghanaians

13.

residencyPermitIssueDate

string

Indicates the official issue date of the customer’s residency permit. Format: yyyy-MM-dd.

[optional] for Ghanaians

14.

residencyPermitExpiryDate

string

Specifies the expiry date of the customer's residency permit. Format: yyyy-MM-dd

[optional] for Ghanaians

15.

residencyPermitFileKey

string

A unique identifier or path referencing the uploaded file of the customer's residency permit

[optional] for Ghanaians

16.

partnerReference

string

A partner-generated unique reference used to track or reconcile individual transactions or customer actions within your system

[optional]

MKYC API reference

Refer to MKYC onboard API for more details

Customer verification

All customers are verified using the identification information provided before they can be approved for creation. Updates will be sent via webhooks.

2. MKYC update

Update customer details when ID verification fails.

Field

Notes

1.

profilePicture

[required]

2.

identificationType

[optional]

3.

identificationNumber

[optional]

4.

identificationFileKey

[optional]

5.

identificationBackFileKey

[optional]

MKYC Update API reference

Refer to MKYC update API for more details

3. EKYC Upgrade

EKYC accounts can only be created when the customer has an active MKYC account.

EKYC requirements

Field

Type

Description

Notes

1.

maritalStatus

string

Can be one of the following Married, Single, Divorced, Widowed

[required]

2.

email

string

The customer’s active email address used for communication and account-related notifications

[optional]

3.

nextOfKinName

string

The full name of the person identified as the customer’s next of kin

[required]

4.

nextOfKinPhoneNumber

string

Next of kin's phone number in international format. Must not be the same as the customer's phone number.

[required]

5.

nextOfKinRelationship

string

Can be one of the following SPOUSE, PARENT, SIBLING, CLOSE_RELATION, FRIEND, CHILD_18_PLUS

[required]

6.

numberOfTransactionsPerMonth

string

Can be one of the following MAX4, MAX10, MAX19, TWENTY_PLUS

[required]

7.

employmentStatus

string

Can be one of the following STUDENT, RETIRED, EMPLOYED, UNEMPLOYED

[required]

8.

employmentSector

string

See here for the list of sectors

[required] for employed

9.

employmentIndustry

string

See here for the list of industries

[required] for employed

10.

employmentOccupation

string

See here for the list of occupations

[required] for employed

11.

employmentSourceOfFunds

string

Can be one of the following BUSINESS_PROCEEDS, REMITTANCES

[required] for employed

12.

employmentOtherSourceOfFunds

string

Additional source(s) of income apart from primary employment

[required] for employed

13.

employmentInstitutionName

string

The name of the organization or company where the customer is currently employed

[required] for employed

14.

employmentIncomeRange

string

Can be one of the following LESS_THAN_1000, MAX_5000, MAX_10000, GREATER_THAN_10000

[required] for employed

15.

employerName

string

[required] for employed

16.

employerGhanaPostAddress

string

[required] for employed

17.

employerBusinessAddressHouseNumber

string

[required] for employed

18.

employerBusinessAddressStreetName

string

[required] for employed

19.

employerBusinessAddressArea

string

[required] for employed

20.

employerBusinessAddressDescription

string

[required] for employed

21.

physicallyChallenged

string

Available options are PREFER_NOT_TO_SAY, YES, NO

[optional] default PREFER_NOT_TO_SAY

22.

disabilityType

array

Can be one or more of the following VISION_IMPAIRMENT, DEAF_OR_HARD_OF_HEARING, MENTAL_HEALTH_CONDITIONS, INTELLECTUAL_DISABILITY, ACQUIRED_SPECTRUM_DISORDER, AUTISM_SPECTRUM_DISORDER, PHYSICAL_DISABILITY

[required] for YES

EKYC API reference

Refer to EKYC onboard API for more details

4. Account funding

An account may be funded via any of our digital channels. We are connected to the Ghana Interbank Payment and Settlement Systems (GhIPSS), thus, all individual accounts created can be found on the GHIPSS Instant Pay (GIP) platform.

5. Approval process

An account created via API undergoes several processes. The chart below illustrates the lifecycle of an account, from the submission of details via the endpoint, through approval, to the eventual creation in the core banking system.

Submit details
Compliance approval
Success
Error
Create individual
Unapproved account
Creation in core banking
Active account
Failed to create account

Fetch customer details

Retrieve the details and status of a customer at any stage of the onboarding process

Details API reference

Refer to fetch customer details API for more details

Last modified: 27 August 2025