Are you using a 2D texture for each face, or a cube map?
A cube map is created by calling glBindTexture(GL_TEXTURE_CUBE_MAP) then glTexImage2D(GL_TEXTURE_CUBE_MAP_*) for each of the six faces, and accessed in the shader via a samplerCube uniform and the textureCube() function (which takes the coordinates via a vec3).
When using shaders, coordinate systems are entirely up to the program. Vertex attributes will be passed to the vertex shader as-is.