codenever changes: build your handling on it.messageis for people and may be reworded.request_ididentifies the request: quote it when you contact One Pay.
By status
A
400 names the field that is wrong:
Payments that fail
A payment the partner refuses is not an API error: the request succeeds and the payin or payout ends withstatus: "failed" and a failure:
payin.failed or payout.failed webhook.