Building on your idea, I think I can generate the grids and place them in a 2D array. Then for each of the grids, I can store a chess piece.
So when the client fires the chess piece, the server just needs to find the piece in the array which will determine its position. Not sure if this works however.