E-signature

In-house e-signature for a TMS

📅2026
2 weeks
👥1 developer
🔒 sign.your-tms.com/esign/signBroker-Carrier Agreement · 23 pagesp. 21BROKER–CARRIER AGREEMENTCARRIERSIGNATUREПідписати угодуЗаповніть дані — вони впишуться в документ і вашу карткуCarrier nameACME CARRIER LLCUSDOT #1234567MC #987654ПідписНадрукуватиНамалюватиЗавантажитиЯ погоджуюсь підписати електронно (ESIGN/UETA)Підписати документ ✓
$0
per document
2
document types
3
signing methods

Challenge

A freight company's TMS needs two document types signed — the Broker-Carrier Agreement during carrier onboarding and a Rate Confirmation for every load. This used to mean printing, signing by hand, scanning and mailing. External services (DocuSign, Dropbox Sign) charge per document and add a third-party dependency. What was needed: an in-house signing engine, legally sufficient under ESIGN/UETA, with a full audit trail.

What was built

An in-house e-signature engine built on top of the existing PDF-generation infrastructure. A single engine serves both document types. The carrier signs via a public token link from their phone — no login, no app install.

1

One engine, two documents

Broker-Carrier Agreement (Setup) and Rate Confirmation, a shared request table with document type and entity binding.

2

Stamping over the PDF (FPDI)

the fixed 23-page legal document is never re-typeset; fields and signature are stamped on top at exact coordinates.

3

Signing page = intake form

the carrier fills in their own data (USDOT, MC, address) which is both stamped into the PDF and used to create the carrier card.

4

3 signing methods

type (cursive font), draw (signature_pad) or upload an image; all normalized to PNG for stamping.

5

Split page

full PDF in an iframe on the left (read-only), form with a live preview of the signature block on the right that fills as you type.

6

Branded link domain

a dedicated signing subdomain (sign.*) instead of the internal one, for carrier trust.

7

Audit trail

IP, User-Agent, signing method, statuses sent → viewed → signed; the link is valid for 1 hour from generation.

8

PDF calibrator

an internal tool to align stamp coordinates: drag x/y per field with a live preview of the stamped PDF.

9

Cross-deployment RateCon

the RateCon is produced in the loadboard system while signing is orchestrated in dispatch; shared DB and server-to-server calls.

10

Auto-notifications

Telegram and in-app notifications on signing (to admins and the request initiator).

Result

$0 per document instead of paying for DocuSign. A carrier signs the agreement and RateCon from their phone in a minute, with no printing or scans. The signed PDF lands on the card immediately, and data from the signing form auto-populates the carrier card. Legally sufficient for B2B under ESIGN/UETA — capturing IP, signing method and timestamp.

Tech stack

PHPYii2FPDI / FPDFMySQLsignature_pad.jsTelegram Bot API

Have a similar challenge?

Discuss a project

Next case

In-house product

Control Hub — mission control for projects