Jaelene Hinkle says she refused to play for the United States last year because her Christian faith prevented her from wearing a shirt honouring LGBT pride month.
The North Carolina Courage defender, 25, was selected for games against Sweden and Norway in June 2017 when the shirt numbers were rainbow coloured.
No formal reason for her absence was given by the national team at the time.
“I felt convicted in my spirit that it wasn’t my job to wear it,” she said.
Hinkle, who said she was “very disappointed” to give up “a little girl’s dream”, has not been named in a US squad since.
Her decision has been supported by team-mates and her club manager, Englishman Paul Riley.
But she was booed when her name was read out at a Courage game on Wednesday following an interview broadcast on the Christian Broadcasting Network.
Speaking about her decision for the first time, Hinkle said: “I gave myself three days to just seek and pray and determine what [God] was asking me to do in this situation.
“I’m essentially giving up the one dream, and I’m saying no to it. It was very disappointing.
“That’s where the peace turns to disappointment, because I knew in my spirit I was doing the right thing.
“Just because you are being obedient, it doesn’t make it easy.”
Following the National Women’s Soccer League match against Portland Thorns on Wednesday, Riley said: “She’s got a good heart, and she battled through the game. It’s not an easy thing for her.
“I give her a lot of credit. Whatever her beliefs are, whatever she believes in, that’s her. It doesn’t affect the team.”
Courage team-mate Jessica McDonald said: “She is high on her faith, and in my honest option that’s absolutely incredible.
“If she’s for God, then that’s fine. That’s great if that’s what keeps her going in her life and keeps positivity in her life.”