A POP3 parancsokban megkülönböztetik a kis és nagy betűket. A parancsot egy vagy több argumentum követheti. Minden parancsot CRLF zár. A parancsok és argumentumok nyomtatható ASCII karakterekből állnak. A parancsokat és a paramétereket space-ek választják el. A parancsok 3-4 karakter hosszúak, az argumentumok akár 40 karakter hosszúak is lehetnek. A válaszok egy állapotjelzőből és egy kulcsszóból állnak, amit esetleg más, kiegészítő információk követhetnek. A válaszok 512 karakter hosszúak lehetnek. Minden választ CRLF zár. Két állapotjelző van, a pozitív: +OK, és a negatív: -ERR jelzők. A szerver ezeket nagybetűsen küldi. Több parancs válasza több soros. A több soros válasz sorait CRLF zárja. Amikor a teljes válasz megérkezett a szerver egy .CRLF párt küld (pont - ASCII:46 - és CRLF). Ha a válasz bármely sora ponttal kezdődik, akkor az egy byte sor lesz. Ezért a több soros válaszokat CRLF.CRLF ötös zárja. Ha valamely sor ponttal kezdődik akkor meg kell nézni, hogy a következő egy CRLF pár-e, és ha igen, akkor az a válasz végét jelenti. Ha a pontot nem CRLF követi akkor a pontot eldobjuk.
A kapcsolat kiépítése után a szerver üdvözletet küld. Ez után a session az azonosítási (AUTHORIZATION) szakaszba lépett. Ekkor a kliensnek azonosítania kell magát. Ha ez sikerült az átviteli (TRANSACTION) állapotba kerül a szerver. Ekkor fogadhatunk adatokat és küldhetünk parancsokat a szervernek. A szerver ekkorra lefoglalta a mailboxunkat. Ezután a Quit paranccsal léphetünk át a frissítési (UPDATE) állapotba. Ebben az állapotban a szerver felszabadítja a lefoglalt erőforrásokat, elköszön, és zárja a kapcsolatot.