我正在店面使用優惠券來提供折扣。對於大於特定值的訂單,某些優惠券適用於平價美元。例如,40美元或更多的訂單可獲得10美元的折扣。其他優惠券可享受折扣優惠,比如本月的第一筆訂單可享受20%折扣(店面正在處理限額,因此可以忽略)。我想使用authorize.net來處理交易,並將收據發送給客戶。添加一個負價格行項目或折扣
我的第一個想法是修改折扣商品的單價。這對於折扣率可以很好地工作,但並不顯示所有信息。問題在於平價折扣。如果有幾種物品,你會在哪裏拿到$ 10。
我的第二個想法是將具有負值/價格的訂單項添加到訂單收據。授權似乎並不接受任何事物的負面價值,所以這是一種失敗。
我們使用Java的AIM事務庫。
Order anetOrder = Order.createOrder();
anetOrder.setInvoiceNumber(sanitize(order.getOrderNumber(), 20));
anetOrder.setShippingCharges(shippingCharges);
anetOrder.setTotalAmount(total);
for (OrderProductIf op : order.getOrderProducts()) {
OrderItem item = OrderItem.createOrderItem();
item.setItemTaxable(true);
item.setItemId(sanitize(op.getSku(), 31));
item.setItemName(sanitize(op.getName(), 31));
item.setItemDescription(sanitize(op.getModel(), 255));
item.setItemPrice(op.getPrice());
item.setItemQuantity(new BigDecimal(op.getQuantity()));
anetOrder.addOrderItem(item);
}
sanitize是一個限制字符串長度的函數。
Transaction transaction = merchant.createAIMTransaction(TransactionType.AUTH_CAPTURE, total);
transaction.setCreditCard(creditCard);
transaction.setCustomer(customer);
transaction.setOrder(anetOrder);
transaction.setShippingAddress(shippingAddress);
transaction.setShippingCharges(shippingCharges);
Result<Transaction> result = (Result<Transaction>) merchant.postTransaction(transaction);
return getPaymentResult(result);
我在這裏沒有想法。
歡迎來到Stack Overflow!即使您可能將Java用作項目的一部分,請不要使用'java'標記,除非您的問題實際上是關於Java本身。 –
你可能只是想發送你的收據,所以你可以相應地定製它 –