transaction interface