Understand the customer payment journey in case of failure

This PR is the first part (second to follow to frappe/payments) to understand the failure modes in the customer checkout / payment journey when effectuating payments via a payment gateway.

It is designed for sales personal to quickly screen payment requests for failed payments to be put in a position to proactively reach out to their customers to handle the situation (e.g. by providing an alternative payment method).

It’s a small one, so I hope it doesn’t require too much of the scarce attention of the esteemed reviewers.

Screenshot from the PR description.

Here it’s error “FOO: bari” for testing, but in reality this would be a technical message from the gateway typically extracted out from a JSON attribute from the gateway-specific response payload, such as from an IPN (Instant Payment Notification) server-to-server message.