@guidot is certainly right about the 'correct' term, but I would like to focus on colloquial speech, 'beyond good and evil', so to speak.
Colloquially, abbuchen and Abbuchung are arguably the most common way to talk about every kind of cashless payment in German when the specifics of the processing don't really matter in a conversation. Personally, I don't use other terms very often. The advantage is that it is universally understood.
Technically, however, an Abbuchung corresponds to a direct debit or a debit card payment. This requires a balance which is obviously different from how a credit card works. If this distinction is important to you, you probably should stay with belasten. If not, it would probably be appropriate when talking to your bank, for instance.
In everyday life, however, there is a reason why the debit terminology prevails: direct debit and debit card payment are by far the most popular cashless payment methods in Germany (while good old cash is still the most popular one – maybe because it eliminates the risk of the credit card being overcharged?). This is reflected by the fact that 95 % of the population own a Girocard, while only about 35 % have a credit card. The reasons for this might be that (1) the Girocard comes usually for free with the checking account and (2) it is needed to obtain the most popular payment method (i.e. cash) anyways.
Case study: Overcharge in the restaurant
hatte hat zu viel von meiner Karte abgebucht.
sounds extremely fine in my ears if you want to tell someone about, in fact a lot smoother than hat meine Kreditkarte zu hoch belastet. Talking about standard wording: note that the standard past tense (Perfekt) would be hat abgebucht ('charged'), while hatte abgebucht is past perfect ('had charged').
You would say that "Entschuldi[gu]ng, ich glaube, [S]ie haben zu viel von meiner Karte abgebucht" would be an appropriate translation for "Excuse me, I believe you have charged my card too much"?
Definitely not inappropriate as a translation. If it is socially appropriate in the situation, of course, depends on some other factors like which kind of restaurant it is, how friendly the staff was etc. I see no problem with the wording itself, the rest depends:
- If you get the bill and you immediately notice the overcharge, of course you can point it out to the staff like that, or choose one of several other equally appropriate phrases. It's not offensive at all and gets the information across.
- But if you noticed it later and go to the restaurant separately, I would start with something along the lines of Entschuldigung, dürfte ich Sie was zu der Rechnung von gestern Abend fragen? Ich glaube, … ('Excuse me, may I ask you something about last night's bill? I believe...')
Is it possible that belasten = debit/charge and abbuchen = debit/charge FROM?
No, actually belasten=charge and abbuchen=debit. But the problem when translating this terminology is that charging a bank account is different from charging a credit card. When charging a credit card, you get a credit that is due with the credit-card statement. When charging a bank account, the balance immediately drops. Hence, to debit is a special case of a to charge a bank account, but not the same as charging a credit card.
But what you got right is the syntax: It's ein KontoACC belasten ('charge a bank account' – accusative object), but von einem KontoPREPOBJ abbuchen ('debit from a bank account' – prepositional object).