c# - 此商家已禁用 DPRP。 Paypal 错误

标签 c# .net paypal

我正在尝试使用付款方式创建结算协议(protocol):信用卡。

这是我的代码:

public void CreateBillingAgreement()
{

   var config = ConfigManager.Instance.GetProperties();     
   var accessToken = new OAuthTokenCredential(config).GetAccessToken();    
   var apiContext = new APIContext(accessToken);

//注意:信用卡支付的账单协议(protocol)在创建时自动执行。用户无需同意协议(protocol)或执行协议(protocol)。

        var credit_card = new CreditCard()
                   {
                       billing_address = new Address()
                       {
                           city = "Johnstown",
                           country_code = "US",
                           line1 = "52 N Main ST",
                           postal_code = "43210",
                           state = "OH"
                       },
                       cvv2 = "874",
                       first_name = "Test",
                       last_name = "abc",
                       expire_month = **,
                       expire_year = ****,
                       number = "********",

                       type = "visa"
                   };

        List<FundingInstrument> funding_instruments = new List<FundingInstrument>();
        var fund = new FundingInstrument
        {
            credit_card = credit_card
        };
        funding_instruments.Add(fund);
       var  payer = new Payer
            {
                payment_method = "credit_card",
                funding_instruments = funding_instruments
            };

       var shipping_address = new ShippingAddress
       {
           line1 = "1234",
           city = "California",
           state = "California",
           postal_code = "95070",
           country_code = "US"
       };
       string Date = DateTime.Now.ToString("yyyy-MM-ddTHH:MM:ssZ");

        //Make API call
       var agreement = new Agreement
       {
           name = "T-Shirt of the Month Club Agreement",
           description = "Agreement for T-Shirt of the Month Club Plan",
           start_date = Date,
           plan = new Plan
           {
               id = "P-*****************" 
           },
           payer = payer,
           shipping_address = shipping_address
       };
       var CreateExecuteAgreement = agreement.Create(apiContext);

但是得到这个错误,

//{"name":"DPRP_DISABLED","message":"DPRP is disabled for this merchant.","information_link":"https://developer.paypal.com/webapps/developer/docs/api/#DPRP_DISABLED","debug_id":"********"} }

最佳答案

DPRP = DirectPayment 定期付款。这是非常具体的。

要使用它,您需要使用“PayPal Website Payments Pro 3.0”,您通常会在其中使用 DoDirectPayment API 来处理信用卡,即 30 美元/月。

最重要的是,您需要添加定期付款,然后您将使用直接包含信用卡详细信息的 CreateRecurringPaymentsProfile API(这一定是您正在使用的此 SDK 正在做的事情)。这被认为是 DPRP,这是在 Pro 费用之上的额外 30 美元/月。

许多人感到困惑,因为如果您注册“Payments Pro Recurring Billing”,他们可能会将您置于 PayFlow 版本,在这种情况下,您需要使用 PayFlow API 而不是 DoDirectPayment/CreateRecurringPaymentsProfile。

因此,您需要做的第一件事是确定您使用的是哪个版本的 Payments Pro,然后验证您是否在此基础上启用了定期付款/计费。

关于c# - 此商家已禁用 DPRP。 Paypal 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35717702/

相关文章:

c# - ReflectionOnly 加载上下文的问题

php - 在成功的 Paypal 自适应支付 PHP 后获取交易 ID

c# - 拆分 CamelCase

c# - 连接打开时 Firebase SSE 发送整个 json 文件

.net - 使用路由 ID 值的 ASP.NET MVC 3 模型 ID

.net - 用户模式 ​​.NET 设置存储在哪里?

paypal - 如何从 PayPal 中删除或修改货币列表?

快速结帐中的 Paypal 和自定义按钮

c# - 匿名类型,什么时候有用?

c# - FormatException 0 不是 bool 值的有效值