Shani is Geralt's good friend from old times. She was once known as a student in Oxenfurt academy, currently she is a respected doctor who accompanies Geralt during few quests. In spite of that, she remains an episodic character in the storyline.
Romance with Shani is independent, not related to any "story" romances from the basic version of the game (with Triss/Yenefer). It takes place after the Dead Man's Party main quest where as Witold in Geralt's body you entertain the girl during the wedding. You don't need to put much effort to win the girl. At the start of A Midnight Clear quest you bring her alcohol and a rowan branch to fix her mood and start a long conversation.
No decisions except for the last question affect the outcome of the romance. During the last choice, the girl asks you at the water whether you want to go back to the wedding or continue the fun with her. However, if you have given her alcohol, you must forbid her from drinking the wine (don't mix the alcohols), otherwise the trip won't end as Geralt wanted. A detailed description of the romance can be found in the chapter about A Midnight Clear quest.