At present, Visa on arrival is just available for Air travel only. If you enter Vietnam by land border crossing or via Sea ports via Cruise or Ship, you must have the Visa in advance.
Tips: If your nationality is in the list of eVisa Vietnam, you may apply for eVisa. With eVisa you can enter Vietnam by land border, cruise and ship. Please check more information about the eVisa Vietnam here.