Simple transaction framework