我对Paypal API有点困惑。我正在使用Paypal Payments通过PHP SDK现场支付客户费用。
$apiContext = new ApiContext(
new OAuthTokenCredential(
$this->paypalid,
$this->paypalsecret
)
);
$payer = $_GET['payerId'];
$paymentid = $_GET['paymentId'];
$payment = Payment::get($paymentid, $apiContext);
$transaction = $payment->getTransactions();
$execution = new PaymentExecution();
$execution->setPayerId($payer)
->setTransactions($transaction);
try{
$result = $payment->execute($execution, $apiContext);
} catch (Exception $ex) {
echo "Couldn't process payment";
exit;
}
我想根据因税务原因付款而生成发票。目前,所有这一切都是向卖方/买方发送关于交易成功的通知。 Paypal的API似乎在很大程度上意味着发票用于处理付款,在这种情况下,付款已经完成;我不希望客户付两次钱。
我想我需要将Invoice对象的status属性设置为“PAID”,并将支付金额设置为等于支付的总金额,然后使用send方法和apiContext。
我错了吗?