anchor.diff:      Ctx3 = cb_accounts:put(Ctx2),
       case cb_context:resp_status(Ctx3) of
           'success' ->
  -            lager:info("account created"),
  -            kz_util:spawn(fun create_user/1, [Ctx3]),
  +            CreatedAccountId = kz_doc:id(cb_context:resp_data(Ctx3)),
  +            kz_util:spawn(fun create_user/2, [JObj, CreatedAccountId]),
               kz_util:spawn(fun create_default_callflow/1, [Ctx3]),
               kz_util:spawn(fun collect_onbill_data/1, [Ctx3]),
               Ctx3;
  
positive.code:             Ctx3
      end.
  
  -spec create_user(cb_context:context()) -> cb_context:context().
  create_user(Context) ->
      timer:sleep(7000),
      ReqData = cb_context:req_data(Context),
      AccountId = kz_json:get_value(<<"id">>, cb_context:resp_data(Context)),
      lager:debug("we are about to create user for: ~p",[AccountId]),
      Email = kz_term:to_lower_binary(kz_json:get_value([<<"contact">>,<<"signup">>,<<"email">>], ReqData)),
      Firstname = kz_json:get_value([<<"contact">>,<<"signup">>,<<"first_name">>], ReqData),
      Surname = kz_json:get_value([<<"contact">>,<<"signup">>,<<"last_name">>], ReqData),
      Phonenumber = kz_json:get_value([<<"contact">>,<<"signup">>,<<"number">>], ReqData),
      UserPassword = kz_binary:rand_hex(10),
      Props = props:filter_empty([
          {[<<"username">>], Email}
  
negative.code:         ,{[<<"password">>], UserPassword}
          ,{[<<"priv_level">>], <<"admin">>}
          ]),
      Ctx0 = cb_context:set_account_id(cb_context:new(), AccountId),
      Ctx1 = cb_context:set_account_db(Ctx0, kz_util:format_account_db(AccountId)),
      Ctx2 = cb_context:set_doc(Ctx1, kz_json:set_values(Props, ?MK_USER)),
      Ctx3 = cb_context:set_req_data(Ctx2, kz_json:set_values(Props, ?MK_USER)),
      cb_users_v2:create_user(cb_context:set_resp_status(cb_context:set_accepting_charges(Ctx3),'success')).
  
  -spec create_default_callflow(cb_context:context()) -> cb_context:context().
  create_default_callflow(Context) ->
  