Zoho Crm campaign and shipping address

Zoho Crm campaign and shipping address

In a campaign I send a free sample of a product to some contacts and I need to store the shipping address for future reference. If I create a campaign and associate some contacts everything goes fine, but the association is dynamic. If I change a contact address when I click on the contact in the campaign I see the new address and not the old one. What shall I do to keep track of the shipping address at the time the campaign was created? I've been told the address remains, but I'm missing something or doing something wrong. 
I can create a custom module to store the shipping address, but don't want to duplicate data if it is already stored somewhere (and I'm simply looking at the wrong place). In the case I'd need to create a custom module which would be the best way to add the information I need in the custom module any time a contact is added to the campaign? A workflow and a custom function? Please note the I will add multiple contacts at once, let's say 10K, based on a custom filter. Will it be a problem?