Add callback to createService and fix purchaseItem