使用信用卡令牌rest api paypal

时间:2017-02-07 16:02:43

标签: rest api paypal credit-card

我正在尝试使用PayPal付款支付保险柜。 我正在关注此https://developer.paypal.com/docs/integration/direct/vault/#store-credit-card

我打电话给: https://api.sandbox.paypal.com/v1/payments/payment

{
  "id":"CPPAY-13U4fds67758H032001PKPIFQZI",
  "intent":"sale",
  "payer":{
  "payment_method": "credit_card",
  "funding_instruments":[
      {
        "credit_card_token":{
        "credit_card_id":"CARD-3S3021595U985430TLCM4HLA"
        }
     }
]
},
"transactions": [
    {
      "amount":
      {
        "total": "1.00",
        "currency": "USD"
      },
      "description": "Testando pagamento cartao Vault."
    }]
}

但是我收到了这条消息:

{
  "name": "UNKNOWN_ERROR",
  "message": "An unknown error occurred.",
  "information_link": "https://developer.paypal.com/webapps/developer/docs/api/#UNKNOWN_ERROR",
  "debug_id": "64f99d6ec2b1f"
}

2 个答案:

答案 0 :(得分:0)

首先检查CardID有效性。该卡ID是否已过期或仍然有效。

如果有效,那么您卡ID 就像" CARD-1E9132746P400060DLCNN6WY"

并将该卡ID传递给信用卡令牌。

$creditCardToken = new CreditCardToken();
$creditCardToken->setCreditCardId($credit_card_id);
$fi = new FundingInstrument();
$fi->setCreditCardToken($creditCardToken);
$payer = new Payer(); 
$payer->setPaymentMethod("credit_card");
$payer->setFundingInstruments(array($fi));

我认为你的错误是由我上面代码的最后一行引起的 请使用数组投资资金工具对象,您将解决您的错误。 更改您的代码如下

<强> $ payer-&GT; setFundingInstruments(阵列($ FI));

答案 1 :(得分:0)

来自商家技术支持:

  

请您使用此网址中的卡片   getcreditcardnumbers.com?获取卡样本并存储在保险库中。   然后,尝试从存储的卡中制作支付API。除了,   请确保您的沙盒帐户必须是美国,英国或   加拿大帐户。这是因为目前只有直接信用支付   适用于这三个国家。我希望这能解决这个问题。   如果问题仍然存在或你有问题,请务必告诉我   其他询问。

我用另一个卡号做了另一个保险库并且它有效!