簡體   English   中英

如何通過PayPal API發送一次性付款

[英]How to send a one-time payment via PayPal api

我想通過API向某人發送付款。 基本上,我想輸入該人的PayPal電子郵件地址和美元金額並將其發送。 沒有批准或任何東西。 到目前為止,這是我需要支付的款項:

headers = {
    "X-PAYPAL-SECURITY-USERID": PAYPAL_USERNAME,
    "X-PAYPAL-SECURITY-PASSWORD": PAYPAL_PASSWORD,
    "X-PAYPAL-SECURITY-SIGNATURE": PAYPAL_SIGNATURE,
    "X-PAYPAL-APPLICATION-ID": PAYPAL_APP_ID,
    "X-PAYPAL-SERVICE-VERSION": PAYPAL_SERVICE_VERSION,
    "X-PAYPAL-REQUEST-DATA-FORMAT": "NV",
    "X-PAYPAL-RESPONSE-DATA-FORMAT": "JSON",
}

params = OrderedDict()
params['requestEnvelope.errorLanguage'] = 'en_US'
params['actionType'] = 'PAY'
params['currencyCode'] = 'USD'
params['cancelUrl'] = 'https://example.com/'
params['returnUrl'] = 'https://example.com/'
params['receiverList.receiver.email'] = 'david@example.com'
params['receiverList.receiver.amount'] = '1.00'
res = requests.post(
    "https://svcs{}.paypal.com/AdaptivePayments/Pay/".format("" if settings.STAGE == "production" else ".sandbox"),
headers=headers, data=params
)

這將成功創建付款對象:

>>> data
{u'responseEnvelope': {u'ack': u'Success', u'timestamp': u'2014-11-19T23:52:50.500-08:00', u'build': u'13414382', u'correlationId': u'5fe166107b9e3'}, 
  u'paymentExecStatus': u'CREATED', u'payKey': u'AP-76K6303883448644B'}

那我如何才能在不登錄或任何其他方式的情況下“批准”付款,這可能嗎? 我嘗試執行以下操作,但是這引起了錯誤,即付款必須由發件人授權

params = OrderedDict()
params['requestEnvelope.errorLanguage'] = 'en_US'
params['payKey'] = 'AP-76K6303883448644B'
res = requests.post(
    "https://svcs{}.paypal.com/AdaptivePayments/ExecutePayment/".format("" if settings.STAGE == "production" else ".sandbox"),
headers=headers, data=params )
data = res.json()

一旦有了payKey ,我可以批准/發送然后付款,而無需進入URL並手動批准它?

如果您在此處指定senderEmail ,它將立即發起(“隱式”)付款:

params['senderEmail'] = 'sender@example.com'

這是更多信息的文檔: https : //developer.paypal.com/docs/classic/api/adaptive-payments/Pay_API_Operation/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM