When you use a GoCardless pre-authorisation to request a generic amount from a client, once cleared those funds will appear on the client account as a credit without being bound to any specific invoice. All you need to do in this case is click on that supplier link (The one you’ve blacked out on your screenshot), this will take you to the client detail screen. Under the credit header you will see the unallocated amount:
If you then locate the invoice you want to assign the credit to, click to Log a Payment, you can then assign the credit to pay down the invoice.
This will not result in any duplication. In fact any bank transaction that is assigned to a client or supplier but not to a specific invoice will appear this way in the bank, it’s nothing specific to GoCardless.
Hope that helps!