ProThis feature requires a Pro subscription.

Update Kleer Agreement

Updates an existing agreement in Kleer using the enrolled deal's input fields and line items. Designed for "change" deals — when a customer upgrades, downgrades, or renews, a new deal represents the change, and this action applies it to the corresponding Kleer agreement.

Workflow Type

Deal-based — This action is available in deal workflows.

Prerequisites

  • The deal must have the Kleer Agreement ID property (kleer_agreement_id) set to the ID of the agreement you want to update
  • The deal's line items represent the new full row set for the agreement (see the warning below)

Input Fields

Same fields as Create Agreement. All fields are optional — only the fields you set are sent to Kleer.

Field Type Description
Name Text Agreement name/description
Start Date Text Agreement start date in YYYY-MM-DD format
Start Invoice Date Text Date of first invoice in YYYY-MM-DD format
End Date Text Agreement end date in YYYY-MM-DD format
Your Reference Text Customer's reference
Payment Days Text Number of days until payment is due
Invoice Interval (Months) Text Billing interval in months (e.g. 1, 3, 12)
Currency Text Currency code
Invoice Day Text When to generate invoices
PO Number Text Purchase order number

Behavior

  • The action reads the enrolled deal, its associated company, and its line items
  • It uses the deal's kleer_agreement_id to identify which Kleer agreement to update
  • The agreement is updated in Kleer with the provided field values and line items
  • The updated agreement is immediately synced back to HubSpot — the linked subscription is refreshed without waiting for the next scheduled sync

Line items are an overwrite, not an append

The line items on the deal replace the agreement's full row set in Kleer. Any rows that were on the agreement before but are not on this deal will be removed. If you want to add a row while keeping existing ones, include both the old and the new line items on the deal.

The associated client cannot be changed

Kleer's agreement update endpoint does not allow changing the client (the client-ref) on an existing agreement — the client is fixed at creation. Changing the company associated with the deal does not transfer the agreement to a different client in Kleer. If you need a different client, create a new agreement instead.

Diff invoice

If Kleer's "create diff invoice" setting is enabled in your Kleer account, Kleer may automatically generate a diff invoice when the update changes the billed amount. The integration ignores the returned diff invoice ID — it will be picked up by the next outbound invoice sync.

Tips

  • Create a separate "change" deal (e.g. with a "Subscription Change" pipeline) and set its kleer_agreement_id to the agreement being changed
  • Use a workflow that fires this action when the change deal reaches the closed-won stage
  • Because the action targets a specific agreement ID, each change deal applies one update to one agreement