【发布时间】:2021-08-04 04:09:09
【问题描述】:
我想知道在 PHP 中将资金从一个人转移到另一个人的最佳选择是什么。 之前有一些解决方案,但现在已弃用,例如 Adaptive API 等。 我在here 找到了一个解决方案,但是当我转移资金时,它会发送到我的默认企业帐户。 代码如下:
$params = [
'intent' => 'CAPTURE',
'purchase_units' => [
[
'amount' => [
'currency_code' => $currency,
'value' => (string) $amount
],
'payee' => [
'email_address' => $address //receiver user PayPal email address
]
]
]
];
$data = $this->encodeData($params);
$headers = $this->getAuthHeaders($data);
$res = $this->execute('POST, '/v2/checkout/orders', $data, $headers);
真的很奇怪为什么我不能直接发送给这个收件人。
【问题讨论】:
-
嗯,乍一看实际上看起来是正确的。您能否在设置
$data和$res后立即转储它们的运行时日志,以便我们可以看到哪里出了问题? -
{"id":"1U6354702F236135S","status":"CREATED","links":[{"href":"https:\/\/api.sandbox.paypal.com\ /v2\/checkout\/orders\/1U6354702F236135S","rel":"self","method":"GET"},{"href":"https:\/\/www.sandbox.paypal.com\ /checkoutnow?token=1U6354702F236135S","rel":"approve","method":"GET"},{"href":"https:\/\/api.sandbox.paypal.com\/v2\/checkout \/orders\/1U6354702F236135S","rel":"update","method":"PATCH"},{"href":"https:\/\/api.sandbox.paypal.com\/v2\/checkout \/orders\/1U6354702F236135S\/capture","rel":"capture","method":"POST"}]} :这里是
$res -
DATA====>{"intent":"CAPTURE","purchase_units":[{"amount":{"currency_code":"USD","value":"50"} ,"收款人":{"email":"sb-13431550910@personal.example.com"}}],"application_context":{"user_action":"PAY_NOW","shipping_preference":"NO_SHIPPING","return_url": "https:\/\/xxx.com","cancel_url":"https:\/\/xxx.com"}} : 这里是 $data
-
但在批准后
payee地址更改为我的主要凭据所有者帐户:{..."status":"APPROVED","purchase_units":[{"reference_id":"default", "amount":{"currency_code":"USD","value":"50.00"},"payee":{"email_address":"htag@bodproductions.com"...],"payer":{"name ":{"given_name":"John","surname":"Doe"},"email_address":"sb-ksyxz5947819@personal.example.com","payer_id":"96Z48PGVR3WRE","address":{" country_code":"US"}}....]}
标签: php paypal paypal-rest-sdk paypal-adaptive-payments