Leads

Create a revenue item for a lead

Record revenue against a referral. Supports upsert via external_identifier: sending the same value again for the same referral updates that revenue item instead of adding another, and also returns 201. Unpaid commission invoices on the referral are recalculated straight away.

Look up the referral by slug (default), id, email, company_name, or external ID using the ?by= query param. Requires payment_write permission.

post/leads/{lead_identifier}/revenue_items

Request

  • Base URL: https://api.lassotech.com/api/v1/rest
  • URL: https://api.lassotech.com/api/v1/rest/leads/{lead_identifier}/revenue_items
  • Auth: API key in header x-lasso-access-token

Path parameters

lead_identifierstring required

Lead identifier (slug by default, or value matching by param)

Query parameters

by'slug' | 'id' | 'email' | 'company_name' | 'external'

How to read the referral identifier in the path. See Resource Lookup.

external_system_typestring

Required when by=external. e.g. HUBSPOT, SALESFORCE, PIPEDRIVE

external_object_typestring

Required when by=external (optional for a Salesforce partner). e.g. company, deal, opportunity, account

Request body

amountnumber float required

Revenue amount, as a plain decimal number or string (1000, "1000.50", -250). Negative amounts are accepted for refunds and credit memos, and reduce the revenue share earned in the period they are recorded in. Missing is a 422 with REQUIRED; anything else that is not a plain decimal ("1,000", "1e3") is a 422 with INVALID.

currencystring

ISO currency code. Defaults to the account currency for a new item; an updated item keeps its currency unless you send one.

descriptionstring nullable

Optional description. On an update, omitting it keeps the existing description and null clears it.

external_identifierstring nullable

Your identifier for this revenue record (e.g. the billing system's invoice or credit memo id). Re-sending the same value for the same referral updates the existing revenue item instead of creating a duplicate, so the call is safe to retry.

external_sub_identifierstring nullable

A secondary reference stored with the item, such as a line ID. Not used for matching.

recorded_atstring date nullable

The date the revenue belongs to, as an ISO 8601 date (defaults to now). An invalid date is a 422 with INVALID.

Example request

{
  "amount": 1000,
  "currency": "USD",
  "recorded_at": "2026-01-15"
}

Response

Revenue item created, or updated when external_identifier matched an existing one

Changes

No recorded changes to this operation across all 1 revision of this API.