Skip to main content
professional-services

Common Paper Professional Services Agreement

A professional services agreement with key terms, statement of work, and standard terms, based on Common Paper's standard form. Covers consulting and professional services engagements including deliverables, IP ownership, fees, and liability.

89 fields CC-BY-4.0 Source: Common Paper

Fill this template

With Claude Code

Just ask Claude — no installation required:

Fill the common-paper-professional-services-agreement template for my company

With the CLI

npx -y open-agreements@latest fill common-paper-professional-services-agreement -d values.json -o output.docx

With the hosted MCP

Add to your MCP config for zero-install access to all templates:

{
  "mcpServers": {
    "open-agreements": {
      "url": "https://openagreements.ai/api/mcp"
    }
  }
}

Fields (89)

Field Type Description
company_name string Official company name
provider_name string Official name of the Provider
customer_name string Official name of the Customer
key_terms_effective_date string Effective Date of Key Terms
custom_effective_date string Custom effective date
custom_sow_date string Custom SOW date
sow_number string Statement of Work number
term_duration_unit string Duration unit for term
custom_end_date string Custom end date
payment_terms string Payment terms
invoice_frequency_unit string Invoice frequency unit
services_description string Description of the Services to be performed, including key individuals, timeline, and milestones
provider_covered_claims_detail string Detail of Provider Covered Claims covering IP infringement, employee misclassification, and gross negligence
customer_covered_claims_detail string Detail of Customer Covered Claims covering IP infringement and gross negligence
dpa_description string Description of or reference to the Data Processing Agreement
term_duration_value string Numeric duration for the SOW term (e.g. "6", "12")
rejection_period_value string Number of time units for the deliverable rejection period
resubmission_period_value string Number of time units for the deliverable resubmission period
sow_changes_to_standard_terms string Changes to the Standard Terms that apply only to this SOW
changes_to_standard_terms string Changes to the Standard Terms that apply to the Agreement and all SOWs
fee_description string Description of fees including hourly, project, or milestone-based rates and pass-through charges
invoice_cadence string Cadence for sending invoices (e.g. monthly, quarterly, upon acceptance, after each milestone)
customer_obligations string Customer obligations such as identifying a point of contact or geographic limitations
increased_claim_other_detail string Description of a custom Increased Claim category
unlimited_claim_other_detail string Description of a custom Unlimited Claim category
additional_warranty_provider_detail string Additional warranty text provided by the Provider
additional_warranty_customer_detail string Additional warranty text provided by the Customer
other_security_certification string Name of additional security certification (e.g. "ISO 27701")
payment_terms_days string Days to pay after invoice
non_renewal_notice_days string Non-renewal notice days
general_cap_amount string General liability cap
cap_multiplier string Cap multiplier
increased_cap_amount string Increased cap amount
greater_of_dollar string Greater-of dollar amount
include_in_progress_deliverables boolean Set to true when in-progress work should be included as Deliverables in addition to completed projects.
deliverables_meet_specs boolean Set to true when Deliverables must meet attached specifications.
deliverables_acceptance_process boolean Set to true when Deliverables are subject to an acceptance process before being considered final.
ownership_upon_payment boolean Set to true when Customer owns Deliverables only upon full payment (not as they are created).
no_third_party_materials boolean Set to true when no Third-Party Materials will be incorporated into Deliverables.
has_third_party_materials boolean Set to true when Third-Party Materials will be incorporated into Deliverables.
provider_procures_materials boolean Set to true when Provider is responsible for procuring required Third-Party Materials.
customer_procures_materials boolean Set to true when Customer is responsible for procuring required Third-Party Materials.
additional_terms_by_provider boolean Set to true when Provider is adding additional terms to the agreement. Specify terms in additional_warranty_provider_detail.
additional_terms_by_customer boolean Set to true when Customer is adding additional terms to the agreement. Specify terms in additional_warranty_customer_detail.
has_security_policy boolean Set to true when Provider has a Security Policy available at the specified DPA reference URL.
has_security_certifications boolean Set to true when Provider maintains annually updated security reports or certifications.
cert_iso_27001 boolean Set to true when Provider holds ISO 27001 certification.
cert_penetration_testing boolean Set to true when Provider performs regular penetration testing.
cert_soc2_type1 boolean Set to true when Provider holds SOC 2 Type I certification.
cert_pci_level1 boolean Set to true when Provider holds PCI Level 1 certification.
cert_soc2_type2 boolean Set to true when Provider holds SOC 2 Type II certification.
cert_pci_level2 boolean Set to true when Provider holds PCI Level 2 certification.
cert_hitrust boolean Set to true when Provider holds HITRUST certification.
cert_fedramp boolean Set to true when Provider holds FedRAMP Authorization.
cert_other boolean Set to true to include an additional security certification. Specify the certification in other_security_certification.
provider_may_use_logo boolean Set to true when Provider may publicly identify Customer and use Customer's logo and trademarks in promotional materials.
provider_may_identify_nonpublic boolean Set to true when Provider may identify Customer as a customer in non-public settings (e.g., sales conversations).
general_cap_type enum How the General Cap Amount (baseline liability limit) is calculated. "multiplier" uses a multiple of fees, "dollar" uses a fixed amount, "greater_of" uses the greater of a dollar amount or a multiple of fees.
increased_cap_type enum How the Increased Cap Amount (higher liability limit for Increased Claims) is calculated. Same options as general_cap_type.
increased_claim_breach_privacy boolean Set to true when breach of Section 3 (Privacy & Security) should be classified as an Increased Claim with a higher liability cap.
increased_claim_breach_conf boolean Set to true when breach of Section 11 (Confidentiality) should be classified as an Increased Claim (excluding Privacy & Security breaches).
increased_claim_indemnification boolean Set to true when indemnification obligations for Covered Claims should be classified as an Increased Claim.
increased_claim_breach_privacy_gross boolean Set to true when breach of Privacy & Security resulting from gross negligence or willful misconduct is an Increased Claim.
increased_claim_breach_conf_gross boolean Set to true when breach of Confidentiality resulting from gross negligence or willful misconduct is an Increased Claim.
increased_claim_gross_willful boolean Set to true when claims from gross negligence or willful misconduct should be classified as Increased Claims.
increased_claim_other boolean Set to true to include a custom Increased Claim category. Specify in increased_claim_other_detail.
unlimited_claim_breach_privacy_gross boolean Set to true when breach of Privacy & Security resulting from gross negligence should have no liability cap (Unlimited Claim).
unlimited_claim_breach_conf_gross boolean Set to true when breach of Confidentiality resulting from gross negligence should have no liability cap (Unlimited Claim).
unlimited_claim_indemnification boolean Set to true when indemnification for Covered Claims should have no liability cap (Unlimited Claim).
unlimited_claim_breach_privacy boolean Set to true when breach of Section 3 (Privacy & Security) should have no liability cap (Unlimited Claim).
unlimited_claim_breach_conf boolean Set to true when breach of Section 11 (Confidentiality) should have no liability cap (Unlimited Claim).
unlimited_claim_gross_willful boolean Set to true when claims from gross negligence or willful misconduct should have no liability cap (Unlimited Claim).
unlimited_claim_other boolean Set to true to include a custom Unlimited Claim category. Specify in unlimited_claim_other_detail.
governing_law string Governing law
jurisdiction string Jurisdiction
travel_expense_policy string Travel and expense policy
customer_owned_deliverables string Customer-owned deliverables
support_policy_reference string Support policy reference
dpa_reference string DPA reference
provider_signatory_type enum Whether the Provider signatory is an entity or individual
provider_signatory_name string Full legal name of the Provider's signatory
provider_signatory_title string Title/role of the Provider's signatory (entity only)
provider_signatory_company string Company name for the Provider signatory (entity only)
provider_signatory_email string Notice email address for the Provider
customer_signatory_type enum Whether the Customer signatory is an entity or individual
customer_signatory_name string Full legal name of the Customer's signatory
customer_signatory_title string Title/role of the Customer's signatory (entity only)
customer_signatory_company string Company name for the Customer signatory (entity only)
customer_signatory_email string Notice email address for the Customer

Browse more templates

View all templates