Top Up Wallet
Credits wallet after a supported external payment gateway transaction.
Required body fields: amount, paymentGateway, currency. Conditional: reference required for Paystack; paymentIntentId required for Stripe; paymentId required for PayPal. currency is code such as NGN, USD, GBP.
Response fields: message, transactionId, amount, walletBalance.
Possible errors:
- 400: Invalid amount - amount is missing, non-numeric, or less than 1.
- 404: User not found - authenticated customer was not found downstream.
- 404: Currency not found - supplied currency code is unknown.
- 400: Payment method is disabled - selected gateway is not active for the currency.
- 400: This transaction cannot be completed - duplicate reference/payment id detected.
- 400: Reference is required - Paystack top-up requires
reference. - 400: Payment Intent is required - Stripe top-up requires
paymentIntentId. - 400: Payment Id is required - PayPal top-up requires
paymentId. - 400: Missing One or More Required Parameters - required body/query fields were not supplied.
- 401: Unauthorized - token is missing, expired, invalid, or the account/token pair was not found.
- 403: Access denied - gateway traffic guard/rate policy blocked the request.
- 429: Too many requests - gateway rate limit exceeded.
- 500: Unexpected Error - unhandled gateway or downstream service failure.
Request
This endpoint expects an object.
amount
currency
paymentId
reference
paymentGateway
paymentIntentId
Response
OK
key_0
key_1
key_2
key_3
key_4
Errors
400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
404
Not Found Error
429
Too Many Requests Error
500
Internal Server Error