Create a new transaction, currently only supporting bank transfer

Response Schema:

{
    "status": boolean,
    "message": string,
    "data": {
        "id": string,
        "amount": string,
        "fee": string,
        "narration": string,
        "type": "credit" | "debit",
        "initiatedAt": date-time | null,
        "completedAt": date-time | null,
        "accountId": string,
        "details": {                
            "accountName": string,
            "accountNumber": string,
            "bank": {
                "code": string,
                "name": string,
            }
        } | null,
        "status": "pending" | "successful" | "failed" | "declined",
        "failedAt": date-time | null,
        "reasonForFailure": string | null,
        "clientReference": string | null,
        "transactionReference": string,
			  "nipSessionId": string | null
    }
}

In the sandbox environment, you can simulate a failed transaction by performing a bank transfer to any of these accounts:

Account NumberBank CodeError
6257392194000016Transfer Not Successful
4000007863000016Beneficiary Bank not Available
0954428453000015System Malfunction
0783199300000015Timeout waiting for response from destination bank
5858433191000013Insufficient Balance in Debit Account

If the status code is not 200, the response could optionally include errorCode and / or errors.
Possible values for errorCode is given in the table below.
errors maps the specific errorCode and errorMessage to the reference

Error CodeDetails
01Validation error. One or more parameters could not be validated correctly.
02Insufficient funds in account
03The transfer limit on the account has been exceeded
04Invalid or duplicate reference
05Invalid recipient account
07Invalid or duplicate bulk transfer reference
08Invalid number of objects in bulk transfer transfers parameter
Language
Authorization
Header