diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
new file mode 100644
index 0000000..6d4966c
--- /dev/null
+++ b/.github/workflows/release.yml
@@ -0,0 +1,36 @@
+name: Release Gem
+
+on:
+  push:
+    branches:
+      - master
+  workflow_dispatch:
+
+jobs:
+  release-transferzero-sdk:
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v2
+
+      - uses: ruby/setup-ruby@v1
+        with:
+          ruby-version: 3.2.2
+
+      - run: bundle install
+
+      - name: Publish the gem
+        run: |
+          mkdir -p $HOME/.gem
+          touch $HOME/.gem/credentials
+          chmod 0600 $HOME/.gem/credentials
+          printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
+          gem build *.gemspec
+          gem push *.gem
+        env:
+          GEM_HOST_API_KEY: "${{secrets.GH_RELEASER_RUBYGEMS_API_KEY}}"
+
+      - name: Tag the release
+        run: |
+          NEXT_TAG=$(awk '/VERSION/{print $3}' lib/transferzero-sdk/version.rb | tr -d "'")
+          git tag $NEXT_TAG
+          git push --tags
diff --git a/lib/transferzero-sdk/version.rb b/lib/transferzero-sdk/version.rb
index 30cf95a..58f90d9 100644
--- a/lib/transferzero-sdk/version.rb
+++ b/lib/transferzero-sdk/version.rb
@@ -11,5 +11,5 @@
 =end
 
 module TransferZero
-  VERSION = '1.27.5'
+  VERSION = '1.27.7'
 end