semi-parametric first stage based on pscore with binary treatment and instrument

hi there

I have to perform a semi-parametric first stage based on pscore with a binary treatment and instrument and I'm not sure if I do it right.

My approach was:

firststage.out <- glm(d ~ z + pscore, data=data)

with d = binary treatment and z = binary instrument.

Where I estimated my pscore with:

pscore.model <- glm(z ~ x, family = binomial(link = "probit"))

where x is a vector of covariates and z the binary instrument.

With this approach I got quiet similar results as in the parametric one. But I am not fully convinced that this approach is the right way.

What's your opinion?

sending love <3