---
title: "Brokermint — Sync Transaction"
method: PUT
path: "/v1.0/brokermint/transaction"
tags: ["Lead Transaction"]
---

# Brokermint — Sync Transaction

`PUT /v1.0/brokermint/transaction`

Callback endpoint for Brokermint integration to sync transaction updates into Lofty.

The transaction must be linked to Brokermint via the Lofty UI before this endpoint can update it. See the request body schema for supported fields.

## Headers

- `Authorization` string, required
- `Content-Type` string, required

## Request body

- IncomingTransaction — Brokermint-sourced transaction payload.
  - `id` integer, required — Lofty transaction ID to update. Required; used to look up the existing Lofty transaction and the Brokermint-link record in bm_task_item.
  - `agentId` integer — Lofty user ID of the agent who will own the transaction. Overwrites the existing ownerId.
  - `agentName` string — Agent's display name. Currently ignored by the handler.
  - `address` string — Street address of the property. Overwrites the stored property address when provided.
  - `city` string — City of the property. Overwrites the stored value when provided.
  - `state` string — State or province of the property. Overwrites the stored value when provided.
  - `zip` string — Postal / ZIP code of the property. Overwrites the stored value when provided.
  - `status` 'Closed' | 'Cancelled' — Transaction status from Brokermint. Only the values "Closed" and "Cancelled" trigger a pipeline status change on the Lofty side; any other value is silently ignored.
  - `transactionType` 'Purchase' | 'Listing' | 'Lease' | 'Other' — Transaction type. Case-sensitive. Only the four values below are recognized; any other value is silently ignored.
  - `price` number — Home price; mapped to Lofty's homePrice field.
  - `representing` string — Side the agent represented in the deal. Currently ignored by the handler.
  - `acceptanceDate` string, date-time — Offer acceptance date. Currently ignored by the handler.
  - `expirationDate` string, date-time — Listing / contract expiration date. Mapped to Lofty's expiration field.
  - `closedAt` string, date-time — Actual close date. Mapped to Lofty's closeTime field.
  - `closingDate` string, date-time — Scheduled closing date. Mapped to Lofty's expectedCloseTime field (note: the Brokermint term "closing date" is interpreted as "expected close" on the Lofty side).

## Response `200`

Envelope {code, message}. code=0 indicates applied; code=200060 indicates the transaction was not found (either the Brokermint link is missing or the transaction was deleted). HTTP status is 200 in both cases.

- TransactionCallbackResponse — Simple envelope response used by Brokermint webhook and property-address endpoints. Business failures surface as HTTP 200 with a non-zero code; integrators must inspect the code field.
  - `code` integer — Business result code. 0 indicates success; non-zero values indicate a business failure (e.g. 200060 TRANSACTION_NOT_EXIST).
  - `message` string — Human-readable message that accompanies the code.

## Other responses

- `401` — Missing or invalid authentication token.
- `500` — Internal server error.

---

[API](https://skmtc.net/lofty/apis/lofty-service-open-apis.md) · [All operations](https://skmtc.net/lofty/apis/lofty-service-open-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/lofty/lofty-service-open-apis/revisions/23e640467118/schema)
