标签: credit-card

桌面应用的信用卡支付解决方案

关于Web应用程序的支付处理器有很多问题,但我还没有看到桌面应用程序.你有什么经历?

或许将其置于一个小环境中,要求:

  1. 应该可以定制
  2. 应该至少在澳大利亚可以获得,如果不是全世界(不太重要).
  3. 没有存储信用卡详细信息
  4. 每次都有不同金额的经常性微支付
  5. 一键付款.用户可以向支付处理器提供商注册.

payment desktop credit-card

5
推荐指数
1
解决办法
765
查看次数

在线处理信用卡信息而不进行处理 - 如何最好地执行此操作?

我有许多客户要求在线获取客户的信用卡号码,然后在终端的POS处处理付款的请求.我想知道这样做的最佳方法是什么.

我不想以明文形式在服务器上存储信用卡号,我不想以纯文本形式发送带有该号码的电子邮件.

客户不希望注册在线支付账户,因为在线支付处理器的成本较高且额外.此外,两个客户都无法在线收费,因为由于缺货产品或客户要求的问题,总数可能会发生变化.

我还有其他选择吗?

我将使用PHP.如果规则对我应该使用哪种方法有任何影响,我也在加拿大.

php encryption credit-card pci-dss e-commerce

5
推荐指数
2
解决办法
5564
查看次数

信用卡系统实施?

我的网站将拥有一个基本上像信用卡一样工作的信用系统.每个用户都有无限制的信用额度,但在每周结束时,他们必须付清.例如,用户可能会在3月1日到7日之间进行多次购物,然后在3月7日结束时,他们会通过电子邮件发送一份发票,其中列出了本周所有购买的商品以及14日到期的总额.如果他们不付清,他们的帐户就会被取消,直到他们这样做.我只想试着解决如何实现这个问题.

我有他们所有购买的清单,这不是问题,但我只想弄清楚如何处理它.在第7天结束时,我可以设置一个cronjob来生成发票,基本上会有一个ID和到期日,然后我需要另一个多对多表来将所有购买链接到发票.然后,当用户将钱添加到他们的帐户时,我猜它是否适用于他们当前的未结帐单?如果他们在新发票到期时没有还清发票怎么办呢,那么现在他们有两个优秀的发票,我怎么知道哪个适用呢?或者,我是否对先前未完成的发票进行cronjob检查,取消它们,并将新项目添加到新发票中作为"余额转发(+兴趣)"?你如何将钱用在发票上?每笔付款是否必须与发票相关联,或者我可以将其存入他们的帐户信用,然后以某种方式弄清楚什么是已付款而哪些没有?如果他们在发票生成之前提前付款怎么办?我是否会在发票上从发票中扣除信用额,或在到期时的一周结束时扣除?有很多方法可以做到这一点......

任何人都可以描述他们会采取什么方法?


如果有人感兴趣,我的发票模型目前看起来如下(在Django中).InvoiceItems通过反向ID链接到实际的"产品"(FK在产品上,而不是发票项目以允许不同的项目类型(不同的表格)),但我想我会改变它.

class Invoice(models.Model):
    user = models.ForeignKey(User, related_name='invoices')
    created = models.DateTimeField(auto_now_add=True)
    updated = models.DateTimeField(auto_now=True)
    closed_date = models.DateTimeField(null=True, blank=True)
    due_date = models.DateTimeField(default=_next_weekday())
    payment_date = models.DateTimeField(null=True, blank=True) # date the invoice was fully paid
    total_payments = CurrencyField(default=0)
    interest_charges = CurrencyField(default=0)

    @property
    def days_overdue(self):
        dt = self.due_date - datetime.date.today()
        return dt.days if dt.days > 0 else 0

    @property
    def item_total(self):
        return self.items.filter(amount__gt=0).aggregate(t=Sum('amount'))['t'] or Decimal('0.00')

    @property
    def daily_interest(self):
        return _round((self.item_total - self.total_payments) * settings.INTEREST_RATE/Decimal('365.242199'))

    @property
    def subtotal(self):
        return self.item_total + self.interest_charges

    @property …
Run Code Online (Sandbox Code Playgroud)

credit-card design-decisions

5
推荐指数
1
解决办法
1263
查看次数

信用卡号码可以包含前导零吗?

我经常存储信用卡号码varchar(16).这是有效的,但每个数字需要17个字节.

存储并不是什么大不了的事,但我喜欢高效,无论是存储需求还是表搜索时间.

如果我可以使用decimal(16) unsigned,我可以将存储需求减少到7或8个字节,并且仍然保持可读性以及大部分兼容性.

这将剥离前导零.我可以依赖所有以非零数字开头的信用卡号码吗?

database-design credit-card

5
推荐指数
2
解决办法
5558
查看次数

建议定期结算的建议?

我有一些设置在线支付系统的经验,接受信用卡号码,然后将它们传递到网关进行一次性付款.

但是,我现在需要设置一个可以处理自动重复计费的系统 - 用户提供其信用卡号码,并且从那时起每月自动计费.

我想知道接近这样的事情的最佳方法是什么?(我注意到Paypal Payflow Pro确实有定期计费功能,但我对它的工作原理有点不清楚.)

有关实施定期计费的最佳方法/服务/网关的建议吗?如果可能的话,我更希望避免保留信用卡号码的本地记录以便重复处理.

在此先感谢您的帮助.

paypal credit-card payment-gateway e-commerce recurring-billing

5
推荐指数
2
解决办法
6079
查看次数

解码来自信用卡读卡器的音频

我有一个信用卡读卡器从我的银行插入麦克风插孔,他们提供Android和MacOS的应用程序以这种方式接收付款.我没有任何这些系统,也没有接受付款的需要,但我对这个设备感到好奇.我可以在笔记本电脑上录制声音.那么:是否有可以解码此信号的Linux程序?

linux audio credit-card

5
推荐指数
1
解决办法
4007
查看次数

什么是MAPP协议来获取已过帐的交易?

我有一些已有15年历史的代码,可以通过POTS进行 MAPP(万事达卡自动销售点计划)信用卡交易以及带有主机数据捕获(而不是终端数据捕获)的调制解调器。它实现:获得批准(操作码#08),批准后(#60),出售(#10),退款(#30)和无效(#50)交易。我记得,MAPP还允许为给定的检索号或整批检索数据。为了进行验证,我需要实现一个或另一个(获取事务或批处理)。对于给定的检索号码,取卡和金额就足够了。但是,我再也找不到“ 60-M08V3.0 / 1096销售点规格和认证程序”的副本,并且该文档似乎不在网络上任何地方。我猜想通过检索编号进行提取将需要诸如TERMINALID,ASCII FS,OPCODE,ASCII FS,RETRIEVAL,ASCII ETX之类的东西(或者批准编号也位于其中)。

提取先前发布的交易或一批交易(通过检索号和/或批准号)以获取合适的协议是什么?网络上是否有60-M08V3.0 / 1096的副本或协议的适用部分?

modem specifications transactions protocols credit-card

5
推荐指数
1
解决办法
163
查看次数

EMV:从ICC获取CVV代码?

我正在测试EMV读卡器,我已经完成了此处此处所示的步骤,但我找不到一种方法来了解是否有可能获得我可能需要的卡验证值(CVV)代码联系商家服务器.

为了获得这个价值,有人有一些链接或解释吗?

PS:我还检查了EMV 规范中的EMV书籍,CVV/CVC这些词甚至都没有!

credit-card emv

5
推荐指数
1
解决办法
4030
查看次数

适用于java的信用卡验证器

我需要进行信用卡号码验证.

当我用Google搜索时,我找到了org.apache.commons.validator.CreditCardValidator.但似乎它无法正常工作.当我传递一个非数字字符时,它也是真实的.

Apache CreditCardValidator的代码:

String ccNumber = "378282246310005";
CreditCardValidator creditCardValidator = new CreditCardValidator();
if(!creditCardValidator.isValid(ccNumber)) throw new Exception("Credit Card Number is not a valid one!");
Run Code Online (Sandbox Code Playgroud)

然后,我根据卡片类型和卡号(使用luhn算法)编写了以下方法来验证信用卡号码.

CardType验证器(如果卡类型无效,则为null)

public String getCCType(String ccNumber){

        String visaRegex        = "^4[0-9]{12}(?:[0-9]{3})?$";
        String masterRegex      = "^5[1-5][0-9]{14}$";
        String amexRegex        = "^3[47][0-9]{13}$";
        String dinersClubrRegex = "^3(?:0[0-5]|[68][0-9])[0-9]{11}$";
        String discoverRegex    = "^6(?:011|5[0-9]{2})[0-9]{12}$";
        String jcbRegex         = "^(?:2131|1800|35\\d{3})\\d{11}$";
        String commonRegex      = "^(?:4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|6(?:011|5[0-9][0-9])[0-9]{12}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\\d{3})\\d{11})$";

        try {
            ccNumber = ccNumber.replaceAll("\\D", "");
            return (ccNumber.matches(visaRegex) ? "VISA" : ccNumber.matches(masterRegex) ? "MASTER" :ccNumber.matches(amexRegex) ? "AMEX" :ccNumber.matches(dinersClubrRegex) ? …
Run Code Online (Sandbox Code Playgroud)

java validation credit-card

5
推荐指数
1
解决办法
8536
查看次数

EMV:第二次在6985中生成AC结果SW_Error访问条件不满足

我正在做一些EMV测试,希望有人可以阐明我所看到的内容。我正在运行适用于我们解决方案的万事达卡M-TIP测试,并且看到一些意外结果。使用M-TIP 50测试卡运行M-TIP 50测试(1、2、3)时,在第二个GENERATE_AC命令上出现错误。从技术上讲,我们的解决方案被定义为具有在线功能的脱机,但是我们目前正在完全脱机的环境中进行测试。

我花了很多时间阅读EMV书籍并搜寻Google,但我仍然不明白为什么它会返回6985。我现在能想到的最好猜测是,它与CDA有关(在这个过程中也应该发生?)

我已经包含了第一和第二个GEN_AC请求和响应,以显示正在发生的事情。如果有人可以洞悉正在发生或正在发生的事情,我将不胜感激。

在此处输入图片说明

    1st Generate AC (ARQC)
  Request : 80 AE 90 00 2F 00 00 00 00 20 00 00 00 00 00 00 00 00 80 00 80 00 08 26 17 01 03 00 B0 32 0F C0 22 00 00 00 00 00 00 00 00 00 00 44 03 02 16 11 12 60 00 80
    Class    :80
    Ins      :AE
    P1       :90
    P2       :00
    Lc       :2F
    Data     :00 00 00 00 20 00 …
Run Code Online (Sandbox Code Playgroud)

payment credit-card emv mastercard

5
推荐指数
2
解决办法
2073
查看次数