我正在尝试使用JSON API,以便通过ADYEN进行(测试)付款。
这是代码(我从Github-> Adyen-> adyen-php-sample-code获得了这个示例:
<?php
/**
* Create Payment through the API (HTTP Post)
*
*
* Please note: using our API requires a web service user. Set up your Webservice
* user: Adyen Test CA >> Settings >> Users >> ws@Company. >> Generate Password >> Submit
*
* @author Created by Adyen - Payments Made Easy
*/
/**
* A payment can be submitted by sending a PaymentRequest
* to the authorise action of the web service, the request should
* contain the following variables:
*
* - merchantAccount: The merchant account the payment was processed with.
* - amount: The amount of the payment
* - currency: the currency of the payment
* - amount: the amount of the payment
* - reference: Your reference
* - shopperIP: The IP address of the shopper (optional/recommended)
* - shopperEmail: The e-mail address of the shopper
* - shopperReference: The shopper reference, i.e. the shopper ID
* - fraudOffset: Numeric value that will be added to the fraud score (optional)
* - card
* - expiryMonth: The expiration date's month written as a 2-digit string, padded with 0 if required (e.g. 03 or 12).
* - expiryYear: The expiration date's year written as in full. e.g. 2016.
* - holderName: The card holder's name, aas embossed on the card.
* - number: The card number.
* - cvc: The card validation code. This is the the CVC2 code (for MasterCard), CVV2 (for Visa) or CID (for American Express).
* - billingAddress: we advice you to submit billingAddress data if available for risk checks;
* - street: The street name
* - postalCode: The postal/zip code.
* - city: The city
* - houseNumberOrName:
* - stateOrProvince: The house number
* - country: The country
*/
$request =array(
"merchantAccount" => "[YourMerchantAccount]",
"amount" => array(
"currency" => "EUR",
"value" => "199"
),
"reference" => "TEST-PAYMENT-" . date("Y-m-d-H:i:s"),
"shopperIP" => "2.207.255.255",
"shopperReference" => "YourReference",
"billingAddress" => array(
"street" => "Simon Carmiggeltstraat",
"postalCode" => "1011DJ",
"city" => "Amsterdam",
"houseNumberOrName" => "6-60",
"stateOrProvince" => "NH",
"country" => "NL"
),
"card" => array(
"expiryMonth" => "08",
"expiryYear" => "2018",
"holderName" => "Test Card Holder",
"number" => "4111111111111111",
"cvc" => "737"
),
"browserInfo"=>array(
"acceptHeader"=>$_SERVER['HTTP_USER_AGENT'],
"userAgent"=>$_SERVER['HTTP_ACCEPT']
)
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://pal-test.adyen.com/pal/servlet/Payment/v25/authorise");
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC );
curl_setopt($ch, CURLOPT_USERPWD, "YourWSUser:YourWSUserPassword");
curl_setopt($ch, CURLOPT_POST,count(json_encode($request)));
curl_setopt($ch, CURLOPT_POSTFIELDS,json_encode($request));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER,array("Content-type: application/json"));
$result = curl_exec($ch);
if($result === false)
echo "Error: " . curl_error($ch);
else{
/**
* If the payment passes validation a risk analysis will be done and, depending on the
* outcome, an authorisation will be attempted. You receive a
* payment response with the following fields:
* - pspReference: The reference we assigned to the payment;
* - resultCode: The result of the payment. One of Authorised, Refused or Error;
* - authCode: An authorisation code if the payment was successful, or blank otherwise;
* - refusalReason: If the payment was refused, the refusal reason.
*/
print_r(json_decode($result));
}
curl_close($ch);
?>
有人遇到过这个问题吗?我该如何解决?
我已经在github中使用了几乎所有示例,但是仅记录了一些错误,其余的都没有。
请帮我。谢谢
参考方案
当您的用户无权处理原始卡详细信息时,通常会发生此问题。处理原始卡信息需要完全符合PCI(SAQ D)。如果是您,请联系[email protected],请求在您的帐户上启用该权限。
如果没有,您可以使用Adyen的CSE解决方案。 Docs here。 PHP example here。
Div单击与单选按钮相同吗? - php有没有一种方法可以使div上的click事件与表单环境中的单选按钮相同?我只希望下面的div提交值,单选按钮很丑代码输出如下:<input id="radio-2011-06-08" value="2011-06-08" type="radio" name="radio_date…
PHP:如何从JSON数组获取属性? - php我有以下JSON数组:使用PHP,如何从上面的JSON数组中获取geometery->location->lat&lng值?例如(伪代码):<?php $json = { "status": "OK", "results": [ { "types": [ …
使用Ajax呈现html表 - php我想知道如何实现以下项目其实我有一个php代码,可以渲染一张桌子<table id = "oldata" class ="table table-bordered"> <thead> <tr class ="success"> <th class="…
提交表单后显示模式对话框 - php提交下载文件后,我有一张表格。我要自动而不是自动下载文件..以显示模态对话框并显示下载链接。<form name="softwareform" id="softwareform" action="../downloadlink.php" method="POST" alig…
将输入类型复选框关联到输入类型文本 - php我有一个问题,我需要将输入类型复选框与输入类型文本关联。情况如下:从数据库中提取数据。 PK数据是复选框的值。当复选框选择输入类型的文本时,您可以在其中输入特定数字。现在的问题是,选中所有类型的复选框输入文本都会被激活。我希望通过选择复选框输入,仅启用与复选框相关联的输入。我的HTML代码(此代码创建一个输入复选框,并为数据库中的每个记录输入文本,而我要激活…