In a large saucepan, warm oil over medium heat. Add shallot and cook, stirring, until soft, about 5 minutes. Add ginger and sauté for 1 minute. Add cranberries, orange zest and juice, sugar and 3/4 cup water, stirring until sugar dissolves.
Bring mixture to a boil, then reduce heat to low and simmer until sauce has thickened slightly and berries have popped, 10 to 12 minutes. Remove from heat and cool to room temperature before serving.