Validate Invoice Payment
Validates an invoice before online payment starts or before final confirmation.
Required query params: invoiceNo, amount, currencyPaid currency ObjectId, type (start or confirm), processor (paystack, Paypal, or authorize.net), partPaymentFromWalletBalanceBefore, partPaymentFromWalletBalanceCurrent.
Response fields: verStatus boolean, verType, cloneId when type=start, invoice document. If invalid invoice state, response may contain verStatus:false, error, and invoice.
Possible errors:
- 400: Missing One or More Required Parameters - invoice validation query is incomplete.
- 400: You must set a billing address before you proceed - billing address missing.
- 404: Invoice not found - invoice number does not belong to the customer.
- 400: Wrong Currency -
currencyPaiddoes not match invoice currency. - 400: Payment method is disabled - requested processor is not active for the currency.
- 400: Wrong Amount - amount does not match invoice payable amount.
- 200: Bad Invoice response -
verStatus:falsewhen invoice is already paid or in bad payment state. - 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.
Query parameters
Query parameter supported by the gateway/downstream service.
Query parameter supported by the gateway/downstream service.
Query parameter supported by the gateway/downstream service.
Query parameter supported by the gateway/downstream service.
Query parameter supported by the gateway/downstream service.
Query parameter supported by the gateway/downstream service.
Query parameter supported by the gateway/downstream service.