In this paper, we present constructions of primitive and non-primitive BCH codes using monoid rings over the local ring [Formula: see text], with [Formula: see text]. We show that there exist two sequences [Formula: see text] and [Formula: see text] of non-primitive BCH codes (over [Formula: see text] and [Formula: see text], respectively) against primitive BCH codes [Formula: see text] of length [Formula: see text] and [Formula: see text] (over [Formula: see text] and [Formula: see text]), respectively. A technique is developed in an innovative way that enables the data path to shift instantaneously during transmission via the coding schemes of [Formula: see text], [Formula: see text], [Formula: see text] and [Formula: see text]. The selection of the schemes is subject to the choice of better code rate or better error-correction capability of the code. Finally, we present a decoding procedure for BCH codes over Galois rings, which is also used for the decoding of BCH codes over Galois fields, based on the modified Berlekamp–Massey algorithm.