付款处理器 – 如果我想在我的网站上接受信用卡,我需要知道什么?

这个问题谈到了不同的支付处理器和他们的成本,但我正在寻找答案,如果我想要接受信用卡付款,我需要做什么?

假设我需要为客户存储信用卡号码,所以依靠信用卡处理器做这个繁重的工作是不可能的。

PCI数据安全 ,显然是存储信用卡信息的标准,有一系列的一般要求,但是如何实现呢 ?

像Visa这样的供应商有哪些最佳做法?

我是否需要使用遥控器访问本机? 从物理上保护它免于黑客在build筑物呢? 或者甚至如果有人拿到了SQL Server数据文件的备份文件呢?

备份呢? 这些数据还有其他的实体拷贝吗?

提示: 如果您获得商家帐户,您应该谈判他们收取“交换加”而不是分层定价。 通过分级定价,他们将根据使用什么types的Visa / MC向您收取不同的费率 – 即。 他们更多地收取附有大奖的贺卡。 交换加计费意味着您只需向处理器支付Visa / MC的费用,另外还要支付固定费用。 (Amex和Discover将自己的费率直接付给商家,所以这个不适用于这些卡,你会发现Amex的利率在3%的范围内,Discover可以低至1%。 2%的范围)。 这项服务应该为你做谈判 (我没有用过,这不是一个广告,我不附属于该网站,但这项服务是非常需要的。)

这篇博客文章提供了处理信用卡 (特别是英国)的完整情况。


也许我错误地说了这个问题,但是我正在寻找这样的提示:

  1. 使用SecurID或eToken将额外的密码图层添加到物理盒子。
  2. 确保箱子放在有物理锁或钥匙码组合的房间里。

不久以前,我和一家公司一起经历了这个过程,并计划通过自己的事业很快再次实现这一目标。 如果你有一些networking技术知识,那真的不是那么糟糕。 否则,你会更好使用贝宝或其他types的服务。

该过程首先获取商家帐户设置并绑定到您的银行帐户。 你可能想和你的银行核对一下,因为很多大银行都提供商户服务。 你可能能够得到交易,因为你已经是他们的顾客了,但是如果没有,那么你可以购物。 如果您打算接受Discover或美国运通卡,那么这些服务将是独立的,因为他们提供商户服务卡,没有得到解决。 还有其他的特殊情况。 这是一个申请程序,做好准备。

接下来,您将需要购买SSL证书 ,以便在信用卡信息通过公共networking传输时保护您的通信。 有很多的供应商,但我的经验法则是select一个品牌的方式。 他们所知道的越好,你的客户可能听说过他们就越好。

接下来,您将希望find一个支付网关用于您的网站。 虽然这可以是可选的,取决于你有多大,但大多数时间不会。 你将需要一个。 支付网关供应商提供了一种与您将与之通信的Internet网关API对话的方式。 大多数供应商提供HTTP或TCP / IP通信与他们的API。 他们将代表您处理信用卡信息。 两个供应商是Authorize.Net和PayFlow Pro 。 我在下面提供的链接有更多关于其他供应商的信息。

怎么办? 对于初学者来说,有关应用程序必须遵守的传输事务的指导原则。 在设置一切的过程中,有人会看你的网站或应用程序,并确保你遵守的指导方针,如使用SSL,并且你有使用条款和政策文件,关于用户给你的信息是什么对于。 不要从另一个网站盗取这个。 拿出你自己的,如果你需要聘请律师。 其中大部分属于Michael提供的PCI数据安全链接。

如果您打算存储信用卡号码,那么您最好准备在内部采取一些安全措施以保护信息。 确保存储信息的服务器只能由需要访问的成员访问。 像任何好的安全一样,你可以分层次地做事情。 你放置的层越多越好。 如果你想要的话,你可以使用钥匙types的安全,如SecureID或eToken来保护服务器所在的房间。如果你买不起钥匙链路线,那么使用两个关键的方法。 允许有权进入房间的人签出钥匙,钥匙已经携带。 他们需要两把钥匙才能进入房间。 接下来,使用策略保护与服务器的通信。 我的政策是,唯一通过networking与其通信的是应用程序,并且信息是encryption的。 服务器不能以任何其他forms访问。 对于备份,我使用truecryptencryption备份将保存到的卷。 任何时候数据被移除或存储在其他地方,然后再次使用truecryptencryption数据所在的卷。 基本上哪里有数据,它需要encryption。 确保所有获取数据的stream程都包含审计跟踪。 使用日志访问服务器机房,使用摄像头,如果可以的话,等等…另一种措施是encryption数据库中的信用卡信息。 这可以确保数据只能在您的应用程序中查看,您可以执行查看信息的人员。

我使用pfsense作为我的防火墙。 我从一个紧凑的闪存卡运行它,并有两个服务器设置。 一个是故障切换冗余。

我发现了Rick Strahl 写的这篇博客文章 ,他帮助我们理解了电子商务以及通过Web应用程序接受信用卡的方式。

那么,这是一个很长的答案。 我希望这些提示帮助。

问问自己以下问题: 为什么要在第一位存储信用卡号码 ? 有机会,你没有。 事实上,如果你把他们存储起来并设法让一个人被盗,你可能会看到一些严重的责任。

我写了一个存储信用卡号码的应用程序(因为事务处理是离线的)。 这是一个很好的方法来做到这一点:

  • 获得SSL证书!
  • 创build一个表单来获取用户的CC#。
  • encryption部分(不是全部!)的CC#并将其存储在您的数据库中。 (我build议中间的8位数字。)使用强大的encryption方法和密钥。
  • 将剩余的CC#邮寄给处理您的交易(可能是您自己)的人员,并使用要处理的人员的ID。
  • 稍后login时,您将inputCC#的ID和邮寄部分。 您的系统可以解密其他部分并重新组合以获取完整的号码,以便您可以处理交易。
  • 最后,删除在线logging。 我的偏执解决scheme是在删除之前用随机数据覆盖logging,以消除未删除的可能性。

这听起来像是很多工作,但是从来没有在任何地方logging完整的CC#,这使得黑客在networking服务器上find任何有价值的东西都变得非常困难。 相信我,这是值得安心的。

PCI 1.2文件刚刚出来。 它提供了一个如何实施PCI符合要求的过程。 你可以在这里find完整的文档:

https://www.pcisecuritystandards.org/security_standards/pci_dss.shtml

长话短说,创build一个单独的网段,无论哪个服务器将专门用于存储CC信息(通常是数据库服务器)。 尽可能隔离数据,并确保只有访问数据所需的最小访问权限。 在存储时对其进行encryption。 切勿存放PAN的。 清除旧数据并旋转encryption密钥。

示例注意事项:

  • 不要让在数据库中查找一般信息的相同帐户查找CC信息。
  • 不要将您的CC数据库保存在与您的Web服务器相同的物理服务器上。
  • 不要允许外部(Internet)stream量进入您的CC数据库网段。

示例Dos:

  • 使用单独的数据库帐户查询CC信息。
  • 通过防火墙/访问列表禁止所有stream量到CC数据库服务器
  • 将访问CC服务器的权限限制在一组有限的授权用户。

我想添加一个您可能想要考虑的非技术性评论

我的一些客户经营电子商务网站,其中包括一些中等规模的商店。 这两者,虽然他们当然可以实现支付网关select,但他们采取的cc号码,暂时存储在线encryption和手动处理。

他们这样做是因为欺诈发生率很高,手工处理让他们在填写订单前进行额外的检查。 我被告知他们拒绝超过所有交易的20% – 人工处理肯定需要额外的时间,在一个情况下,他们有一个员工除了处理交易什么也不做,但是他的工资支付成本明显低于他们如果他们只是通过在线网关传递cc数字的话。

这两个客户都提供转售价值的物理产品,所以特别暴露,如软件欺诈性销售不会导致任何实际损失,您的里程会有所不同,但它是值得考虑上面的技术方面的在线网关如果实现这样的真的是你想要的。

编辑:自从创build这个答案,我想添加一个警示故事,并说时间已经过去,这是一个好主意。

为什么? 因为我知道另一个正在采取类似方法的联系人。 卡的详细信息被encryption存储,网站被SSL访问,并在处理后立即删除数字。 保证你的想法?

没有 – 他们的networking上的一台机器被一个关键的日志logging木马感染。 结果,他们被认定为几个信用卡伪造的来源 – 并因此受到重罚。

因此,我现在从不build议任何人自己处理信用卡。 自那时以来,支付网关变得更具竞争力和成本效益,欺诈措施也有所改善。 风险现在不再值得。

我可以删除这个答案,但我认为最好留下编辑警告的故事。

请记住,使用SSL将卡号从浏览器发送到服务器就像在您将卡片交给餐馆的收银员时用拇指覆盖您的信用卡号码:拇指(SSL)阻止餐馆中的其他客户(networking)看到该卡,但是一旦该卡在收银员(networking服务器)的手中,该卡就不再受到SSL交换的保护,并且收银员可以对该卡做任何事情。 访问保存的卡号只能通过Web服务器上的安全措施来停止。 也就是说,networking上的大多数卡片盗窃都不是在传输过程中完成的,而是通过突破恶劣的服务器安全和窃取数据库来完成的。

为什么要兼顾PCI? 充其量,你将减less你的加工费的百分之几。 在这种情况下,您必须确保这是您在开发前期和随着时间的推移,保持最新需求所需要做的事情。

在我们的例子中,使用订阅式网关并将其与商户账户配对是最有意义的。 订阅通过网关允许您跳过所有的PCI合规性,并且只能处理事务。

我们使用TrustCommerce作为我们的门户,并对他们的服务/定价感到满意。 他们有一堆语言的代码,使得集成非常简单。

一定要掌握PCI所需的额外工作和预算。 PCI可能需要巨额的外部审计费用和内部的努力/支持。 也要注意可以单方面征收的罚款/罚金,这往往与“犯罪”的规模严重不相称。

整个过程有很多。 最简单的方法就是使用类似于paypal的服务,这样你就不会真正处理任何信用卡数据。 除此之外,还有相当多的东西可以通过您的网站获得批准提供信用卡服务。 您应该与您的银行以及发放您的商户ID的人员进行沟通,以帮助您设置stream程。

正如其他人所提到的,进入这个领域的最简单方法是使用Paypal , Google checkout或Nochex 。 但是,如果您打算进行大量的业务,您可能希望查找“升级”到更高级别的站点集成服务,如WorldPay , NetBanx(英国)或Neteller(美国) 。 所有这些服务都很容易build立。 而且我知道Netbanx可以方便地集成到一些现成的购物车解决scheme,如Intershop (因为我写了一些)。 除此之外,您正在考虑与银行系统(及其APAX系统)的直接集成,但那很难,在这一点上,您还需要向信用卡公司certificate您正在安全地处理信用卡号码(可能不值得考虑你没有每月花费10万美元)。

从第一个到最后一个工作的成本/收益是,早期的select更容易(更快/更便宜)设置让你支付相当高的每笔交易的手续费。 后者成立的成本要高得多,但从长远来看,你付出的代价更小。

大部分非专用解决scheme的另一个优点是您无需保留encryption的信用卡号码的安全。 那是别人的问题:-)