checkout: add checkout feature