25
A
回答
26
是的。
您可以暫停或使用 ManageRecurringPaymentsProfileStatus API通過 取消輪廓。您也可以重新激活 暫停的配置文件。但是,如果已達到 失敗付款的最大數量 ,則在重新激活 配置文件之前,您將需要 來增加付款失敗 的數量。
請找this參考:
Accodring到PayPal,你可以採取任何的利用ManagerecurringPayments API三個動作。
- 取消 - 僅在活動中的配置文件或 暫停狀態可以取消。
- 掛起 - 只有在主動 狀態輪廓可以suspended.-
- 重新激活 - 在 暫停狀態,可以重新激活.--
3
「訂閱通過網站付款標準只能創建配置文件'訂閱'按鈕在2009年之前,訂閱配置文件ID以S-XXXXXXXX開頭,您無法通過任何API調用管理這些訂閱,2009年之後,訂閱配置文件ID以I-XXXXXX開頭,您可以取消通過ManageRecurringPaymentsProfileStatus API調用訂閱。「
如果遇到同樣的問題,只能通過Robert來閱讀它,它可以工作,您可以使用API取消標準網站訂閱。
0
5
在找到解決方案之前,我發現此線程,並認爲我會回來給出答案。 (C#。網絡解決方案)
您將需要以下的NuGet包:
Install-Package RestApiSDK
Install-Package PayPalCoreSDK
Install-Package PayPalMerchantSDK
而且以下參考:
using PayPal.Api;
using PayPal.PayPalAPIInterfaceService;
using PayPal.PayPalAPIInterfaceService.Model;
下面的代碼:
public static void CancelRecurringPayment(string ProfileID)
{
ManageRecurringPaymentsProfileStatusRequestType request =
new ManageRecurringPaymentsProfileStatusRequestType();
ManageRecurringPaymentsProfileStatusRequestDetailsType details =
new ManageRecurringPaymentsProfileStatusRequestDetailsType();
request.ManageRecurringPaymentsProfileStatusRequestDetails = details;
details.ProfileID = ProfileID;
details.Action = StatusChangeActionType.CANCEL;
// Invoke the API
ManageRecurringPaymentsProfileStatusReq wrapper = new ManageRecurringPaymentsProfileStatusReq();
wrapper.ManageRecurringPaymentsProfileStatusRequest = request;
Dictionary<string, string> configurationMap = new Dictionary<string, string>();
configurationMap.Add("mode", "live");
// Signature Credential
configurationMap.Add("account1.apiUsername", "APIUSERNAME");
configurationMap.Add("account1.apiPassword", "APIPASSWORD");
configurationMap.Add("account1.apiSignature", "APISIGNATURE");
// Create the PayPalAPIInterfaceServiceService service object to make the API call
PayPalAPIInterfaceServiceService service = new PayPalAPIInterfaceServiceService(configurationMap);
ManageRecurringPaymentsProfileStatusResponseType manageProfileStatusResponse =
service.ManageRecurringPaymentsProfileStatus(wrapper);
// Check for API return status
Dictionary<string, string> responseParams = new Dictionary<string, string>();
responseParams.Add("API Status", manageProfileStatusResponse.Ack.ToString());
if (manageProfileStatusResponse.Ack.Equals(AckCodeType.FAILURE) || (manageProfileStatusResponse.Errors != null && manageProfileStatusResponse.Errors.Count > 0))
{
//FAILURE
Console.WriteLine(manageProfileStatusResponse.Errors.ToString());
}
else
{
//SUCCESS
Console.Write("Success!");
}
Console.WriteLine();
}
+1
您的代碼非常好,並且重點突出。它幫助我解決了我的問題。謝謝。 – Sunil 2016-05-24 19:45:28
1
- 取消新I- *使用PayPals ManageRecurringPaymentsProfileStatus API進行訂閱。
- 使用PhantomJS +這個腳本取消舊S- *訂閱:http://blog.degree.no/2015/10/cancelling-old-s-paypal-subscriptions-from-code/
相關問題
- 1. paypal訂閱按鈕:付款通知
- 2. 如何通過API取消PayPal付款
- 3. 是否可以通過貝寶自適應付款API取消訂閱用戶?
- 4. 貝寶取消通過PayPal標準訂閱按鈕創建訂閱
- 5. PayPal:您如何通過權限API獲取付款通知?
- 6. Paypal訂閱/定期付款通過API更改資金來源
- 7. 您如何通過api取消PayPal訂閱?
- 8. 通過PHP自動化PayPal付款?
- 9. 通過PayPal實現付款自動化
- 10. 我們可以通過在鏈接上通過訂閱ID取消訂閱定期付款
- 11. PayPal通過Opencart訂閱按鈕發票
- 12. PayPal:通過IPN通過自適應付款API跟蹤用戶
- 13. 我們可以通過Facebook Graph API中的付款ID獲得訂閱ID嗎?
- 14. 通過PayPal帳戶創建定期付款的付款流程
- 15. 無法通過Paypal付款
- 16. PayPal定期付款(訂閱按鈕)付款響應
- 17. 條紋API PHP。通過subscription_id獲取訂閱的所有付款
- 18. 通過Paypal或Google Wallet更新訂閱付款
- 19. PayPal沙盒IPN訂閱付款沒有通過?
- 20. Angular 2通過按鈕訂閱/取消訂閱
- 21. 通過PayPal自動支付
- 22. 你如何通過api取消PayPal訂閱?
- 23. 跳過付款PayPal定期付款API
- 24. PayPal訂閱付款失敗
- 25. Paypal訂閱/定期付款
- 26. PayPal定期付款/訂閱
- 27. 如何使用Paypal客戶端rest api創建訂閱付款?
- 28. 在paypal中通過按鈕付款的實例
- 29. 需要您通過PHP上的PayPal API定期付款的建議
- 30. opencart支付通過PayPal取消
這不只是爲 「貝寶的Pro /快速支付」? OP正在討論常規的PayPal訂閱系統。 – erikcw 2011-09-16 15:51:04
爲我使用訂閱ID作爲配置文件ID。 – pat 2012-01-03 04:48:16
您不能使用API取消舊訂閱,如下面答案中所述。 – 2012-08-24 11:14:15