2013-03-26 113 views
0

我使用PayPal Express Checkout SOAP服务。例如下面的代码的下调版本退房时将用户重定向到PayPal沙箱:PayPal Express Checkout SOAP API:退款

var client = new PayPalAPIAAInterfaceClient(); 

var credentials = new CustomSecurityHeaderType() { 
    Credentials = new UserIdPasswordType() { ... } 
}; 

var paymentDetails = new PaymentDetailsType() { 
    OrderTotal = new BasicAmountType() { 
     Value = string.Format("{0:0.00}", 100m) 
    } 
}; 

var request = new SetExpressCheckoutReq() { 
    SetExpressCheckoutRequest = new SetExpressCheckoutRequestType() { 
     SetExpressCheckoutRequestDetails = new SetExpressCheckoutRequestDetailsType() { 
      PaymentDetails = new PaymentDetailsType[] { paymentDetails }, 
      CancelURL = "http://www.mysite.com" + Url.Action("Cancelled", "PayPalCheckout"), 
      ReturnURL = "http://www.mysite.com" + Url.Action("Index", "PayPalCheckout") 
     }, 
     Version = "60.0" 
    } 
}; 

var response = client.SetExpressCheckout(ref credentials, request); 

return Redirect(string.Format("{0}?cmd=_express-checkout&token={1}", "https://www.sandbox.paypal.com/cgi-bin/webscr", response.Token)); 

我再处理数据,当用户返回到RETURNURL。这是从我在另一个网站上找到的一些代码中提取的。

我现在需要向我的网站添加退款设施。我想知道是否有其他人这样做?我试过在线搜索,但似乎无法找到任何有用的东西。我也尝试过自己做,但API不太直观。

我会很感激的帮助。谢谢

回答

0

它只需要一个RefundTransaction API调用,你需要执行。您是否试图根据条件退还您的退货页面,或者您是否尝试创建GUI类型的界面以允许某人为交易发放退款?您是否在PayPal提供的SDK's内查看过代码示例?你应该可以使用这个代码。

+0

感谢我使用的SOAP服务没有RefundTransaction方法。我下载了SDK并使用它,并且一切正常。 – nfplee 2013-03-27 11:55:29

相关问题