> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pdfdyno.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Service Contract

> A legal contract template with sections, clauses, and signature fields.

<Frame>
  <img src="https://mintcdn.com/pdf-dyno/pat72jpBFeHUuLAU/images/templates/contract.png?fit=max&auto=format&n=pat72jpBFeHUuLAU&q=85&s=81011e416640d39de52957d08927993d" alt="Service Contract Preview" width="670" height="863" data-path="images/templates/contract.png" />
</Frame>

Generate automated legal agreements with dynamic participant data and standard clauses.

<CodeGroup>
  ```typst template.typ theme={null}
  #set page(paper: "us-letter", margin: 2.5cm)
  #set text(font: "Times", size: 11pt, fill: rgb("#111827"))

  #align(center)[
    #text(size: 16pt, weight: "bold")[#data.title] \
    #v(5pt)
    #text(size: 10pt, fill: luma(100))[Effective Date: #data.effective_date]
  ]

  #v(1cm)

  This Service Contract ("Agreement") is entered into by and between:

  #v(0.5cm)

  *Provider:* #data.provider.name, located at #data.provider.address ("Provider"), and \
  *Client:* #data.client.name, located at #data.client.address ("Client").

  #v(1cm)

  #set heading(numbering: "1.")
  #show heading: it => [
    #v(0.5em)
    #text(weight: "bold", size: 11pt)[#it]
    #v(0.5em)
  ]

  = Services Provided
  The Provider agrees to perform the following services for the Client:
  #data.services

  = Payment Terms
  The Client agrees to pay the Provider a total fee of *#data.payment.amount*. Payment shall be made according to the following schedule: #data.payment.schedule.

  = Term and Termination
  This Agreement shall commence on the Effective Date and shall continue until #data.termination_date, unless terminated earlier by either party upon #data.notice_period days written notice.

  = Confidentiality
  Both parties agree to maintain the confidentiality of any proprietary information shared during the term of this Agreement.

  #v(2cm)

  *IN WITNESS WHEREOF*, the parties have executed this Agreement as of the Effective Date.

  #v(1cm)

  #grid(
    columns: (1fr, 1fr),
    [
      #line(length: 6cm)
      #v(5pt)
      *Provider Signature* \
      #data.provider.name \
      Date: __________________
    ],
    [
      #line(length: 6cm)
      #v(5pt)
      *Client Signature* \
      #data.client.name \
      Date: __________________
    ]
  )
  ```

  ```json data.json theme={null}
  {
    "title": "SOFTWARE DEVELOPMENT CONTRACT",
    "effective_date": "August 15, 2026",
    "provider": {
      "name": "DevStudio LLC",
      "address": "123 Code Lane, Developer City, DC 12345"
    },
    "client": {
      "name": "Acme Startup Inc.",
      "address": "456 Innovation Blvd, Tech Town, TT 67890"
    },
    "services": "Development of a custom mobile application as outlined in Appendix A.",
    "payment": {
      "amount": "$25,000.00",
      "schedule": "50% upfront, 50% upon final delivery"
    },
    "termination_date": "December 31, 2026",
    "notice_period": "30"
  }
  ```

  ```bash cURL (Try It) theme={null}
  # 1. Save the Typst code from the tab above as 'template.typ'
  # 2. Save the JSON data from the tab above as 'data.json'

  # 3. Combine them and call the API (requires jq)
  jq -n \
    --arg t "$(cat template.typ)" \
    --argjson d "$(<data.json)" \
    '{ "data": $d, "template": $t }' > request.json

  curl -X POST https://api.pdfdyno.com/v1/pdf/generate \
    -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d @request.json \
    --output contract.pdf
  ```
</CodeGroup>
