A product dispenser, comprising: a reservoir for a product, having: a protrusion; and a piston engaging mechanism, a cap having the followings: a pipette having an upper end orifice and a lower end orifice; a piston configured to move so as to create a suction to draw the product through the lower end orifice of the pipette of the product dispenser; a housing for the piston configured for the piston to slide between a high position and low position in the housing; a corresponding engaging mechanism configured to engage with the piston engaging mechanism of the reservoir, and also configured to move together with the piston; a button configured to dispense the product through the end orifice of the pipette, when the button is actuated; a chamber configured to change its volume depending on the movement of the piston and the movement of the button, wherein when the cap is capped on the reservoir in a direction of closing the product dispenser, the piston is moved by the protrusion, relatively to the housing to the high position in the housing, and the volume of the chamber decreases, wherein when the cap is uncapped on the reservoir in a direction of opening the product dispenser, the piston is moved relatively to the housing to a low position in the housing by the engagement of the piston engaging mechanism and the corresponding engagement mechanism, and the volume of the chamber increases, wherein this opening of the cap produces a suction of the product in the pipette, wherein when the button is actuated, the volume of the chamber decreases by which the product is dispensed from the pipette, characterized in that the piston engaging mechanism and the corresponding engaging mechanism are snap fits a reservoir for a product, having: a protrusion; and a piston engaging mechanism, a cap having the followings: a pipette having an upper end orifice and a lower end orifice; a piston configured to move so as to create a suction to draw the product through the lower end orifice of the pipette of the product dispenser; a housing for the piston configured for the piston to slide between a high position and low position in the housing; a corresponding engaging mechanism configured to engage with the piston engaging mechanism of the reservoir, and also configured to move together with the piston; a button configured to dispense the product through the end orifice of the pipette, when the button is actuated; a chamber configured to change its volume depending on the movement of the piston and the movement of the button, a pipette having an upper end orifice and a lower end orifice; a piston configured to move so as to create a suction to draw the product through the lower end orifice of the pipette of the product dispenser; a housing for the piston configured for the piston to slide between a high position and low position in the housing; a corresponding engaging mechanism configured to engage with the piston engaging mechanism of the reservoir, and also configured to move together with the piston; a button configured to dispense the product through the end orifice of the pipette, when the button is actuated; a chamber configured to change its volume depending on the movement of the piston and the movement of the button, wherein when the cap is capped on the reservoir in a direction of closing the product dispenser, the piston is moved by the protrusion, relatively to the housing to the high position in the housing, and the volume of the chamber decreases, wherein when the cap is uncapped on the reservoir in a direction of opening the product dispenser, the piston is moved relatively to the housing to a low position in the housing by the engagement of the piston engaging mechanism and the corresponding engagement mechanism, and the volume of the chamber increases, wherein this opening of the cap produces a suction of the product in the pipette, wherein when the button is actuated, the volume of the chamber decreases by which the product is dispensed from the pipette, characterized in that the piston engaging mechanism and the corresponding engaging mechanism are snap fits