etsy and bigcommerce return the correct datastructures. some refactoring to do still