1. A non-transitory computer-readable medium having instructions stored thereon that, when executed by a processor, cause the processor to perform barcode processing, the barcode processing comprising: receiving barcode data corresponding to an item obtained by scanning a barcode; determining a path of a software object out of a plurality of candidate paths of software objects, each software object implementing a different barcode processing algorithm; processing the barcode data with the software object; and determining whether the barcode is of a barcode type that is implemented by the software object; wherein the determining the path comprises accessing a table that defines available barcode processing algorithms and comprises a priority sequence of candidate paths column that determines an order in which candidate barcode processing algorithms are executed.