"It took me five years to fulfill the word I had given"
Is the above sentence idiomatic?
"to fulfill the word I had given" seems bit unidiomatic to me, I don't know why. I'm thinking that there could be some better and more idiomatic phrase in English to mean that.
The context is, I had told one of my friend that I would draw his picture but I didn't. After five years (now), I've drawn his picture and want to say the above statement to him.
I want to know how a native English speaker would say that.
And also I want to know, can I say the below statement when the moment I have finished the drawing,
"It has taken me five years to fulfill the word I had given"