diff --git a/Gemfile b/Gemfile
index a92a25eca5620b09ae885b8db3e2b6affa060720..cb6d11592f9f9011ed309662023d43129259d512 100644
--- a/Gemfile
+++ b/Gemfile
@@ -11,8 +11,8 @@ gem 'ohai', '0.5.8', :require => false #Chef dependency
 gem 'nokogiri', '1.4.3.1'
 
 #Security
-gem 'devise', '1.1.3'
-gem 'devise_invitable', :git => 'git://github.com/zhitomirskiyi/devise_invitable.git', :branch => '0.3.5'
+gem 'devise', '1.3.1'
+gem 'devise_invitable', '0.5.0'
 
 #Authentication
 gem 'omniauth', '0.1.6'
diff --git a/Gemfile.lock b/Gemfile.lock
index be193e65b19aaaca8c33f22e7fc3201fcfc0e8ec..1312cdc57034999d059d0d598dcba8d4b8508d4c 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -50,14 +50,6 @@ GIT
       multi_xml (~> 0.2.0)
       simple_oauth (~> 0.1.2)
 
-GIT
-  remote: git://github.com/zhitomirskiyi/devise_invitable.git
-  revision: 85abb5fef4ab4f74db818ed3d8104c2f7d24b94e
-  branch: 0.3.5
-  specs:
-    devise_invitable (0.3.5)
-      devise (~> 1.1.0)
-
 PATH
   remote: vendor/gems/jasmine
   specs:
@@ -166,9 +158,13 @@ GEM
     culerity (0.2.15)
     daemons (1.1.2)
     database_cleaner (0.6.0)
-    devise (1.1.3)
+    devise (1.3.1)
       bcrypt-ruby (~> 2.1.2)
-      warden (~> 0.10.7)
+      orm_adapter (~> 0.0.3)
+      warden (~> 1.0.3)
+    devise_invitable (0.5.0)
+      devise (~> 1.3.1)
+      rails (>= 3.0.0, <= 3.2)
     diff-lcs (1.1.2)
     erubis (2.6.6)
       abstract (>= 1.0.0)
@@ -301,6 +297,7 @@ GEM
       oa-oauth (= 0.1.6)
       oa-openid (= 0.1.6)
     open4 (1.0.1)
+    orm_adapter (0.0.5)
     polyglot (0.3.1)
     pyu-ruby-sasl (0.0.3.2)
     rack (1.2.2)
@@ -391,8 +388,8 @@ GEM
     uuidtools (2.1.2)
     vegas (0.1.8)
       rack (>= 1.0.0)
-    warden (0.10.7)
-      rack (>= 1.0.0)
+    warden (1.0.4)
+      rack (>= 1.0)
     webmock (1.6.2)
       addressable (>= 2.2.2)
       crack (>= 0.1.7)
@@ -418,8 +415,8 @@ DEPENDENCIES
   cloudfiles (= 1.4.10)
   cucumber-rails (= 0.3.2)
   database_cleaner (= 0.6.0)
-  devise (= 1.1.3)
-  devise_invitable!
+  devise (= 1.3.1)
+  devise_invitable (= 0.5.0)
   em-websocket!
   excon (= 0.2.4)
   factory_girl_rails
diff --git a/app/models/invitation.rb b/app/models/invitation.rb
index 0463bc08b9ea5911b24b1db0789583c45e1f8d48..0ac394dba5213fea675d9c9db61785da35392fc8 100644
--- a/app/models/invitation.rb
+++ b/app/models/invitation.rb
@@ -74,7 +74,8 @@ class Invitation < ActiveRecord::Base
       opts[:from].save!
       invitee.reload
     end
-    invitee.invite!(:email => (opts[:service] == 'email'))
+    invitee.skip_invitation = (opts[:service] != 'email')
+    invitee.invite!
     log_string = "event=invitation_sent to=#{opts[:identifier]} service=#{opts[:service]} "
     log_string << "inviter=#{opts[:from].diaspora_handle} inviter_uid=#{opts[:from].id} inviter_created_at_unix=#{opts[:from].created_at.to_i}" if opts[:from]
     Rails.logger.info(log_string)
diff --git a/app/views/devise/mailer/invitation.html.haml b/app/views/devise/mailer/invitation_instructions.html.haml
similarity index 100%
rename from app/views/devise/mailer/invitation.html.haml
rename to app/views/devise/mailer/invitation_instructions.html.haml
diff --git a/config/locales/devise/devise.en.yml b/config/locales/devise/devise.en.yml
index 4af4062336990315feb14c5bd51340a8eeed3a40..c3c86413b605e373dc9218e876c664eaa79ee03a 100644
--- a/config/locales/devise/devise.en.yml
+++ b/config/locales/devise/devise.en.yml
@@ -72,7 +72,7 @@ en:
         account_locked: "Your account has been locked due to an excessive amount of unsuccessful sign in attempts."
         click_to_unlock: "Click the link below to unlock your account:"
         unlock: "Unlock my account"
-      invitation:
+      invitation_instructions:
         subject: "You've been invited to join Diaspora!"
         accept: "Accept invitation"
         ignore: "If you don't want to accept the invitation, please ignore this email."
diff --git a/spec/models/invitation_spec.rb b/spec/models/invitation_spec.rb
index 004fd661251fcfb380f1407eb67f7d045f0adb73..93a412b146c17ac7bf8ed74f3c18a2424174c894 100644
--- a/spec/models/invitation_spec.rb
+++ b/spec/models/invitation_spec.rb
@@ -225,10 +225,10 @@ describe Invitation do
         }.should_not change { @invitee.reload.serialized_private_key }
       end
 
-      it "changes the invitation token" do
+      it "does not change the invitation token" do
         old_token = @invitee.invitation_token
         Invitation.create_invitee(@valid_params)
-        @invitee.reload.invitation_token.should_not == old_token
+        @invitee.reload.invitation_token.should == old_token
       end
     end
     context 'with an inviter' do