all except checkouts refactored, adding examples