あなたは簡単な解決策を見つけることができましたか?私はこれも探しています。ありがとう!
更新:検索後、「ManageRecurringPaymentsProfileStatus」は簡単なPOSTリクエストを通じて使いやすいです。
ユーザー、パスワード、または署名が表示されていないことを確認してください(つまり、サーバーでこれを行い、javascriptまたはhtml投稿でクライアントには表示しないでください)。
以下は、Pythonでの簡単な使用例です。それは動作し、私は今毎日それを使用しています。
import urllib
from google.appengine.api import urlfetch
form_fields = {
"METHOD": "ManageRecurringPaymentsProfileStatus",
"PROFILEID": "xxx", # put your subscription ID here
"ACTION": "cancel",
"USER": "xxx", # Get USER, PWD, and SIGNATURE from your Paypal's account preferences
"PWD": "xxx",
"SIGNATURE": "xxx",
"VERSION": "54.0"
}
api_url = 'https://api-3t.sandbox.paypal.com/nvp' # remove the sandbox part for production
form_data = urllib.urlencode(form_fields)
result = urlfetch.fetch(url=api_url,
payload=form_data,
method=urlfetch.POST,
headers={'Content-Type': 'application/x-www-form-urlencoded'})
応答は次のようになります文字列です。
TIMESTAMP = 2011パーセント2d01%2d28T14%3a47%3a45Z &にCorrelationID = 148ebe1d25566 & ACK =失敗& VERSION = 54%の2E0 & BUILD = 1704252 & L_ERRORCODE0 = 11552 & L_SHORTMESSAGE0 =無効%20profile%20ID & L_LONGMESSAGE0 =%20profile%20ID%20is%20invalid & L_SEVERITYCODE0 =エラー
「ACK」フィールドは、「失敗」または「成功」を示します。私は旗」を使用していない
<a href="https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_xclick-subscriptions&business=llcpro_1295263400_biz%40jeregle.com&item_name=Abonnement%20mensuel&a3=41.86&t3=M&p3=1&src=1&sra=1¤cy_code=EUR&no_note=1&no_shipping=1&lc=FR&custom=xxxxx¬ify_url=https%3A%2F%2Fyournotifyurl.com%2Fipn&charset=utf-8&country=FR&a1=0&t1=D&p1=31" target="_blank">Subscribe</a>
注:以下のコメントに答えて
は、それのような動的に作成したリンクを介して作成されているサブスクリプションをキャンセルするために私を有効にないことに注意してください全く変更する。
"* Failure *"/"* Profile ID is invalid *"以外の返信を受け取ったことがありますか?私が発見した限りでは、このように(* CreateRecurringPaymentsProfile *を除いて)「通常」作成されたサブスクリプションをキャンセルすることはできません。サブスクリプションIDを置くと、(私にとっては)トリックはありません。 – nssmart
"サブスクリプションはウェブペイメントスタンダードの"購読 "ボタンで作成されます2009年以前はサブスクリプションプロファイルIDがS-XXXXXXXXで始まっていましたが、APIコールでこれらのサブスクリプションを管理することはできません。 I-XXXXXXを使用すると、ManageRecurringPaymentsProfileStatus APIコールを介してこれらのサブスクリプションをキャンセルすることができます。 同じ問題がありましたが、ちょうどRobertでそれを読んでいれば、APIを使用して標準のウェブサイトのサブスクリプションをキャンセルできます。 –
今は2012年です。今日までのすべての定期購読はSから始まり、キャンセル方法は使用できません。多分誰かが解決策を見つけましたか? – Tomas