我目前正在使用paypal php rest api 0.6。我无法设置折扣金额。
我能够看到物品清单,税金和运费金额。但不知道如何配置折扣。 $ payer = new Payer(); $ payer-> setPaymentMethod( “贝宝”);
$item = new Item();
$item->setQuantity("1");
$item->setName("Classic Shirt");
$item->setPrice("100.00");
$item->setCurrency("USD");
$item->setSku("CS00001");
$item2 = new Item();
$item2->setQuantity("1");
$item2->setName("Classic Brown Shirt");
$item2->setPrice("100.00");
$item2->setCurrency("USD");
$item2->setSku("CS00002");
$amount = new Amount();
$amount->setCurrency("USD");
$amountDetails = new Details();
$amountDetails->setSubtotal('200');
$amountDetails->setTax('10');
$amountDetails->setShipping('10');
//$amountDetails->setDiscount('10');
$amount->setDetails($amountDetails);
$amount->setTotal("210.00");
$item_list = new ItemList();
$item_list->setItems(array($item,$item2));
$transaction = new Transaction();
$transaction->setAmount($amount);
$transaction->setDescription("This is incredibly awesome.");
$transaction->setItem_list($item_list);
$baseUrl = getBaseUrl();
$redirectUrls = new RedirectUrls();
$redirectUrls->setReturnUrl("$baseUrl/ExecutePayment.php?success=true")
->setCancelUrl("$baseUrl/ExecutePayment.php?success=false");
// ### Payment
// A Payment Resource; create one using
// the above types and intent set to 'sale'
$payment = new Payment();
$payment->setIntent("sale")
->setPayer($payer)
->setRedirectUrls($redirectUrls)
->setTransactions(array($transaction));
答案 0 :(得分:3)
在当前版本的REST API中,您可以使用负值进行折扣,例如:
$itemTmp = new \PayPal\Api\Item();
$itemTmp->setName('Discount')
->setCurrency('EUR')
->setQuantity(1)
->setPrice(-10);
答案 1 :(得分:0)
我在API reference没有看到关于折扣的提及。
我建议您自行计算折扣,并以折扣价格致电->setPrice
。
答案 2 :(得分:0)
为什么不添加负数并进行描述折扣
答案 3 :(得分:0)
PayPal Rest API 很棘手,因为您确实无法使用 ->setDiscount() 来添加折扣;尽管付款的 jsondecode 在 Payment>Amount->Details...
中显示了一个数组 DISCOUNT=>""