code: func (service *IYOPhonenumberValidationService) RequestValidation(request *http.Request, username string, phonenumber user.Phonenumber, confirmationurl string, langKey string) (key string, err error) {
  	valMngr := validation.NewManager(request)
  	info, err := valMngr.NewPhonenumberValidationInformation(username, phonenumber)
  	if err != nil {
  		return
  	}
  	err = valMngr.SavePhonenumberValidationInformation(info)
  	if err != nil {
  		return
  	}
  
  	translationValues := tools.TranslationValues{
  		"smsconfirmation": struct {
  			Code string
  			Link string
  		}{
  			Code: info.SMSCode,
  			Link: fmt.Sprintf("%s?c=%s&k=%s&l=%s", confirmationurl, info.SMSCode, url.QueryEscape(info.Key), langKey),
  		},
  	}
  
  	translations, err := tools.ParseTranslations(langKey, translationValues)
  	if err != nil {
  		log.Error("Failed to parse translations: ", err)
  		return
  	}
  
  	go service.SMSService.Send(phonenumber.Phonenumber, translations["smsconfirmation"])
  	key = info.Key
  	return
  }
docs: //RequestValidation validates the phonenumber by sending an SMS