【发布时间】:2014-03-28 04:27:26
【问题描述】:
我正在尝试将 paypal rest api 集成到我的 Web 应用程序中。在挖掘了所有可用的资源之后,我被卡住了。
我正在使用此处的 paypal rest api 示例: GitHub-PayPal-DotNet-Sample
我将 nuget 更新为最新的 sdk 版本,并用我自己的实时密钥替换了 cliendId 和 secret。
现在我的问题是,我总是选择“credit_card”,我得到一个 401 错误响应:
{ "name": "UNAUTHORIZED_PAYMENT", "message": "未经授权的支付", "information_link": "https://developer.paypal.com/webapps/developer/docs/api/#UNAUTHORIZED_PAYMENT", “debug_id”:“1d25a990be5db” }
出于测试目的,我将货币设置为“CHF”(应用程序在瑞士运行),金额设置为“0.05”。我还检索了一个有效的访问令牌!
尝试了各种信用卡,有些属于我的商家帐户有些不属于我的商家帐户,仍然是同样的错误。
使用“paypal”选项似乎可以使用,但我想直接在应用程序中提供信用卡。
瑞士没有什么东西吗?对这个问题有什么建议吗?我是不是忽略了什么?
提前致谢!
示例代码:
Payment pay = null;
Amount amount = new Amount();
amount.currency = "CHF";
amount.total = "0.05";
Transaction transaction = new Transaction();
transaction.amount = amount;
transaction.description = orderDescription;
List<Transaction> transactions = new List<Transaction>();
transactions.Add(transaction);
FundingInstrument fundingInstrument = new FundingInstrument();
CreditCardToken creditCardToken = new CreditCardToken();
creditCardToken.credit_card_id = GetSignedInUserCreditCardID(email);
fundingInstrument.credit_card_token = creditCardToken;
List<FundingInstrument> fundingInstrumentList = new List<FundingInstrument>();
fundingInstrumentList.Add(fundingInstrument);
Payer payer = new Payer();
payer.funding_instruments = fundingInstrumentList;
payer.payment_method = paymntMethod.ToString(); //credit_card
Payment pyment = new Payment();
pyment.intent = "sale";
pyment.payer = payer;
pyment.transactions = transactions;
pay = pyment.Create(AccessToken);
return pay;
【问题讨论】:
标签: c# asp.net api rest paypal