Research & Deep Dives

Comparison & Guides

Efficiency

Product Spotlights & Reviews

Efficiency

Insights & Industry Commentary

Efficiency

Saturday, December 13, 2025

Ship Your First E-Signature Flow Fast with Firma: A Developer Quickstart

Illustration of an open toolbox with colorful tools, including wrenches, screwdrivers, and a hammer. Floating hex nuts add a playful tone. Logo "Firma.dev" at the top left.
Illustration of an open toolbox with colorful tools, including wrenches, screwdrivers, and a hammer. Floating hex nuts add a playful tone. Logo "Firma.dev" at the top left.
Illustration of an open toolbox with colorful tools, including wrenches, screwdrivers, and a hammer. Floating hex nuts add a playful tone. Logo "Firma.dev" at the top left.

Are you a developer and already have your Firma account? Perfect. This guide gets you from “API key in hand” to a live, embedded signing flow. We’ll keep it lean, focus on decisions, and link you straight to working snippets in the docs.

Looking for the Non-technical guide? Click here.

What you’ll do

  1. Model customer isolation with Workspaces

  2. Create a reusable Template

  3. Send a Signing Request

  4. Embed the signing experience or redirect

  5. Track everything with Webhooks

Pricing is simple. It’s $0.029 per envelope, with your first 25 envelopes free so you can build and test end to end.

Prereqs

Company or workspace API key from your dashboard

  • A PDF you can turn into a template

  • A place to run server code for JWT generation and webhooks

Need a refresher on the overall flow? See the Complete Setup Guide.

1) Create a workspace for each customer

Workspaces give every customer a private, partitioned space with isolated templates, documents, and usage. It’s the cleanest way to build SaaS-style multi‑tenant separation without leaking data across customers.

Create a workspace
https://docs.firma.dev/api-reference/v01.00.01/workspaces/create-a-new-workspace

Helpful: workspace settings like email copy and timezone are per‑workspace.

Workspace settings guide
https://docs.firma.dev/guides/workspace-settings

2) Create a reusable template

Templates hold the PDF plus roles and fields, so you can send the same document many times with different recipients.

Create Template (API)
https://docs.firma.dev/api-reference/v01.00.01/templates/create-template

Option A: Let users design templates inside your app

Embed the template editor with a short‑lived JWT.

Embeddable template editor (guide)
https://docs.firma.dev/guides/embeddable-template-editor

Generate the token server‑side.

Generate JWT for template embedding
https://docs.firma.dev/api-reference/v01.00.01/jwt-management/generate-jwt-token-for-embedding-templates

3) Create the signing request

Turn your template into a live transaction. You can also create from a raw PDF if you prefer. The reference covers recipients, fields, reminders, and validation rules.

Create Signing Request
https://docs.firma.dev/api-reference/v01.00.01/signing-requests/create-signing-request

Optional: let business users fill details and send from your UI

Embed the signing request editor with a 7‑day JWT.

Embeddable signing request editor (guide)
https://docs.firma.dev/guides/embeddable-signing-request-editor

Generate the JWT server‑side.

Generate JWT for signing request editor
https://docs.firma.dev/api-reference/v01.00.01/jwt-management/generate-jwt-token-for-signing-request

4) Send the signing request

When you are ready, trigger the send.

Send signing request
https://docs.firma.dev/api-reference/v01.00.01/signing-requests/send-signing-request

5) Deliver signing inside your product or via redirect

Embedded signing

Each recipient signs at a unique URL that follows this pattern:

https://app.firma.dev/signing/{signing_request_user_id}.

Embeddable signing (iframe pattern and tips)
https://docs.firma.dev/guides/embeddable-signing

You’ll fetch the signing_request_user_id from the API.

Get signing request users
https://docs.firma.dev/api-reference/v01.00.01/signing-requests/get-signing-request-users

Redirect signing

Alternatively, you can send recipients to the hosted signing interface. See the same guide above for details.

6) Track everything with webhooks

Listen for events like created, sent, viewed, signed, and completed to update your system in real time. The guide includes HMAC verification, rotation, retries, and a production checklist.

Webhooks guide
https://docs.firma.dev/guides/webhooks
Create webhook (API)
https://docs.firma.dev/api-reference/v01.00.01/webhooks/create-webhook

Architecture quick notes

  • JWTs. Generate them server‑side. Template editor tokens are short‑lived; signing request editor tokens expire after 7 days.

  • Workspaces for SaaS. Keep customers fully partitioned. Your operators still work from a single API.

  • Pricing and rollout. Start on included free envelopes, then go live. No minimums. $0.029 per envelope.

What's next?

  1. Hook up your first workspace

  2. Add a template

  3. Send your first request

  4. Choose embed or redirect

  5. Wire up webhooks

👉 Get your API key now - no credit card required.

  1. Heading

Background Image

Ready to add e-signatures to your application?

Get started for free. No credit card required. Pay only $0.029 per envelope when you're ready to go live.

Background Image

Ready to add e-signatures to your application?

Get started for free. No credit card required. Pay only $0.029 per envelope when you're ready to go live.

Background Image

Ready to add e-signatures to your application?

Get started for free. No credit card required. Pay only $0.029 per envelope when you're ready to go live.