[英]PayPal Payout API not showing records in PayPal Developer Account Dashboard
我正在为我的一位客户整合 PayPal 支付。 他已经从他们那里获得了支付功能。 当我通过代码运行交易时,我得到了所需的响应,但不知何故,当我登录到 PayPal 沙盒帐户时,我无法看到交易。 我还指定了收款人的 Email 地址,所以我相信我也应该收到付款邮件。 所以问题是:
这是我为处理付款而编写的代码
Payout payout = new Payout
{
sender_batch_header = new PayoutSenderBatchHeader()
{
email_subject = "You recieved a payout!!",
recipient_type = PayoutRecipientType.EMAIL,
sender_batch_id = "batch_" + Guid.NewGuid().ToString().Substring(0, 8),
}
};
payout.items = new List<PayoutItem>();
payout.items.Add(new PayoutItem()
{
recipient_type = PayoutRecipientType.EMAIL,
amount = new Currency()
{
currency = "USD",
value = amountToBePaid.ToString(),
},
note = "Please check your email for details.",
sender_item_id = "item_" + Guid.NewGuid().ToString().Substring(0, 4),
receiver = "XXXXXXXXXX@gmail.com",
});
payout.items.Add(new PayoutItem()
{
recipient_type = PayoutRecipientType.EMAIL,
amount = new Currency()
{
currency = "USD",
value = amountToBePaid.ToString(),
},
note = "Please check your email for details.",
sender_item_id = "item_" + Guid.NewGuid().ToString().Substring(0, 4),
receiver = "XXXXXXXXXX@gmail.com",
});
var createdPayout = payout.Create(token, false);
var payoutBatch = Payout.Get(token, createdPayout.batch_header.payout_batch_id);
string status = payoutBatch.batch_header.batch_status;
string payoutItemId = payoutBatch.items[0].payout_item_id;
string payoutBatchId = payoutBatch.batch_header.payout_batch_id;
谁能告诉我我错过了什么? 任何指针将不胜感激
使用请求的日志更新。 API 请求:
{
"batch_header": {
"payout_batch_id": "XXX",
"batch_status": "PENDING",
"time_created": "2022-02-23T07:01:04Z",
"sender_batch_header": {
"sender_batch_id": "batch_9f63cf9a",
"email_subject": "You recieved a payout!!",
"recipient_type": "EMAIL"
},
"amount": {
"currency": "USD",
"value": "50.00"
},
"fees": {
"currency": "USD",
"value": "1.00"
}
},
"items": [
{
"payout_item_id": "XXX",
"transaction_status": "PENDING",
"payout_item_fee": {
"currency": "USD",
"value": "1.00"
},
"payout_batch_id": "XXX",
"payout_item": {
"recipient_type": "EMAIL",
"amount": {
"currency": "USD",
"value": "50.00"
},
"note": "Please check your email for details.",
"receiver": "channa.development@gmail.com",
"sender_item_id": "item_a42a"
},
"links": [
{
"href": "https://api.sandbox.paypal.com/v1/payments/payouts-item/XXX",
"rel": "item",
"method": "GET",
"enctype": "application/json"
}
]
}
],
"links": [
{
"href": "https://api.sandbox.paypal.com/v1/payments/pa youts/XXX?page_size=1000&page=1",
"rel": "self",
"method": "GET",
"enctype": "application/json"
}
]
}
回复:
{
"batch_header": {
"payout_batch_id": "XXX",
"batch_status": "PENDING",
"sender_batch_header": {
"sender_batch_id": "batch_9f63cf9a",
"email_subject": "You recieved a payout!!",
"recipient_type": "EMAIL"
}
},
"links": [
{
"href": "https://api.sandbox.paypal.com/v1/payments/payouts/XXX",
"rel": "self",
"method": "GET",
"enctype": "application/json"
}
]
}
"transaction_status": "PENDING",
如果指定email地址的沙盒账户不存在(或地址未确认),交易将处于pending状态。 这是正常行为。
对于实时付款,没有 PayPal 帐户的收款人将收到一条 email 消息,告诉他们他们有钱在等待,并附有创建帐户的说明(或登录并将此 email 添加到现有帐户),从而领取交易。
对于沙盒,无法查看此类“电子邮件”通知——开发人员仪表板中的“通知”选项卡仅适用于发送到与您的开发人员关联的现有帐户的通知。paypal.com 登录; 任何帐户都不存在的电子邮件不会与您的开发者登录关联,因此无法显示在此“通知”选项卡中。 不过,如果您只是使用该 email 创建一个沙盒帐户,您就可以领取付款。
无论如何,收款人总是有 30 天的时间来索取未决付款——否则它将自动取消并退还资金。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.