Police detained five people from the two families involved and charged them with human trafficking, sexual abuse, rape, abuse and labour exploitation, they said in a statement.
Police said they began their investigation after learning that in May 2014 "a minor was sold by her parents for 17,000 euros with the goal of contracting marriage at an engagement party in Romania."
The girl, who lived with her parents in the southern city of Seville, was mistreated as soon as she arrived in Valladolid in the north to live with her husband-to-be and his family, the statement added.
"They would constantly insult, threaten and hit her, and force her to have sex" with her future husband and forced her to pick grapes and potatoes without receiving any pay, it added.
Police said the girl called her mother for help but the family to which she was sold demanded 10,000 euros to let her go.
It was only after they noticed police were monitoring them that they put her on a bus bound for Seville to be reunited with her parents.
Police did not provide details on those arrested but Spanish media said they included her parents and the parents of her intended.
Last month, police said they arrested a Romanian father accused of trying to sell his week-old daughter for 5,000 euros ($5,410). The infant was taken away from her parents and placed in foster care.