TODO: finish checkout