3

If an app is to accept monetary deposits in form in return for credits that can be used for services, how is the money stored, deposited and withdrawn.

ie. in adwords you deposit say $10 into your account then your shown a credit of $10. But this $10 is purely representative of your money, its just a value in a database.

What the actual back end system like to handle this ? ie. where is the money actually held, how does the web app control the actual money, in the event of a withdrawal etc. ?

hoang
  • 1,887
  • 1
  • 24
  • 34
sam
  • 9,486
  • 36
  • 109
  • 160
  • I would say using transactions mainly. – hoang Feb 14 '13 at 16:50
  • 1
    do you by any chance mean "how does the web app tell the bank to do a transfer and/or how does the bank tell the web app that money has been transfered" ? – Nick Andriopoulos Feb 20 '13 at 20:47
  • @hexblot - yes exactly – sam Feb 20 '13 at 20:58
  • Stored in your bank or a payment processor.. You keep reference to the amount as it changes in your database. – Atticus Feb 21 '13 at 09:24
  • @atticus are there any off the shelf librarys / plugins that can deal with this or would it have to be built from scratch ? – sam Feb 21 '13 at 11:57
  • ...every payment processor has an API with supported libraries. I'll write you an answer when I get into work. I'm actually doing a project that integrates with about 7 different banks/payment providers. – Atticus Feb 21 '13 at 16:59
  • @Atticus sounds interesting, ill look forward to it – sam Feb 22 '13 at 19:09

4 Answers4

4

Almost all money in the world IS "purely representative of your money, its just a value in a database"! The next part of money is the paper money which in a sense real in that it's physical but it can become worthless at any time if the government who backs the paper goes belly up. After that comes physical stuff like gold, but that's extremely impractical.

So basically what I'm saying is that web apps that handle money just have values in a database! The ones that are properly written take great care to test and validate the code that handles "money" and of course uses database transactions like hoang already said to avoid duplicating money or losing money in the system.

I hope this answer makes you a little less confortable with how money is handled in the modern world :P

boxed
  • 3,895
  • 2
  • 24
  • 26
2

From the comments, what you mean is you're interested how the web app transacts with the bank (which has the "real money", not just the database numbers).

What happens is that each web app can talk via APIs to a specific banking institute (eg local bank, PayPal etc). The web app can then use that to order money to be sent, and be notified by it when money comes in. The exact details vary, depending on the banking institute.

For example, you can find more about OFX ( Open Financial Exchange ) here : http://wiki.gnucash.org/wiki/OFX_Direct_Connect_Bank_Settings

Nick Andriopoulos
  • 10,313
  • 6
  • 32
  • 56
1

From Stackoverflow bounty system

You must have at least 75 reputation to start a bounty, and at least as much reputation as the bounty amount.

The bounty award will be subtracted from your reputation when the bounty is started, not when it is awarded

Replace reputation with Money in a superficial trading platform

You must have at least 75$ to start a purchase , and at least as much dollars as the ask price.

The ask amount will be subtracted from your account when the Trading is started, not when it deal is awarded

Lets add some process around our superficial trading platform

  • You account is mapped to your VISA credit card and charges will be automatically processed.
  • The moment the deal is closed the shipment will be initiated to your delivery address and you can expect delivery within a week.

That is a simplistic representation how money is handled in web apps :). They are still numbers / transactions mapped to some real work processes & Rules and integrated with your Banks

Community
  • 1
  • 1
Manish Singh
  • 3,463
  • 22
  • 21
0

It boils down to a secure token that can be trusted, I can issue a cheque for an amount and send it to you, you go to the bank and get that honoured/paid A cheque can be "written" (I use the term loosely, because it can also be a barcode or an encrypted code) in any way (Bullet cases have been used and honoured) So all it really is is a promise "I promise to pay the bearer"