You need to minimize amount of data sent. So update only when it is needed and only what is needed.
For that create some function that calculates checksum like CRC32 (you should do it in c++)
Let server and client manipulate inventory. Then client should send over only CRC32 of inventory, and server compares, if there is mismatch server forces update on client.