The value "0" as a payment type code prevents it from getting archived/restored. The staff interface gives you a yellow warning box with the text "error_on_archive/restore". Creation of the payment type works fine.