Copy contact properties to Deal?

Most of us are still waiting for a Hubspot built solution in order to update a Deal property from a contact property in either a Deal workflow or a Contact workflow. For my purposes, the Deal property - Amount can be estimated when the Deal is created but needs to be updated based on the actual transaction amount. Zapier provides an easy solution to update a Contact Property with that information from our CC processor but the Zapier integration does not allow us to update a Deal property. Therefore, we need a workflow to copy that transaction amount into the deal at the time the deal is won, not when it is created. Is there a solution?