Tango Sales Inbound API
Generated fromTango Sales Inbound API Integration Design Specification V1.1.docxin SharePoint folder02 Lease Integrations. OAS spec:sales-inbound-api.yaml
Overview
Async REST API: client posts monthly sales data to Tango for percentage-rent calculations. Sales data lands under the Percentage Rent tab of Lease Financials. The lease must be Active with a Percent Rent agreement also Active before data lands. Owner: Tango Analytics Spec version: 1.1 Status: Draft (auto-generated — needs review)Base URLs
Authentication
Headersx-client + x-api-key.
Endpoints
PUT /v1/leasemgmt/sales
Integration logic
- Either
lease_numberorstore_numbermust be present; both are needed if multiple leases attach to one store. - Percent rent calculations operate on Calendar Period / Calendar Year (not fiscal).
- Sales code is optional — the unique identifier is
(sales_exclusion, sales_category). - Data update: data received for the same month overwrites the previous run.
- Sales Forecast is replaced when Actual is later sent for the same month/year/category combination.
- Annual / Monthly CAP% logic: see source doc — applied when 12th period (annual) or each period (monthly) is
ACTUALand CAP% is set on the exclusion category.
Data model
Validations
- Both
store_numberandlease_numbermissing →Store Number/Lease Number cannot be blank - Invalid
lease_number→Lease Number is not valid - Invalid
store_number→Store Number is not valid - Lease status not active →
Lease status is not active for lease number <> - Percent Rent status not active →
Percent rent status should be ACTIVE sale_exclusionnot in lookup →sales_exclusion should have valid lookupssales_categorynot in lookup →sales_category should have valid lookupsactual_forecastnot (ACTUAL,FORECAST) →actual_forecast does not match expected valuesales_categorymissing →sales_category is missing or emptysales_categorynot configured in UI →sales setup missing for sales category: <>countrymissing →country cannot be blankeffective_from/effective_tooutside sales-setup dates →Sales setup missing for sales category: <> for store Number: <>
Open Questions / Assumptions
- Status URL typo: source doc lists
/v1batch/status(no slash betweenv1andbatch). Other Tango APIs use/v1/batch/status. The YAML preserves the doc verbatim — confirm and correct on next revision. - Pre-requisites: full sales/exclusion category list and percent-rent scenarios must be provided by the client before integration starts; changes later are change orders.
-
sales_codeis optional but is recommended as the lookupPERCENT_RENT_SALES_CODEvalue. - Monthly vs Annual CAP% — Cap Frequency on the Sales Setup defaults to ANNUAL if left blank. CAP% logic differs.
-
record_keyshape in error responses is a semicolon-joined tuplestore;cm;cy;category.

