Customer Account Creation

This API allows you to create and manage user accounts efficiently and securely. With this API, you can streamline the onboarding process, ensuring a seamless experience for your users.

NB:

In the sandbox environment, KYC checks are always passed without any deductions. In the live environment: KYC will be verified, and a ₦50 fee will be deducted from the business wallet for each check. If the business wallet has insufficient funds, the request will fail with a 422 status code. To create an account, make a POST request to the endpoint: POST {{baseurl}}/customers/create These are the parameters of the request body.
FieldData TypeDescription
emailStringRequired. User’s email address.
firstNameStringRequired. User’s first name.
lastNameStringRequired. User’s last name.
phoneNumberStringRequired. User’s phone number. Example: +2348131911964.
cityStringRequired. User’s city of residence.
stateStringRequired. User’s state of residence.
countryStringRequired. User’s country of residence. Example: NG.
zipCodeStringRequired. User’s postal or ZIP code.
line1StringRequired. First line of user’s address.
line2StringOptional. Second line of user’s address.
houseStringOptional. House or apartment number.
idTypeEnumOptional. Type of identification document. Values: NIN, PASSPORT, DRIVER_LICENSE, VOTER_CARD.
idNumberStringOptional. Identification document number. Required if idType is provided.
bvnStringConditionally Required. BVN is required for users in Nigeria (country = NG).
documentStringOptional. URL of the user’s identification document.
document2StringOptional. URL of the user’s identification (the back of the document)
profileImageStringOptional. URL to the user’s profile image.
dateOfBirthStringRequired. User’s date of birth in YYYY-MM-DD format.
referenceStringOptional. Reference identifier for the user.
This is what a typical successful response will look like:
{
    "success": true,
    "statusCode": 201,
    "message": "Customer created successfully",
    "data": {
        "id": "326a18a1-441a-457d-ba28-0538e0717c92",
        "email": "test@payshiga.com",
        "firstName": "test",
        "lastName": "testing",
        "city": "Bariga",
        "state": "Lagos",
        "country": "Nigeria",
        "zipCode": "100231",
        "line1": "123, Payshiga road",
        "line2": null,
        "phoneNumber": "+2348131911964",
        "house": "Zk9",
        "dateOfBirth": "2002-10-29T00:00:00.000Z",
        "idType": "NIN",
        "idNumber": "123456789",
        "document": "https://example.com/document.pdf",
        "document2": "https://example.com/document2.pdf",
        "imageURL": "https://example.com/profile.jpg",
        "reference": "w72hs8shshshshw8s8292ushs",
        "createdAt": "2024-05-01T22:10:44.329Z",
        "status": "APPROVED",
        "reason": null, // this will be a string if the kyc was rejected
        "businessId": "0bb1dfc6-a74c-4e53-b41a-4a0c1eab188e"
    }
}
Remember to save the customer ID

Error Responses

Missing API keys

Status Code: 401 Bad Request The response will include an error message indicating an issue with the request parameters.
{
    "status": false,
    "statusCode": 401,
    "message": "Invalid Api Key"
}