【发布时间】:2013-12-31 16:48:35
【问题描述】:
您知道通用错误消息没有多大帮助。
我正在尝试让 Omnipay 与 Pin Payments 一起使用。
这是我目前所拥有的:
<?php
require 'vendor/autoload.php';
use Omnipay\CreditCard;
use Omnipay\Common\GatewayFactory;
$gateway = GatewayFactory::create('Pin');
$gateway->setSecretKey('KEY'); // TEST
$formData = ['number' => '4111111111111111', 'cvv' => '333','expiryMonth' => 6, 'expiryYear' => 2016];
$response = $gateway->purchase([
'email' => 'customer@customer.com.au',
'description' => 'Widgets',
'amount' => '49.99',
'currency' => 'USD',
'card_token' => 'card_nytGw7koRg23EEp9NTmz9w',
'testMode' => true,
'ip_address' => '203.192.1.172',
'card' => $formData
])->send();
if ($response->isSuccessful()) {
// payment was successful: update database
print_r($response);
} elseif ($response->isRedirect()) {
// redirect to offsite payment gateway
$response->redirect();
} else {
// payment failed: display message to customer
exit($response->getMessage());
}
echo $response->getMessage();
?>
这是我得到的错误: 一个或多个参数丢失或无效
任何帮助表示赞赏:)
【问题讨论】:
-
从文档来看,您的
$formData数组中缺少 CVV:github.com/omnipay/omnipay -
他 Scrowler ,谢谢你的回复,我已经在CVV中添加了。没有它,代码就可以工作,因为我没有从服务器收到任何关于 CVV 的消息。
-
您是否从 OmniPay 或 Pin Payments 收到该错误?
-
错误来自密码支付
-
试试
var_dump($response->getData())- 你能看到更具体的错误信息吗?