Writing transaction protocol