About 3 weeks ago AmEx issued my statement. I have direct debit set up and decided to instead pay through the app straight away so I don't have a large sum of money sitting their for no reason. Yesterday was the day my direct debit usually gets processed for which I got an email saying "Thank you for your payment", I quickly logged onto my AmEx account and realised I had been charged again! I quickly called AmEx and they put in a refund request. The lady on the phone told me that their system has no way of knowing if you made a manual payment so it will process the direct debit whether or not you already paid. I think it's ridiculous that a company as large as AmEx doesn't have a system to detect this.
Consider this a warning and to check your statements and accounts often!
Citibank have option to direct debit the balance of the card.
So if you pay the card by other method beforehand, direct debit will check whatever balance left, and debit that amount.