I am trying to figure out some categories to encompass some sort of money transfers / transactions but my banking "expertise" is falling short.

Ok what I am trying to group are the things below:

  • Credit Card Refunds
  • Debit Card Refunds
  • ACHs
  • Wire transfers
  • Bank Transfers

I kinda disagree with Wikipedia https://en.wikipedia.org/wiki/Wire_transfer put on the same line: Wire transfer, bank transfer and credit transfer.

A bank transfer can also be an ACH which clearly different from a Wire Transfer. But it is true that a Wire transfer is also a Bank Transfer. About a Credit Transfer, not that I want to be nitpicking here but to me, it's yet another different thing (especially depending on the context).

From an OO inheritance perspective I'd then say:

  • Wire Transfers -> Bank Transfers
  • ACHs -> Bank Transfers

Now when it comes to bank card refunds, I am a bit more skeptical, I would say "yeah, of course they are like Bank Transfers" obviously but not really Wire Transfers per say. On one hand, they are electronic, that's for sure, but on the other, the Bank Account Details are usually required for a Wire Transfer (ie. IBAN + SWIFT/BIC code + Owner's name).

  • Credit Card -> Bank Card
  • Debit Card -> Bank Card

and so:

  • Credit Card Refunds -> Bank Card Refunds
  • Debit Card Refunds -> Bank Card Refunds


  • Bank Card Refunds -> ???

and generally-speaking I am not too sure if I can consider the purchases made with a bank card (regardless of is actual type) can be seen as Wire Transfers since business don't really have the actual bank account details of their customers.

Anyway would be super appreciated if someone could shed the lights on the Bank Card Refunds and whether they can be considered as some sort of Wire Transfers.


Alright, the reason about why I am looking for categories, is that I am currently working on a piece of software that performs refunding + compensations (in the sense of Goodwill Gestures) by Wire Transfers (SEPA + International) as well as refunding purchases made with bank cards.

I was looking for a name to encompass the whole piece of software and its sub-components.

Refunds is not accurate in the sense that for some legacy reasons, it also process Goodwill gestures which are supposedly different from refunds.

Long story short:

  • Wire Transfers for goodwill gestures + refunds that cannot be processed by card
  • Bank Card refunds

About the whole thing, except maybe something like "Money Transfers" or "Transactions".

  • Money Transfers / Transactions:
    • Wire Transfers:
      • Refunds
      • Goodwill Gestures
    • Bank Cards:
      • Refunds

Not sure if this kind of structure makes any sense though.

  • I'm voting to close this question as off-topic because belongs on a more technical forum.
    – Hot Licks
    Dec 2, 2019 at 13:09
  • 1
    In my experience, a bank card refund is quite a different mechanism than a wire transfer. The former is between a merchant and a customer (with the bank card provider as the intermediary). The former uses a credit card number and can happen at virtually any time. The latter is between two customers (with two banks as intermediaries). The latter uses two SWIFT numbers and two account numbers. The transfer happens at specific times of day.
    – rajah9
    Dec 2, 2019 at 13:13
  • 4
    Can you please elaborate on why you want to do this: "I am trying to figure out some categories..." What is this for? Are you creating accounts in your accounting software? Are you writing accounting software? Honestly I can't think of any reason you would ever need to categorize a refund other than as a negative expense for the original account.
    – TTT
    Dec 2, 2019 at 14:49
  • Bank systems can be different in different countries, so which country are we talking about?
    – glglgl
    Dec 2, 2019 at 15:15
  • @glglgl Europe (UK and Switzerland included) Dec 2, 2019 at 16:16

3 Answers 3


The simple answer to your title question of,

Is a credit or debit card refund is technically-speaking the same as a wire transfer?

is no. They are not technically the same, or even technically related.

In terms of the technical implementation, refunds against debit card or credit card purchases are the same thing as normal purchase transactions against cards. They are processed through a given card payment network (i.e. Visa, Mastercard, etc) as a transfer of money between an issuing bank and a merchant bank.

In effect, a credit card refund is the same (technically) as a credit card purchase, except with a negative sign in front of it.

You also asked a follow up question about credit card transactions in general,

I am not too sure if I can consider the purchases made with a bank card (regardless of is actual type) can be seen as Wire Transfers since business don't really have the actual bank account details of their customers.

The answer to that is also no. As mentioned above, credit and debit card transactions happen through dedicated payment networks managed by brand names like Visa or Mastercard. There are a handful of different possible types of card transactions which may be processed differently through a given network, but they are handled completely separately from "wire transfers" which process through networks like SWIFT.

All that said, it seems like you are trying to solve a larger problem of categorizing transaction types. That's a harder problem to solve without more context (what is the purpose of your categorization?) So, maybe you can edit in some more context or ask another question if it's different enough.

  • Thanks for your answer, this is quite informative. I just added a bit more context to my question, not sure if it helps. Dec 2, 2019 at 16:34
  • 3
    It's still not clear what you're trying to accomplish by making up this hierarchy of transaction type names. If you are writing software that is actually processing the transactions, the categories and behaviors for the different types will be dictated by your interface to the various networks. If you're just doing this to come up with a name for your software, I suppose it could be whatever you wanted it to be.
    – dwizum
    Dec 2, 2019 at 16:38
  • 1
    Also - the fact that you want to send refunds implies that there was an original transaction (which is being refunded). The refund mechanism would likely already be implemented through whatever channel created the original transaction - not sure what problem your software would be solving in that case?
    – dwizum
    Dec 2, 2019 at 16:39
  • Well under some particular circumstances the original transaction cannot be refunded using the same channel, hence the need of reimbursing customers using wire transfers. The most common scenarios are refunds against bank cards. Dec 2, 2019 at 17:32
  • My second biggest issue of categorization besides refunds against bank cards (which thanks to you is crystal clear), are goodwill gestures and whether they can be considered as compensations or not, since they are supposedly not caused or triggered by liabilities, this might require me to create another ticket tho. Dec 2, 2019 at 17:34

You are approaching this problem wrong. It also probably should not be on this site. There are some errors of thought in how you are thinking about this from a coding perspective. You are treating credit cards as a category but each type of issuer has its own rules and may have contracts that override the general rules. Each financial institution that clears these items can also have its own rules.

Wires and the ACH are standardized on a bank-to-bank basis but access to the wire system comes through banks, you cannot get direct access to either as an outsider. There is a separate international system from Fed Wire and there are private systems such as Western Union. Internal bank transfers operate on rules that are internal to specific banks.

There are also financial institutions that do not have direct access to wire facilities. Credit unions get access to the banking system through a correspondent bank. They have no legal right to direct access to the system. Also, some other types of American financial institutions offer transaction services but only acquire them through a correspondent bank. Some insurers allow you to claim insurance money through a checking account like feature, but it is illegal to add money to the account and the checks are "payable through" another bank. In those cases, a true refund is allowed but it is against the law to add any money.

Some U.S. states impose legal restrictions on banks operating inside their borders. Certain types of transactions can only happen if they originated inside their state's boundary. Some states, for example, only allow deposits to happen in ATMs if the ATM is inside the state's boundary. Money from the same bank cannot arrive from another state even though it is the same legal corporation. Although this does not generally affect you, it is not impossible that some future law by a state could impact what is allowed.

This is a case where you need a well-structured requirements document where all the rules are covered by a subject matter expert. You cannot possibly gather enough information about this on web forums or from general regulations.

In the United States, you have fifty states, the Federal Government, you have the governing bodies of the territories and districts such as Puerto Rico or the District of Columbia. Within the states, you have separate banking, insurance, and brokerage regulators. There are a few states that unify them. At the federal level, you have the Office of the Controller of the Currency, the Federal Deposit Insurance Corporation, the Federal Reserve, the National Credit Union Administration, and the Consumer Financial Protection Bureau. In addition, you have the card issuers that produce their own regulations and contractual requirements. Finally, you have the software vendors. Each of these has the legal right to mess up your software.

While most of what you need has been standardized, this is not the forum to gather those standards. You are working on a well-solved problem, but you need to know how data vendors have already solved this. You also need to know how they monitor law changes for any of the jurisdictions.

Most of this post only matters in the abstract as most states have agreed to approximately uniform laws. However, if person A has money on deposit at a life insurance company resulting from a death and they use a debit card to make a $100 purchase and the purchase is canceled and a refund made, you cannot add additional money because the insurer cannot accept it. It isn't safe to assume that what works in Europe is permissible in Alabama even if it is acceptable in every other state. You also should not assume that because something is allowed by Visa that it will be allowed by Diner's Club.

There is no substitute for a proper requirements document vetted by a subject matter expert.

I know you want to do this in an OO framework but that won't begin until you understand the technical components to the rules. Also, I could see extra money creating tax reporting requirements on you through the IRS and the appropriate state taxing authority and, depending on the sums or the frequency of transactions, also create money laundering reporting requirements for the receiving banks.


As you state you are interested in Europe (including CH), things are a bit different than they seem to be in the US (as far as I could read on this site).

In Europe, we have the SEPA network. It connects banks (simply spoken) and can be used to transfer funds from one account to a different one.

When I send you money, I enter your IBAN (international account number, including routing information). My bank collects this transfer together with many others and sends them together to a clearing instance. There they are "routed" and they eventually reach the destination bank and account. This is similar to ACH or wire transfer.

The opposite are direct debits, where you allow me to withdraw funds from your account. I can perform this withdrawal and, in order to do so, I am subject to the respective regulation. You, on the other hand, can reject such a transaction up to 8 weeks after it occurred, under certain circumstances (such as if you never authorized me) even 13 months.

For paying via debit card, there are several systems:

  • country specific, such as girocard in Germany AFAIK, this one happens similar to the direct debits
  • Maestro, V-Pay They happen via the credit card companies (MasterCard, VISA)

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .