Docs
Firmly Agentic Commerce
Set theme to dark (⇧+D)

Agreement signing

The merchant reviews Firmly’s merchant agreement, fills in the participation details, and signs. The signature is captured with audit metadata (signer email, timestamp, client location, agreement version, and signing browser) so Firmly always has a verifiable record of which agreement version was in effect at any moment.

The same surface is reused after onboarding whenever there is a new agreement version to acknowledge.

​​ Two states on the same surface

​​ Not yet signed

The page renders the agreement PDF for review plus a participation form. The form collects the following; all except Company Address are required to enable the Sign button:

  • Company Legal Name
  • Company Address (optional)
  • Signer Name
  • Signer Title
  • Signer Email
  • Signer Phone
  • “I have read and accept the terms” checkbox

Prefill from KYB. When the merchant has already filled in company / contact info on the Know Your Business page, those values are prefilled into the participation form so the merchant only has to confirm them.

​​ Already signed

The page shows a “Signed” confirmation card with:

  • Signer’s email
  • Signing timestamp
  • Client location

​​ Audit metadata captured on submit

Every signature is recorded with a tamper-evident audit trail so Firmly can always show which agreement version a merchant accepted, and when. Captured with each signature:

  • Signer email
  • Signing timestamp
  • Client location (IP-derived)
  • Agreement version
  • The signing browser (from the browser’s user-agent string)

​​ First-time signing advances onboarding

A successful sign invalidates cached dashboard data and redirects back to the merchant home. During onboarding, that lands the merchant back in the task menu with the agreement step marked complete.

​​ Re-signing for new versions

When Firmly publishes a new agreement version, the page automatically flips back to its “needs signature” state on the merchant’s next visit, with the new version’s PDF and a fresh participation form. The previous signed record stays in the audit log; the merchant just has to acknowledge the new terms.

​​ Externally-signed merchants

Some merchants sign the agreement out-of-band (e.g. via a paper contract). For those, the page surfaces an “externally signed” state with the relevant prefill information instead of asking for a click-through signature.

​​ Gating

  • KYB-gated during onboarding. The agreement task stays locked until KYB is approved. See Onboarding wizard.