Storable Ledgers & Payments API
Tenant ledgers, payments, payment methods, invoices.
Tenant ledgers, payments, payment methods, invoices.
openapi: 3.0.3
info:
title: Storable Edge (storEDGE) Delinquency & Auctions Ledgers & Payments API
description: A representative OpenAPI reference for the Storable Edge (storEDGE) REST API, the modern property-management API in the Storable brand family (SiteLink, storEDGE, SpareFoot). The endpoint paths, HTTP methods, and parameter names below are taken from Storable's public v1 API reference at https://api.storedgefms.com/docs/v1.html. That page enumerates roughly 150 endpoints across tenants, units, ledgers, leads, move-ins/outs, gate access, insurance, tasks, documents/eSign, delinquency/auctions, and reporting; this document models a representative subset of those confirmed paths per resource area rather than every documented route. Response/request body schemas below are reasonably modeled from the named resources (tenant, unit, ledger, lead, etc.) since the source page documents endpoints and parameters but was not captured with full field-by-field JSON schemas - treat schema properties as illustrative, not a verbatim contract. All calls are scoped to a facility (or company) by path parameter and authenticated with one-legged OAuth 1.0 (API access key + secret issued to a storEDGE customer, used as the OAuth consumer key/secret with no additional handshake).
version: '1.0'
contact:
name: Storable
url: https://www.storable.com/products/edge/
servers:
- url: https://api.storedgefms.com/v1
description: Storable Edge (storEDGE) production API, one-legged OAuth 1.0
security:
- oauth1: []
tags:
- name: Ledgers & Payments
description: Tenant ledgers, payments, payment methods, invoices.
paths:
/{facility_id}/ledgers:
get:
operationId: listLedgers
tags:
- Ledgers & Payments
summary: List tenant ledgers
parameters:
- $ref: '#/components/parameters/facilityId'
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/perPage'
responses:
'200':
description: A page of ledgers.
content:
application/json:
schema:
type: object
properties:
meta:
$ref: '#/components/schemas/Meta'
ledgers:
type: array
items:
$ref: '#/components/schemas/Ledger'
/{facility_id}/ledgers/{id}:
get:
operationId: getLedger
tags:
- Ledgers & Payments
summary: Get a ledger by ID
parameters:
- $ref: '#/components/parameters/facilityId'
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: The ledger.
content:
application/json:
schema:
$ref: '#/components/schemas/Ledger'
/{facility_id}/ledgers/{ledger_id}/make_payment:
post:
operationId: makeLedgerPayment
tags:
- Ledgers & Payments
summary: Make a payment against a ledger
parameters:
- $ref: '#/components/parameters/facilityId'
- name: ledger_id
in: path
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PaymentInput'
responses:
'200':
description: Payment result.
/{facility_id}/ledgers/{ledger_id}/update_autopay:
put:
operationId: updateLedgerAutopay
tags:
- Ledgers & Payments
summary: Enable, disable, or update autopay on a ledger
parameters:
- $ref: '#/components/parameters/facilityId'
- name: ledger_id
in: path
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
enabled:
type: boolean
payment_method_id:
type: string
responses:
'200':
description: Autopay updated.
/{facility_id}/tenants/{tenant_id}/payment_methods:
get:
operationId: listTenantPaymentMethods
tags:
- Ledgers & Payments
summary: List a tenant's stored payment methods
parameters:
- $ref: '#/components/parameters/facilityId'
- $ref: '#/components/parameters/tenantId'
responses:
'200':
description: Payment methods.
post:
operationId: createTenantPaymentMethod
tags:
- Ledgers & Payments
summary: Add a payment method for a tenant
parameters:
- $ref: '#/components/parameters/facilityId'
- $ref: '#/components/parameters/tenantId'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PaymentMethodInput'
responses:
'201':
description: Payment method created.
/{facility_id}/payment_intents:
get:
operationId: listPaymentIntents
tags:
- Ledgers & Payments
summary: List payment intents
parameters:
- $ref: '#/components/parameters/facilityId'
responses:
'200':
description: Payment intents.
/{facility_id}/invoices/{id}:
get:
operationId: getInvoice
tags:
- Ledgers & Payments
summary: Get an invoice by ID
parameters:
- $ref: '#/components/parameters/facilityId'
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: The invoice.
/{facility_id}/invoiceable_items:
get:
operationId: listInvoiceableItems
tags:
- Ledgers & Payments
summary: List invoiceable items (fees, retail, insurance, services)
parameters:
- $ref: '#/components/parameters/facilityId'
responses:
'200':
description: Invoiceable items.
/{facility_id}/authorize_funds:
post:
operationId: authorizeFunds
tags:
- Ledgers & Payments
summary: Authorize funds on a payment method (e.g. digital wallet)
parameters:
- $ref: '#/components/parameters/facilityId'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
payment_method_id:
type: string
amount:
type: number
responses:
'200':
description: Authorization result.
components:
parameters:
perPage:
name: per_page
in: query
description: Items per page for paginated collection endpoints (default 100).
schema:
type: integer
default: 100
tenantId:
name: tenant_id
in: path
required: true
schema:
type: string
page:
name: page
in: query
description: Page number for paginated collection endpoints.
schema:
type: integer
default: 1
facilityId:
name: facility_id
in: path
required: true
description: The storEDGE facility ID the request is scoped to.
schema:
type: string
schemas:
PaymentMethodInput:
type: object
properties:
type:
type: string
enum:
- credit_card
- ach
- digital_wallet
token:
type: string
Meta:
type: object
description: Every storEDGE response body includes a meta hash with request parameters, method, pagination, and status/error details.
properties:
status_code:
type: integer
status_message:
type: string
error_code:
type: integer
nullable: true
request_id:
type: string
page:
type: integer
per_page:
type: integer
total_count:
type: integer
Ledger:
type: object
properties:
id:
type: string
tenant_id:
type: string
unit_id:
type: string
balance:
type: number
next_due_date:
type: string
format: date
autopay_enabled:
type: boolean
delinquent:
type: boolean
PaymentInput:
type: object
properties:
payment_method_id:
type: string
amount:
type: number
securitySchemes:
oauth1:
type: http
scheme: oauth1
description: 'Non-standard OpenAPI representation of storEDGE''s actual scheme: one-legged OAuth 1.0. The API access key issued to a storEDGE customer is used as the OAuth consumer key and the API secret key as the consumer secret, signing each request; there is no three-legged redirect/token exchange.'