If a customer payment is declined when the customer attempts to pay via their customer portal, a transaction payment is still created. A user may be confused that this indicates the payment went through successfully, however, that is not the case.
There is a difference between creating a Receive Payment transaction, and processing the actual payment.
Before you can receive money from a customer, a Receive Payment transaction needs to be created first.
Once the Receive Payment transaction is created, then within that transaction, you process the payment.
Regardless of whether the payment is accepted or declined, the Receive Payment transaction is entered in to log the attempt to receive a payment. It is not deleted afterwards even if the payment is declined.