The simplest way to accept Bitcoin payments is to set up a wallet and tell people to send you bitcoins. The next level of complexity is setting up a system where each person who pays you is given a unique address (to pay to) and then automatically collecting those payments and marking that person in a database as having paid. How can you do this?
Electrum Master Public Keys (BIP 32) allow you to generate new addresses on the fly that "deposit" automatically into one Electrum wallet. The trick is that you can generate addresses using the Master Public Key + Offset (an integer). So for each customer you assign an ID number and then generate a Bitcoin address that corresponds to that ID. The code that generates these addresses doesn't require access to your private keys, only the master public key (which is used to derive the other public keys that become the addresses).