       return callback err if err or not group
       if invite
         group.debitPack tag: "user", (err) ->
-          return callback err  if err
+          if err
+            if err.message is "quota exceeded"
+              callback
+                code    : "user_quota_exceeded"
+                message : "Failed join to group #{slug}."
+            else
+              callback err
+            return
           invite.redeem account, (err) ->
             return callback err if err
             group.approveMember account, callback

    user           = null
    quotaExceedErr = null
    recoveryToken  = null

    queue = [
      =>

  @addToGroups = (account, invite, email, callback)->
    @addToGroup account, 'koding', email, null, (err)=>
      if err then callback err
      else if invite?.group and invite.group isnt 'koding'
        @addToGroup account, invite.group, email, invite, callback
      else
        callback null
