Skip to main content

Tango AP Inbound (Payment Confirmation) API

Generated from Tango AP Inbound API Integration Design Specification V1.2.docx in SharePoint folder 02 Lease Integrations. OAS spec: ap-inbound-api.yaml

Overview

Async REST API for posting AP check confirmations back to Tango after the client issues lease payments. Tango updates the Payments tab; payment status transitions to PAID or VOID. Owner: Tango Analytics Spec version: 1.2 Status: Draft (auto-generated — needs review)

Base URLs

Authentication

Headers x-client + x-api-key, required on every call.

Endpoints

PUT /v1/leasemgmt/payments

Response — 200 OK

GET /v1/batch/status?gu_id=...

Three response shapes (PROCESSING / COMPLETED / ERROR). On error, record_key is lease_payment_id; multiple errors for the same record are returned comma-separated.

Integration logic

  • lease_payment_id is the record key — must already exist in Tango (it’s the same ID Tango sent in AP Outbound).
  • Check Amount and Applied Amount may differ.
  • A payment can be VOID either before the check is issued OR after it was PAID (retraction).
  • Alternatively, the business may keep history by creating a credit invoice manually and marking the original payment VOID.

Data model

Validations

  1. invoice_header_id is NULL → Invoice_header_id is null
  2. lease_payment_id does not exist → lease_payment_id does not exist in Tango
  3. payment_status is NULL → payment_status is null
  4. payment_status not in (PAID, VOID) → payment_status does not match expected value
  5. check_number is NULL → check_number is null
  6. check_date is NULL → check_date is null
  7. check_date format not MM/DD/YYYY → check_date does not match expected format

Open Questions / Assumptions

  • Sample JSON sends numeric fields as strings ("check_amount": "309.00"). Schema uses number; consumers may need to coerce.
  • No explicit response for synchronous errors at PUT — assumed errors flow through the polled status response.
  • Lookup codes for payment statuses, etc., are <TBD> in source Appendix.

Changelog