anchor.diff:  -module(zz_obj).
   
   -export([create_account/3
  -        ,create_user/1
  +        ,create_user/2
           ,create_default_callflow/1
           ,collect_onbill_data/1
           ]).
  
positive.code:         ,{[<<"password">>], UserPassword}
          ,{[<<"priv_level">>], <<"admin">>}
          ]),
      Ctx1 = cb_context:set_account_id(Context, 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_accepting_charges(Ctx3)).
  
  -spec create_default_callflow(cb_context:context()) -> cb_context:context().
  create_default_callflow(Context) ->
  
negative.code:     Ctx3 = cb_accounts:put(Ctx2),
      case cb_context:resp_status(Ctx3) of
          'success' ->
              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;
  