2017-02-07 70 views
0

我想從PayPal付款使用付款庫。 我下面這個https://developer.paypal.com/docs/integration/direct/vault/#store-credit-card使用信用卡令牌休息api貝寶

我打電話: 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" 
} 
+0

你能告訴我你的代碼嗎? –

+0

http://paypal.github.io/PayPal-PHP-SDK/sample/doc/payments/CreatePaymentUsingSavedCard.html –

+0

我使用郵遞員從鉻,只是一個POST那裏 –

回答

0

首先檢查CardId中的有效性。該卡ID是否過期或仍然有效。

如果有效的,那麼你必須卡ID這樣「牌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-> setFundingInstruments(array($ fi));

+0

是的,它是有效的,我在此之前創建了一個卡ID –

0

從商家技術支持:

請你從這個網址,而不是 getcreditcardnumbers.com使用該卡?獲取卡片樣本並存儲在保管庫中。 之後,嘗試使用存儲卡製作付款API。此外, 請確保您的沙箱帳戶必須是美國,英國或 加拿大帳戶。這是因爲直接信用支付目前只有 這三個國家可用。我希望這能解決這個問題。 請務必讓我知道如果問題仍然存在或您有其他查詢 。

我用另一個卡號碼做了另一個保險櫃,它的工作!