In this paper we introduce a new class of codes for over-loaded synchronous wireless and optical CDMA systems which increases the number of users for fixed number of chips without introducing any errors. Equivalently, the chip rate can be reduced for a given number of users, which implies bandwidth reduction for downlink wireless systems. An upper bound for the maximum number of users for a given number of chips is derived. Also, lower and upper bounds for the sum channel capacity of a binary over-loaded CDMA are derived that can predict the existence of such over-loaded codes. We also propose a simplified maximum likelihood method for decoding these types of over-loaded codes. Although a high percentage of the over-loading factor degrades the system performance in noisy channels, simulation results show that this degradation is not significant. More importantly, for moderate values of Eb/N0 (in the range of 6-10 dB) or higher, the proposed codes perform much better than the binary Welch bound equality sequences.