> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tangoanalytics.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Ap outbound file

# Tango AP Outbound — File

> Generated from `Tango AP Outbound Integration Design Specification V1.6.docx` in SharePoint folder `02 Lease Integrations`.
> OAS spec: [`ap-outbound-file.yaml`](./ap-outbound-file.yaml)

## Overview

SFTP file-based outbound integration. Tango writes approved lease payments (header + detail) as a pipe-delimited text file to its SFTP server. After export, payments are flagged `Exported to AP`.

**Owner:** Tango Analytics
**Spec version:** 1.6
**Status:** Draft (auto-generated — needs review)

## Transport

| Attribute | Value | |
| - | - | - |
| Direction | Outbound (Tango → Client) | |
| Mechanism | SFTP file drop | |
| File format | Pipe-delimited (\` | `) text, `.txt\` |
| File naming | `{ClientCode}_apout_MMDDYYYYHHMMSS.txt` | |
| Production host | `sftp.tangoanalytics.com` | |
| Test host | `sftpdev.tangoanalytics.com` | |
| Path | `/outbound/ap` | |
| Auth | SFTP user/password (TBD) | |
| Frequency | TBD | |

## Integration logic

* Approved payments in approved batches are exported.
* Zero-dollar payments excluded.
* No approved payments → no file generated.
* After export, payments flagged `Exported to AP`.
* Tango validates Vendor ID; missing → error email + service log entry.
* `LEASE_PAYMENT_ID` is the reconciliation key (round-trips through AP Inbound).
* `PAYMENT_CURRENCY` fallback: if blank, file uses `CURRENCY`'s value.

## Data fields (required ✅)

| Field | Type | Req | Notes |
| - | - | - | - |
| `LEASE_NUMBER` | VARCHAR | ✅ | |
| `LEASE_STATUS` | VARCHAR | ✅ | e.g., `Active`, `Draft` |
| `TERM_STATUS` | VARCHAR | ✅ | |
| `LOCATION_NUMBER` | VARCHAR | – | |
| `VENDOR_NUMBER` | VARCHAR | ✅ | |
| `INVOICE_DESC` | VARCHAR | – | Category, e.g., Rent |
| `PAYMENT_TYPE` | VARCHAR | ✅ | CAM, Base Rent, Insurance, etc. |
| `EFFECTIVE_DATE` / `APPLIES_FROM_DATE` / `TO_DATE` / `DUE_DATE` | DATE | ✅ | `MM/DD/YYYY` |
| `CREATION_DATE` | DATE | – | |
| `GROSS_AMOUNT` | NUMBER | – | Net + tax |
| `TAX_AMOUNT1` / `TAX_AMOUNT2` / `TAX_AMOUNT` | NUMBER | – | |
| `NET_AMOUNT` | NUMBER | – | Gross − taxes |
| `PAYMENT_STATUS` | VARCHAR | – | Approved, Paid… |
| `TAX_RATE` / `CURRENCY` / `PAYMENT_CURRENCY` | VARCHAR | – | Payment\_currency falls back to currency if blank |
| `CONSUMPTION` / `CONSUMPTION_UOM` | VARCHAR | – | |
| `ACCOUNTING_STRING` / `GL_ACCOUNT` | VARCHAR | – | |
| `INVOICE_NUMBER` / `INVOICE_DATE` / `INVOICE_ID` | various | – | |
| `LEASE_PAYMENT_ID` | NUMBER | ✅ | Reconciliation key |
| `REMIT_MESSAGE` | VARCHAR | – | |
| `SEGMENT1`–`SEGMENT6` / `SEGMENT*_GL` | VARCHAR | – | |
| `EXTATTRIBUTE1`–`EXTATTRIBUTE10` | VARCHAR | – | |

## Validations

| Condition | Error message |
| - | - |
| Vendor ID missing | `Vendor ID is not present` |

## Open Questions / Assumptions

* [ ] **SFTP credentials** are `<TBD>`.
* [ ] **Timing/frequency** is `<TBD>`.
* [ ] **Email recipient** is `<email-id>` placeholder.
* [ ] **Lookup codes** are `<TBD>` in Appendix.

## Changelog

| Ver | Date | Description | Author |
| - | - | - | - |
| 0.1–1.5 | 2020-2023 | (see source doc) | Various |
| 1.6 | 07/22/2025 | Updated Validations table | Rahma Ouedraogo |
