if invalid? guard rather than unless checkout?