问题描述
根据贝宝(Paypal)的文档,您可以支付订单之类的费用,但是我不知道是否可以使用Android SDK发送此类请求(以下链接):
curl -v -X POST https://api.sandBox.paypal.com/v1/checkout/orders \
-H "Content-Type: application/json" \
-H "Authorization: Bearer Access-Token" \
-H "PayPal-Partner-Attribution-Id: EXAMPLE_MP" \
-d '{
"purchase_units": [
{
"reference_id": "store_mobile_world_order_1234","description": "Mobile World Store order-1234","amount": {
"currency": "USD","details": {
"subtotal": "1.09","shipping": "0.02","tax": "0.33"
},"total": "1.44"
},"payee": {
"email": "seller@example.com"
},"items": [
{
"name": "NeoPhone","sku": "sku03","price": "0.54","currency": "USD","quantity": "1"
},{
"name": "fitness Watch","sku": "sku04","price": "0.55","quantity": "1"
}
],"shipping_address": {
"line1": "2211 N First Street","line2": "Building 17","city": "San Jose","country_code": "US","postal_code": "95131","state": "CA","phone": "(123) 456-7890"
},"shipping_method": "United Postal Service","partner_fee_details": {
"receiver": {
"email": "partner@example.com"
},"amount": {
"value": "0.01","currency": "USD"
}
},"payment_linked_group": 1,"custom": "custom_value_2388","invoice_number": "invoice_number_2388","payment_descriptor": "Payment Mobile World"
}
],"redirect_urls": {
"return_url": "https://example.com/return","cancel_url": "https://example.com/cancel"
}
}'
Ps。似乎getStuffToBuy()
(第83行)可以发出此请求,但我不确定是否可以发出请求
purchase_units: [
{
reference_id: another field,description: 'Hello World',amount: {
currency_code: 'MXN',value: "100.00"
}
}
]
Android SDK:
PayPal的文档:
https://developer.paypal.com/docs/api/orders/v1/
非常感谢!
解决方法
Android SDK已过时,下个月将终止。
如果您要使用本机SDK处理PayPal付款,请使用Express Checkout via the Braintree SDK
要进行身份验证,请使用服务器上https://www.paypal.com/signin?intent=developer&returnUri=https%3A%2F%2Fdeveloper.paypal.com%2Fdeveloper%2Fapplications底部的沙盒访问令牌,然后将客户端令牌返回给客户端。 (生产访问令牌https://www.paypal.com/api)
请勿创建Braintree网关帐户,也不要使用braintreegateway.com的网关凭据。不要使用令牌化密钥。
对于非本地付款,也不应使用链接到的订单v1文档。使用订单v2 https://developer.paypal.com/docs/checkout/reference/server-integration/