本条还可参阅:
要在订单交付给客户时收款,卖家可以使用货到付款 (COD) 方式。但是,与提前付款相比,您的客户对购买的承诺较少,如果他们下高价值的订单但退回这些订单,卖家将面临很大的风险。本文将指导您对使用COD方式付款的订单限制价值以降低这种风险。

指南

在ShopBase后台中,转到 Online store > Preferences



Additional script部分中,将以下脚本粘贴到 Head选项卡的文本框中。


<script >
window.sbsdk.ready(function() {
window.sbsdk.page.onContextUpdate(function(context) {
if (context.type === 'checkout' || context.type === 'process_checkout') {
const maxItem = 3
const maxValue = 550

const type = 'semi'

var readyCheckInterval = setInterval(function() {
const btn = document.getElementsByClassName("step__continue-button")[0] || document.getElementsByClassName("step__complete-order")[0]

function addAlert() {
console.log(btn)
btn.disabled = true
var text = ""
if (type === "value") {
text = `Your order reaches the maximum amount. It should be less than or equal to $${maxValue}. Please select another payment method or update your cart.`
}
if (type === "item") {
text = `Your order reaches the maximum quantity. It should be less than or equal to ${maxItem} items. Please select another payment method or update your cart.`
}
if (type === "semi") {
text = `Your order reaches the maximum quantity and/or amount. It should be less than or equal to ${maxItem} items and/or $${maxValue}. Please select another payment method or update your cart.`
}
document.getElementById('cod-cod-header').insertAdjacentHTML('afterend', `<div id="alert_cod" style="
/* padding-top: 10px; */
padding: 16px;
background: rgb(252,246,230);
">
<div style="
font-size: 12px;
display: flex;
width: 100%;
justify-content: space-evenly;
">
<img src="https://upload.wikimedia.org/wikipedia/commons/9/99/OOjs_UI_icon_alert-yellow.svg">
<div style="
padding-left: 20px;
">${text}</div>

</div>
</div>`)
}

function removeAlert() {
const alert = document.getElementById("alert_cod")
if (alert !== null) {
document.getElementById("alert_cod").remove()
btn.disabled = false
}

}

var a = document.getElementsByClassName("payment_method")
for (let i = 0; i < a.length; i++) {
if (a[i].id === "cod-cod-header") {
continue
}
a[i].addEventListener("click", removeAlert)
}

function validValue() {
const text = document.getElementsByClassName("payment-due__price")[0].innerHTML
let numb = text.match(/[0-9/(.)]/g);
numb = Number(numb.join(""));
return numb > maxValue
}

function validItem() {
let count = 0
const listItem = document.getElementsByClassName('checkout-product-thumbnail__quantity')
for (let item of listItem) {
count += parseInt(item.innerHTML)
}
return count > maxItem
}

function valid() {
if (type === "value") {
return validValue()
}
if (type === "item") {
return validItem()
}
if (type === "semi") {
return validValue() || validItem()
}

}
if (document.getElementById("cod-cod-header") !== null) {
document.getElementById("cod-cod-header").addEventListener("click", item => {
const alert = document.getElementById('alert_cod')
if (valid() && alert === null) {
addAlert()
}
})
}
setInterval(() => {
if (document.getElementById("cod-cod-section")) {
if (!btn.disabled && document.getElementById("cod-cod-section").style.display === '' && document.getElementById("alert_cod") === null && valid()) {
addAlert()
}
}
}, 500)

}, 500);
}
});
});
</script>


您可以直接在脚本中自定义最大的商品数量和/或订单金额。

要限制商品数量,请按照以下步骤操作

在脚本中查找 const maxItem = 3 这一行。
3 替换为您允许客户订购的最大商品数量。

要限制订单金额,请按照以下步骤操作

在脚本中查找 const maxValue = 550 这一行。
550 换为您允许客户购买的最大金额。

要确定限制的值,请按照以下步骤操作

在脚本中查找 const type = 'semi' 这一行。
semi 替换为以下值: semi (如果您要同时限制商品数量和订单金额); value (如果您只要限制商品数量); item (如果您只要限制订单金额)。

完成后,请点击 Save

此逻辑将立即应用,结帐页面将如下显示。



此逻辑不适用于 售后优惠,因为您的客户可以在售后步骤中添加任何其他商品。您可以按照 此教程的指南禁用售后优惠

相关文章

支付渠道概述
在商店上激活货到付款(COD)方式
这篇文章有帮助吗?
取消
谢谢!