To automatically default all your orders to the Ship Complete status, you will need to use a script that adds a hold code to each order, preventing backorders. 


In Infoplus, orders default to 'ship incomplete', which means that if some items on the order are not available, the order will still ship out. You can change the ship complete status on an order per order basis using a drop down, but the only way to change the default setting for all incoming orders is by script. The script works by adding a Hold Code 'Y' to the order, which works the same as Ship Complete.


For a quick overview of all the Infoplus Hold Codes, see our complete list here.


Ship Complete Script Example

utils.log("Marking Order as Ship Complete. Check if HoldCode hasn't been entered manually.");
utils.log("HoldCode = '" + order.holdCode + "'")

var orderTags = infoplusApi.getTags("order", order.orderNo);
var doProcess = true;

utils.log(" - - Confirming order hasn't already been run against this script");
for(var tagIndex = 0; tagIndex < orderTags.size(); tagIndex++)
{
    var tag = orderTags.get(tagIndex);
    if(tag == "shipcomplete-script-processed")
    {
        utils.log("This order has already undergone this process, so don't do it again.");
        doProcess = false;
        break;
    }
}

if(doProcess)
{
    // update this order marking as ship-complete (via holdCode=Y)
    order.holdCode = "Y";

    utils.log("Marking order as Ship Complete / Hold Code = Y");
    infoplusApi.update("order", order);

    utils.log(" - Add a processed tag.");
    infoplusApi.addTag('order', order.orderNo, "shipcomplete-script-processed");
}