Allow async conversion and use a UUID service where possible