I found this cool (but expensive) software that generates seamless and looped caustics image sequences to be used in pretty much anywhere (games, videos, etc.):
Just for the texture, I would create a plane with an emission shader, play a bit with some texture nodes, and render the plane with an orthographic camera into a texture.
For example, if you add the a noise color to the texture coordinate and use it as a vector for a voronoi texture, you can get something more interesting than just the plain voronoi. This kind of technics let you create different procedural textures that you can animate, change, mix, whatever.
Animating two different tileable squares by moving them cross - diagonally, that’s one way.
Animate Texture Offset values (BI) to do the same on texture level.
eppo’s way works extremingly good when you use different numbers as scale(time) for each direction… The LCM of them will be the tilling point.
But normally and for this effect, as caustics are already a superposition of results, you can just render a few seconds more and add the last frames to the first ones.
For the xy tilling, the same idea can be used by adding the continuation of one side to the beggining of the other, in each direction.