> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.propexo.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.propexo.com/_mcp/server.

# Create Payable Register: Yardi

POST https://api.propexo.com/v1/payable-registers/yardi/
Content-Type: application/json

Create Payable Register: Yardi| Interface        | Method                |
| ---------------- | --------------------- |
| Vendor Invoicing | ImportInvoiceRegister |Due to PMS limitations, the ID of the created record cannot be retrieved. This will be found on the next data sync.

Reference: https://docs.propexo.com/api-reference/yardi/invoices/create-payable-register-yardi

## Authentication

- `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer <token>`, where token is your auth token.

## Servers

- `https://api.propexo.com` (Production, default)
- `https://api.sandbox.propexo.com` (Sandbox)

## Request

### Body (application/json)

This endpoint expects a _v1_payable-registers_yardi__post_input.

- `integration_id` (string, required) — The Propexo unique identifier for the integration
- `vendor_id` (string, required) — The Propexo unique identifier for the vendor
- `invoice_number` (string, required) — The invoice or reference number that the vendor assigned to the service request. Must be unique per vendor.
- `invoice_date` (V1PayableRegistersYardiPostInputInvoiceDate, required) — The date of issuance for the invoice
- `total_amount_in_cents` (double, required) — The amount of the payable register, in cents. Total amount must match the sum of the payable register items' amounts
- `payable_register_items` (list of V1PayableRegistersYardiPostInputPayableRegisterItemsItems, required) — A list of payable register line items. At least one is required.
- `ap_financial_account_id` (string, optional) — The Propexo unique identifier for the financial account. You'll likely want to work with your customer to know what value is appropriate here.
- `cash_financial_account_id` (string, optional) — The Propexo unique identifier for the financial account. Must be the cash account ID associated with the property passed in the payable register items. You'll likely want to work with your customer to know what value is appropriate here.
- `discount_amount_in_cents` (double, optional) — The discount, in cents, of the payable register
- `discount_date` (V1PayableRegistersYardiPostInputDiscountDate, optional) — The date a discount was issued on payable register
- `discount_percent` (string, optional) — The discount percentage of the payable register
- `due_date` (V1PayableRegistersYardiPostInputDueDate, optional) — The due date associated with the payable register
- `display_type` (string, optional) — The display type of the payable register. You'll likely want to work with your customer to know what value is appropriate here.
- `expense_type` (string, optional) — The expense type of the payable register. This is a customer defined list and you'll likely want to work with your customer to know what value is appropriate here.
- `is_adjustment` (boolean, optional) — Whether the payable register is an adjustment or not
- `is_credit_memo` (boolean, optional) — Whether the payable register is a credit memo or not
- `is_consolidate_checks` (boolean, optional) — Whether the payable register should consolidate checks or not
- `is_exempt_from_1099` (boolean, optional) — Whether the payable register is exempt from a 1099 or not
- `invoice_status` (enum, optional) — The status of the payable register
  - Allowed values: `READY`, `KEYED`, `WORKFLOW`, `APPROVED`, `POSTED`, `OTHER`
- `notes` (string, optional) — Notes associated with the payable register
- `user_defined_field_2` (string, optional) — The 2nd user defined field of the payable register. You'll likely want to work with your customer to know what value is appropriate here.
- `user_defined_field_3` (string, optional) — The 3rd user defined field of the payable register. You'll likely want to work with your customer to know what value is appropriate here.
- `user_defined_field_4` (string, optional) — The 4th user defined field of the payable register. You'll likely want to work with your customer to know what value is appropriate here.
- `user_defined_field_5` (string, optional) — The 5th user defined field of the payable register. You'll likely want to work with your customer to know what value is appropriate here.
- `user_defined_field_6` (string, optional) — The 6th user defined field of the payable register. You'll likely want to work with your customer to know what value is appropriate here.

## Response

### 200

Successful response

- `meta` (V1PayableRegistersYardiPostOutputMeta, required)
- `result` (V1PayableRegistersYardiPostOutputResult, required)

## Errors

### 400 Bad Request Error

Bad Request

- `error` (ErrorResponseError, required)

## Types

### V1PayableRegistersYardiPostInputInvoiceDate

The date of issuance for the invoice

### V1PayableRegistersYardiPostInputPayableRegisterItemsItems

- `property_id` (string, required) — The Propexo unique identifier for the property
- `total_amount_in_cents` (double, required) — The amount of the payable register item, in cents. If also passing in a purchase order item, the total amount cannot be greater than the associated purchase order.
- `financial_account_id` (string, optional) — The Propexo unique identifier for the financial account. You'll likely want to work with your customer to know what value is appropriate here.
- `cash_financial_account_id` (string, optional) — The Propexo unique identifier for the financial account. You'll likely want to work with your customer to know what value is appropriate here.
- `purchase_order_item_id` (string, optional) — The Propexo unique identifier for the purchase order item. This Purchase Order Item must be associated with the same property.
- `notes` (string, optional) — Notes associated with the payable register item

### V1PayableRegistersYardiPostInputDiscountDate

The date a discount was issued on payable register

### V1PayableRegistersYardiPostInputDueDate

The due date associated with the payable register

### V1PayableRegistersYardiPostOutputMeta

- `job_id` (string, required)

### V1PayableRegistersYardiPostOutputResult

- `integration_id` (string, required) — The Propexo unique identifier for the integration
- `vendor_id` (string, required) — The Propexo unique identifier for the vendor
- `ap_financial_account_id` (string, required, nullable) — The Propexo unique identifier for the financial account. You'll likely want to work with your customer to know what value is appropriate here.
- `cash_financial_account_id` (string, required, nullable) — The Propexo unique identifier for the financial account. Must be the cash account ID associated with the property passed in the payable register items. You'll likely want to work with your customer to know what value is appropriate here.
- `invoice_number` (string, required) — The invoice or reference number that the vendor assigned to the service request. Must be unique per vendor.
- `invoice_date` (V1PayableRegistersYardiPostOutputResultInvoiceDate, required, nullable)
- `total_amount_in_cents` (double, required) — The amount of the payable register, in cents. Total amount must match the sum of the payable register items' amounts
- `discount_amount_in_cents` (double, required, nullable) — The discount, in cents, of the payable register
- `discount_date` (V1PayableRegistersYardiPostOutputResultDiscountDate, required, nullable) — The date a discount was issued on payable register
- `discount_percent` (string, required, nullable) — The discount percentage of the payable register
- `due_date` (V1PayableRegistersYardiPostOutputResultDueDate, required, nullable) — The due date associated with the payable register
- `display_type` (string, required, nullable) — The display type of the payable register. You'll likely want to work with your customer to know what value is appropriate here.
- `expense_type` (string, required, nullable) — The expense type of the payable register. This is a customer defined list and you'll likely want to work with your customer to know what value is appropriate here.
- `is_adjustment` (boolean, required, nullable) — Whether the payable register is an adjustment or not
- `is_credit_memo` (boolean, required, nullable) — Whether the payable register is a credit memo or not
- `is_consolidate_checks` (boolean, required, nullable) — Whether the payable register should consolidate checks or not
- `is_exempt_from_1099` (boolean, required, nullable) — Whether the payable register is exempt from a 1099 or not
- `invoice_status` (enum, required) — The status of the payable register
  - Allowed values: `READY`, `KEYED`, `WORKFLOW`, `APPROVED`, `POSTED`, `OTHER`
- `notes` (string, required, nullable) — Notes associated with the payable register
- `user_defined_field_2` (string, required, nullable) — The 2nd user defined field of the payable register. You'll likely want to work with your customer to know what value is appropriate here.
- `user_defined_field_3` (string, required, nullable) — The 3rd user defined field of the payable register. You'll likely want to work with your customer to know what value is appropriate here.
- `user_defined_field_4` (string, required, nullable) — The 4th user defined field of the payable register. You'll likely want to work with your customer to know what value is appropriate here.
- `user_defined_field_5` (string, required, nullable) — The 5th user defined field of the payable register. You'll likely want to work with your customer to know what value is appropriate here.
- `user_defined_field_6` (string, required, nullable) — The 6th user defined field of the payable register. You'll likely want to work with your customer to know what value is appropriate here.
- `payable_register_items` (list of V1PayableRegistersYardiPostOutputResultPayableRegisterItemsItems, required)

### ErrorResponseError

- `code` (string, required)
- `message` (string, required)
- `details` (map from string to any, optional)

### V1PayableRegistersYardiPostOutputResultInvoiceDate

### V1PayableRegistersYardiPostOutputResultDiscountDate

The date a discount was issued on payable register

### V1PayableRegistersYardiPostOutputResultDueDate

The due date associated with the payable register

### V1PayableRegistersYardiPostOutputResultPayableRegisterItemsItems

- `property_id` (string, required) — The Propexo unique identifier for the property
- `total_amount_in_cents` (double, required) — The amount of the payable register item, in cents. If also passing in a purchase order item, the total amount cannot be greater than the associated purchase order.
- `financial_account_id` (string, optional) — The Propexo unique identifier for the financial account. You'll likely want to work with your customer to know what value is appropriate here.
- `cash_financial_account_id` (string, optional) — The Propexo unique identifier for the financial account. You'll likely want to work with your customer to know what value is appropriate here.
- `purchase_order_item_id` (string, optional) — The Propexo unique identifier for the purchase order item. This Purchase Order Item must be associated with the same property.
- `notes` (string, optional) — Notes associated with the payable register item

## Examples

**Request**

```json
{
  "integration_id": "intg-7890abcd1234",
  "vendor_id": "vend-4567efgh8901",
  "invoice_number": "INV-20240615-001",
  "invoice_date": "2024-06-15T09:30:00Z",
  "total_amount_in_cents": 125000,
  "payable_register_items": [
    {
      "property_id": "prop-1234abcd5678",
      "total_amount_in_cents": 125000
    }
  ]
}
```

**Response**

```json
{
  "meta": {
    "job_id": "job-20240615-xyz789"
  },
  "result": {
    "integration_id": "intg-7890abcd1234",
    "vendor_id": "vend-4567efgh8901",
    "ap_financial_account_id": "fa-9876wxyz4321",
    "cash_financial_account_id": "fa-1234mnop5678",
    "invoice_number": "INV-20240615-001",
    "invoice_date": "2024-06-15T09:30:00Z",
    "total_amount_in_cents": 125000,
    "discount_amount_in_cents": 5000,
    "discount_date": "2024-06-20",
    "discount_percent": "4.00",
    "due_date": "2024-07-15",
    "display_type": "Standard",
    "expense_type": "Maintenance",
    "is_adjustment": false,
    "is_credit_memo": false,
    "is_consolidate_checks": true,
    "is_exempt_from_1099": false,
    "invoice_status": "APPROVED",
    "notes": "Monthly HVAC maintenance invoice for June 2024.",
    "user_defined_field_2": "Priority: High",
    "user_defined_field_3": "Department: Facilities",
    "user_defined_field_4": "Project Code: HVAC2024",
    "user_defined_field_5": "Reviewed by: John Doe",
    "user_defined_field_6": "Payment Terms: Net 30",
    "payable_register_items": [
      {
        "property_id": "prop-1234abcd5678",
        "total_amount_in_cents": 125000,
        "financial_account_id": "fa-9876wxyz4321",
        "cash_financial_account_id": "fa-1234mnop5678",
        "purchase_order_item_id": "poitem-5678qrst9012",
        "notes": "Includes labor and parts for HVAC servicing."
      }
    ]
  }
}
```

**SDK Code**

```python
import requests

url = "https://api.propexo.com/v1/payable-registers/yardi/"

payload = {
    "integration_id": "intg-7890abcd1234",
    "vendor_id": "vend-4567efgh8901",
    "invoice_number": "INV-20240615-001",
    "invoice_date": "2024-06-15T09:30:00Z",
    "total_amount_in_cents": 125000,
    "payable_register_items": [
        {
            "property_id": "prop-1234abcd5678",
            "total_amount_in_cents": 125000
        }
    ]
}
headers = {
    "Authorization": "Bearer <token>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.json())
```

```javascript
const url = 'https://api.propexo.com/v1/payable-registers/yardi/';
const options = {
  method: 'POST',
  headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
  body: '{"integration_id":"intg-7890abcd1234","vendor_id":"vend-4567efgh8901","invoice_number":"INV-20240615-001","invoice_date":"2024-06-15T09:30:00Z","total_amount_in_cents":125000,"payable_register_items":[{"property_id":"prop-1234abcd5678","total_amount_in_cents":125000}]}'
};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go
package main

import (
	"fmt"
	"strings"
	"net/http"
	"io"
)

func main() {

	url := "https://api.propexo.com/v1/payable-registers/yardi/"

	payload := strings.NewReader("{\n  \"integration_id\": \"intg-7890abcd1234\",\n  \"vendor_id\": \"vend-4567efgh8901\",\n  \"invoice_number\": \"INV-20240615-001\",\n  \"invoice_date\": \"2024-06-15T09:30:00Z\",\n  \"total_amount_in_cents\": 125000,\n  \"payable_register_items\": [\n    {\n      \"property_id\": \"prop-1234abcd5678\",\n      \"total_amount_in_cents\": 125000\n    }\n  ]\n}")

	req, _ := http.NewRequest("POST", url, payload)

	req.Header.Add("Authorization", "Bearer <token>")
	req.Header.Add("Content-Type", "application/json")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby
require 'uri'
require 'net/http'

url = URI("https://api.propexo.com/v1/payable-registers/yardi/")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n  \"integration_id\": \"intg-7890abcd1234\",\n  \"vendor_id\": \"vend-4567efgh8901\",\n  \"invoice_number\": \"INV-20240615-001\",\n  \"invoice_date\": \"2024-06-15T09:30:00Z\",\n  \"total_amount_in_cents\": 125000,\n  \"payable_register_items\": [\n    {\n      \"property_id\": \"prop-1234abcd5678\",\n      \"total_amount_in_cents\": 125000\n    }\n  ]\n}"

response = http.request(request)
puts response.read_body
```

```java
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.post("https://api.propexo.com/v1/payable-registers/yardi/")
  .header("Authorization", "Bearer <token>")
  .header("Content-Type", "application/json")
  .body("{\n  \"integration_id\": \"intg-7890abcd1234\",\n  \"vendor_id\": \"vend-4567efgh8901\",\n  \"invoice_number\": \"INV-20240615-001\",\n  \"invoice_date\": \"2024-06-15T09:30:00Z\",\n  \"total_amount_in_cents\": 125000,\n  \"payable_register_items\": [\n    {\n      \"property_id\": \"prop-1234abcd5678\",\n      \"total_amount_in_cents\": 125000\n    }\n  ]\n}")
  .asString();
```

```php
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('POST', 'https://api.propexo.com/v1/payable-registers/yardi/', [
  'body' => '{
  "integration_id": "intg-7890abcd1234",
  "vendor_id": "vend-4567efgh8901",
  "invoice_number": "INV-20240615-001",
  "invoice_date": "2024-06-15T09:30:00Z",
  "total_amount_in_cents": 125000,
  "payable_register_items": [
    {
      "property_id": "prop-1234abcd5678",
      "total_amount_in_cents": 125000
    }
  ]
}',
  'headers' => [
    'Authorization' => 'Bearer <token>',
    'Content-Type' => 'application/json',
  ],
]);

echo $response->getBody();
```

```csharp
using RestSharp;

var client = new RestClient("https://api.propexo.com/v1/payable-registers/yardi/");
var request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "Bearer <token>");
request.AddHeader("Content-Type", "application/json");
request.AddParameter("application/json", "{\n  \"integration_id\": \"intg-7890abcd1234\",\n  \"vendor_id\": \"vend-4567efgh8901\",\n  \"invoice_number\": \"INV-20240615-001\",\n  \"invoice_date\": \"2024-06-15T09:30:00Z\",\n  \"total_amount_in_cents\": 125000,\n  \"payable_register_items\": [\n    {\n      \"property_id\": \"prop-1234abcd5678\",\n      \"total_amount_in_cents\": 125000\n    }\n  ]\n}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
```

```swift
import Foundation

let headers = [
  "Authorization": "Bearer <token>",
  "Content-Type": "application/json"
]
let parameters = [
  "integration_id": "intg-7890abcd1234",
  "vendor_id": "vend-4567efgh8901",
  "invoice_number": "INV-20240615-001",
  "invoice_date": "2024-06-15T09:30:00Z",
  "total_amount_in_cents": 125000,
  "payable_register_items": [
    [
      "property_id": "prop-1234abcd5678",
      "total_amount_in_cents": 125000
    ]
  ]
] as [String : Any]

let postData = JSONSerialization.data(withJSONObject: parameters, options: [])

let request = NSMutableURLRequest(url: NSURL(string: "https://api.propexo.com/v1/payable-registers/yardi/")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```