现在微信、支付宝等支付功能(简称:第三方支付)已经全面普及,作为一名程序员,我问了身边的朋友,发现大部分人只知道转账、发红包,把钱发给对方,对方也发钱。其实你的钱是怎么来的,怎么去的,其实并不是很清楚,少部分程序员也不清楚。
不用多说,让我们直接进入正题。
说到支付系统,有几个专业术语是经常用到的,我来一一解释一下,绝对容易理解。
首先任何第三方支付都需要你开立账户,绑定银行卡号,你开的账户就是你在第三方支付开的账户。
简单来说,钱必须放在银行,这是最基本、最安全的前提,所以第三方支付公司大部分都是跟银行有合作的,所谓合作就是开通了对公账户,银行就是第三方支付公司,支付公司提供支付接口,也就是网关(也就是支付通道)。
所以第三方对公账户就有很多,每个银行都有一个,都是受央行监管的,里面的钱就是准备金,你充值多少就是里面有多少钱,任何第三方支付都是不能挪用的。那么问题来了,如果不能用,第三方支付怎么赚钱呢?呵呵,本金不能用,那利息呢?利息真的很诱人啊。
因为你不能跨银行转账,就是建设银行的钱不能转到交通银行去(现在ATM机其实也不真正跨银行转账,都是经过支付系统),但是对于第三方支付来说,你的所有操作,在他眼里只有站内转账的概念,其他的一切都是由内部的支付系统决定的。
1.充值(你的银行卡--->第三方支付)
所谓充值就是把你银行卡里的钱通过支付系统转到第三方支付的对公账户里(后面详细解释),因为第三方支付有大部分银行的对公账户,所以不管你是哪张银行卡,都可以把钱转到对应的对公账户里。
2.提款(第三方支付---->您的银行卡)
取现,简单来说就是把第三方支付账户里的钱转到银行卡里,听起来简单,但是支付系统(后面会详细讲解)有点复杂。
同样,由于第三方支付有大部分银行的对公账户,所以不管你提现到哪家银行的银行卡,都可以找到对应的银行把钱转走,所以提现也属于站内转账,站内转账是不需要手续费的,但是部分第三方支付已经开始收取提现手续费了。
3.转账(第三方支付----->第三方支付)
这个和银行没有关系,没什么好说的,只是你账户上的数减少了,另一个账户上的数增加了。
4.转账(你的银行卡------>第三方支付)
这是你第三方账户没钱,需要从你绑定的银行卡扣钱的情况,第三方支付就没什么区别,首先你的银行卡---->第三方支付到对公账户,另一边只要把号码加到你需要转钱的人那里就可以了。
支付系统: 要做的就是根据用户的银行卡,找到对应的银行进行转账,这就涉及到一些比较专业的技术了(这里就不用简化了,要注意的地方还是比较多的,毕竟涉及到钱,所以在写支付代码的时候,需要保持头脑清醒)。
所以整个支付系统,就是第三方调用银行的接口,你的钱一直在银行,没有动过,只是数字在变。
题外话:第三方支付在跟银行谈判的时候(也就是要求银行提供支付接口和网关),有些条件可以理解,但是取款和存钱的人都知道,同一家银行是不需要手续费的,但是有些第三方支付却要收取不少手续费,哈哈,吐槽一下!
当然支付系统很复杂,要支撑很多人,你的钱对他们来说只是增加或者减少的数字,准备金是动不了的,所以不要以为是第三方支付扣了你的钱,你的钱,即使是被骗走的你的钱,也是在银行,不可能被盗用,第三方也不敢擅自挪用。