【发布时间】:2014-11-20 08:14:23
【问题描述】:
我想通过 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 后,我可以在不转到网址并手动批准的情况下批准/发送付款吗?
【问题讨论】: