我正在开展一个项目,我们使用信用卡/借记卡/ PayPal付款向用户收取付款.
该服务代表第三方组织从用户处付款.一旦我们收取付款,减去费用,我们希望将金额转移到组织银行帐户.
目前,我们可以做的是使用网上银行BACS银行转账支付给组织.
但我想知道是否有办法使用API自动执行此操作.
如果我们需要在转账之前以某种方式注册第三方银行账户的详细信息,这很好.我们只想自动完成整个过程,因为转移是一个手动步骤.
我可以使用任何网关或API吗?在英国?
一整天都在谷歌搜索,阅读大量的PDF文件,并且仍然对从Westpac(澳大利亚的一家银行)向Payway系统发送数据的概念感到困惑.它们通过API提供访问权限,但也通过他们称之为"NET"的方式提供访问权限.
我理解的方式是,当客户想要在我的网站上付款时,如果是NET,客户端会进入页面(由银行托管或由我托管),其中提供表单以输入信用卡信息详细信息.然后,此表单通过正常的POST调用提交到Payway的特定https地址.然后处理它,浏览器返回到我指定的URL,作为我在隐藏字段中发送的参数之一.
如果API故事类似,那么用户收到表单,填写数据然后数据发送到我的后端(不是Payway).然后我的后端使用提供的数据调用payway API,一旦收到回复,就会向客户端返回确认页面.
我的理解是对的吗?请解释,因为我有一种感觉,我错过了一些基本的东西.
我有一个计费例程,它使用Paypal的Website Payments Pro中的定期计费配置文件.此例程使用paypal profileid和GetRecurringPaymentsProfileDetails方法成功创建配置文件并在创建后获取配置文件信息.
但是,当我尝试使用UpdateRecurringPaymentsProfile方法仅更新配置文件上的AMOUNT/AMT时,我收到此错误:
[ERRORCODE] => 10001
[SHORTMESSAGE] => Internal Error
[LONGMESSAGE] => Internal Error
[SEVERITYCODE] => Error
Run Code Online (Sandbox Code Playgroud)
以下是我要传递的字段:
[NOTE] => A note here
[PROFILEID] => redacted
[AMT] => 7
[VERSION] => 62.0
[USER] => redacted
[PWD] => redacted
[SIGNATURE] => redacted
[METHOD] => UpdateRecurringPaymentsProfile
Run Code Online (Sandbox Code Playgroud)
故障排除步骤
我遇到了一个不太具描述性的错误.Paypal文档不包含针对此类一般错误的任何疑难解答提示.
我在网上看到Paypal中有一个终端用于排除故障,但我不确定它们是否仅仅意味着沙箱中的创建配置文件屏幕,或者是否有其他内容.
您有解决此错误的任何提示吗?
所以我知道有很多关于存储信用卡信息的帖子.我们正在构建一个移动应用程序,并希望人们能够输入一次卡片信息,而不是每次购买.
我们查看了Authorize.net CIM,它似乎是一个理想的解决方案(我们只存储一个返回信用卡号的个人资料ID或令牌)......但它可能达不到我们的需求,因为信用卡信息不是由authorize.net处理(必然),但我们也通过任何商家帐户处理付款.换句话说,我们希望存储信用卡信息,如钱包......不一定每次都与Authorize.net一起处理.
阅读CIM XML文档(p.94),看起来getCustomerPaymentProfileResponse掩盖了信用卡返回数据...所以我不知道如果数据被屏蔽,这对处理有什么用呢?
我们确实有其他一些实施方案,但我真的希望有一种基于网络的方式让客户管理他们的支付账户.有没有人知道存储信用卡数据的任何方法,可以根据需要调用这些数据传递给任何给定商家的处理器?
编辑4.28.2011 - 我正在用这个打墙.如果我们根本不存储信用卡信息,让客户输入然后通过它怎么办...我们如何安全地做到这一点?不存储它,传递HTTPS,在传输过程中加密卡数据?
我是在线支付新手,想对我的任务有一些看法.这是场景:
我有一个人们买卖数码照片的网站.卖家有照片并想要出售.他们在网站上制作广告并将照片上传到网站数据库中.寻找照片的买家来到网站购买.买方支付要价金额,然后可以下载照片.作为中间人,我想向卖方收取费用或销售价格的百分比.买方不应支付任何网站费用,只需支付销售价格.
我的问题是 - 最好的方法是什么?我不是故意的,但我应该看一下什么服务?据我所知,PayPal因其收费结构而无法工作.我告诉亚马逊付款可以工作,但它是一种黑客攻击.卖家必须建立一个商业帐户,然后将他们的商品绑定到我的网站作为第三方销售场所.是否有一种轻松的方式来完成我想要做的事情?当然,保持低廉的费用是可能的.
任何机构都可以帮助我了解如何在php网站中集成migs (MasterCard虚拟支付客户端)!
我已经阅读了参考指南,但它没有用!
我希望通过SEPA将钱从一个银行账户转移到另一个银行账户 - 来自一个应用程序.
该应用程序需要以其资金转移的银行账户的名义转移资金 - 即某些第三方网关不会这样做.
注意:我读过这篇SO文章如何使用银行转账(BACS)以电子方式将资金转账到另一个账户,我的要求是相同的 - 即事先手动注册收款人是可以接受的.
我在Magento Stackexchange上问过这个问题没有任何成功,因此我现在在这里问.
我正在使用Magento Community Edition 1.9.0.1并正确创建并注册了我的模块,但我似乎无法检测出运输方法.基本上,如果选择统一费率或免费送货,我想隐藏货到付款.这是我的观察者类的代码:
class Kol_PaymentToggle_Model_Observer
{
public function paymentMethodIsActive(Varien_Event_Observer $observer) {
$event = $observer->getEvent();
$method = $event->getMethodInstance();
$result = $event->getResult();
$quote = $observer->getEvent()->getQuote();
$shippingMethod = $quote->getShippingAddress()->getShippingMethod();
if($shippingMethod == "standardshipping" || $shippingMethod == "free") {
if($method->getCode() == 'cashondelivery' ) {
$result->isAvailable = false;
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
我猜我没有使用正确的运输方式代码名称或付款方式代码名称,但我不确定.有人有什么建议吗?
编辑: 我只启用了3种送货方式:
编辑2:config.xml的 输出
<?xml version="1.0"?>
<config>
<modules>
<Kol_PaymentToggle>
<version>0.0.1</version> …Run Code Online (Sandbox Code Playgroud) 尝试使用Braintree设置iOS和PHP支付系统.
我可以设置一个clientToken
$clientToken["client_token"] = Braintree_ClientToken::generate());
return ($clientToken);
Run Code Online (Sandbox Code Playgroud)
我可以处理第一笔付款:
$result = Braintree_Transaction::sale(array(
'amount' => '1',
'paymentMethodNonce' => $nonce,
'customer' => array(
'id' => 'testId',
'firstName' => 'John',
'lastName' => 'Doe',
'email' => 'john@doe.com',
),
'options' => array(
'submitForSettlement' => true,
'storeInVaultOnSuccess' => true,
)
));
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试处理第二笔付款时,我收到错误消息:
91609 – Customer ID has already been taken.
Run Code Online (Sandbox Code Playgroud)
如何使用相同的customerId('testId')处理同一客户的第二笔付款 - 当我尝试使用现有客户ID传递付款时,为什么会抛出错误?当然它应该只是将付款附加到同一个客户?这不是它的用途吗?
编辑:所以在环顾四周之后,我发现了另一个字段,我可以在Braintree_Transaction :: sale中包含如下:
'customerId' => 'testId',
Run Code Online (Sandbox Code Playgroud)
因此,这将允许我重新使用存储在Braintree保险库中的customerId.但是,对于第一次交易我得到错误:
91510 – Customer ID is invalid.
Run Code Online (Sandbox Code Playgroud)
所以我最终得到了一个问题 - 我可以使用第一组代码为新客户而不是重复客户,我可以使用第二组代表重复客户但不是新客户.我不能同时使用它们.所以我的解决方案是创建我自己的本地数据库条目,确定用户之前是否通过braintree付款并且代替了代码.有更简化的方法吗?
所以我需要将Android Pay集成到我正在处理的应用程序中.应用程序中的此选项仅适用于美国用户,但我在英国并且很难尝试测试我的实施.我使用沙盒Stripe帐户atm作为支付处理器.
一旦我按下"使用Android Pay付款"按钮,我会弹出一个"要使用Android Pay购物,请在Android Pay应用中设置您的卡".现在Android Pay应用程序在美国境外不可用,所以我已经侧载了它,但是一旦我尝试添加卡就崩溃了.在快速谷歌之后,似乎这种崩溃是应用程序说它在美国以外不受支持..(很棒的UX顺便说一句)
我还尝试将其中一张卡片https://developers.google.com/android-pay/test-flows添加到我的Google帐户,但它们不会显示在Android Pay应用中.
我试图对此进行测试有点失落,看起来非常像谷歌忽视了美国以外的开发者希望在他们的应用程序中为美国客户实现这一点的事实.
有没有人对我如何测试这个有任何想法?
(顺便说一句,我正在测试一只股票,无法运行的Nexus 5运行Marshmallow.我也试图欺骗我的位置无济于事.)
编辑:发言到Android Pay支持谁告诉我没有机制在美国以外的国家进行测试.他们说它检查你的IP地址以确定位置,这就是为什么GPS欺骗不起作用但它似乎代理也不起作用,除非任何人已经破解了这种方式,看起来当他们说美国时他们只是指美国 - 包括发展:|
payment ×10
bank ×3
php ×3
api ×2
credit-card ×2
paypal ×2
android ×1
android-pay ×1
braintree ×1
e-commerce ×1
integration ×1
magento ×1
pci-dss ×1
shipping ×1
transfer ×1