It depends entirely upon the context. Typically you’d use some approximation which works for the specific scene. For small droplets, you can often ignore the refraction of transmitted light and just add some reflected light.
The complex part is generating a sprite for a single water droplet. If you want something reasonably accurate, render a water droplet using specular reflection and Schlick’s approximation for the reflectance of the surface of the droplet (using a light map or individual light sources) then use that sprite to render droplets with additive blending, i.e. glBlendFunc(GL_ONE, GL_ONE). You can simplify the process greatly by just using a hand-drawn droplet sprite, but rendering results in reflections which change with the viewpoint and scene lighting.