Skip to content

Magic Auth

Magic Link

How Magic Link works in Paycux, what it is for, and the smallest setup that gets it running.

Introduction

Magic Link is part of the Paycux platform. This page explains what it does, when to reach for it, and the smallest working setup you can ship.

Everything below applies to both environments. Build and test in staging, then promote the same configuration to production without changing your code — only the API key and client ID differ.

What you’ll build

Before you start, make sure you have the following in place:

  • A Paycux account with access to the project you are configuring.
  • An API key for the environment you are working in. Staging keys start with sk_test_; production keys start with sk_live_.
  • Admin access on the system you are connecting, so you can create the application and read its metadata.
  • A redirect URI registered in the Paycux dashboard under Developer → Redirects.

Before getting started

Before getting started applies specifically to Magic Link. It behaves the same in both environments, and the values it depends on are visible in the dashboard for the environment you have selected.

If the behaviour you see does not match this description, check which environment your API key belongs to before anything else — a staging key against production data is the most common cause.

API object definitions

API object definitions is handled by Magic Link rather than by your application code. Paycux exposes it through the same API surface as the rest of the platform, so the client you already configured needs no additional setup.

Configuration lives in the dashboard and is versioned per environment. Change it in staging, confirm the behaviour, then apply the same change to production.

Magic Auth sends a six-digit code to the user's email address and exchanges a correct code for a session. There is no password to reset, phish or leak.

Codes expire after ten minutes and are single-use. Rate limit requests per email address so the endpoint cannot be used to send mail on your behalf.

Install the Paycux SDK

Install the SDK with your package manager, then read the API key from the environment rather than hard-coding it.

1npm install @paycux/node

Set secrets

Vault stores secrets encrypted with a key that never leaves the key manager. Your application sends plaintext and receives a ciphertext handle; the plaintext is never written to disk.

Keys can be Paycux-managed or supplied by the customer. Customer-managed keys let a customer revoke access to their own data without involving you.

Add a callback endpoint

Add a callback endpoint is handled by Magic Link rather than by your application code. Paycux exposes it through the same API surface as the rest of the platform, so the client you already configured needs no additional setup.

Configuration lives in the dashboard and is versioned per environment. Change it in staging, confirm the behaviour, then apply the same change to production.