Unfortunately, merchants can't control all the declines that occur with their customers while purchasing and know the exact reason for failed transactions, as most decline responses are generated by bank without specified information. In some cases though, transaction may be declined due to block rules that consider the transaction fraudulent by number of reasons.
Merchants can decrease the likelihood of declines by helping their customers to pass though completing the correct card data such as card number, CVC code, expiration date etc. with adding validation check option.
Retry logics is available for Soft declines since such type can be successfully processed afterwards.
Customers often fail while passing through authorization, so the best option is to contact their bank to specify the reason of the decline.
To sum it up, the more data merchant collects from their customers, the more easier and quicker the declines may be fixed.