Skip to main content
The FBO Point of Sale (POS) system handles product sales, customer accounts, inventory management, and financial transactions. This reference documents the data structure for all POS entities — orders, products, inventory, tills, transactions, and customers.

Orders

Orders represent individual sales transactions in the POS system. Each order is linked to an optional customer and records what was sold, how it was paid for, and any outstanding balance.

Order Fields

FieldTypeDescription
order_numberStringAuto-generated unique order identifier.
customer_idString (optional)Reference to the customer account. Orders can also be created without a customer.
payment_optionEnumPayment method used for this order. See Payment Methods below.
totalNumberTotal amount for the order including tax.
balance_dueNumberRemaining balance after any payments applied. Zero when fully paid.
created_atTimestampDate and time the order was created.

Payment Methods

MethodAPI ValueDescription
CashcashPhysical currency payment collected at the till.
CardcardCredit or debit card payment.
CheckcheckPayment by check.
House Accounthouse_accountCharged to the customer’s house account for later invoicing.
House account orders accumulate on the customer’s balance and are settled through invoicing on a monthly or per-contract basis.

Products

Products are the items available for sale through the POS. Each product has pricing, optional inventory tracking, and tax configuration.

Product Fields

FieldTypeDescription
nameStringDisplay name of the product.
skuString (optional)Stock Keeping Unit code for identification and search.
category_idString (optional)Reference to a product category for organization.
priceNumberSelling price per unit (USD).
costNumber (optional)Cost basis per unit. Used for margin calculations.
tax_rateNumber (optional)Tax rate applied to this product as a decimal (e.g., 0.07 for 7%).
is_activeBooleanWhether the product is available for sale. Inactive products do not appear in the order form.
track_inventoryBooleanWhether inventory quantities are tracked for this product.
stock_quantityNumber (optional)Current stock level. Only populated when track_inventory is enabled.
descriptionString (optional)Internal description or notes about the product.
created_atTimestampDate and time the product was created.
updated_atTimestampDate and time the product was last modified.

Product Categories

Categories are user-defined. Common FBO product categories:
CategoryExamples
FuelJet-A, 100LL, sustainable aviation fuel
Hangar servicesOvernight parking, GPU, towing
Ramp servicesLavatory service, de-icing, oxygen
CateringCrew meals, passenger catering, beverages
SuppliesOil, hydraulic fluid, cleaning supplies
MerchandiseBranded apparel, pilot supplies

Inventory

Inventory records track stock levels for products that have track_inventory enabled. The inventory system provides real-time visibility into on-hand quantities and generates low-stock warnings.

Inventory Fields

FieldTypeDescription
product_idStringReference to the tracked product.
product_nameStringDisplay name of the product (denormalized for convenience).
skuString (optional)Product SKU code.
quantity_on_handNumberTotal physical quantity in stock.
quantity_reservedNumberQuantity allocated to pending orders but not yet fulfilled.
reorder_pointNumber (optional)Stock level at which a low-stock warning is triggered.
reorder_quantityNumber (optional)Suggested quantity to reorder when the reorder point is reached.
last_counted_atTimestamp (optional)Date and time of the most recent physical inventory count.
updated_atTimestampDate and time the inventory record was last modified.

Available Quantity

The available quantity is calculated as:
available = quantity_on_hand - quantity_reserved
This represents stock that can be sold or allocated to new orders.

Low-Stock Warnings

A product triggers a low-stock warning when:
quantity_on_hand <= reorder_point
Low-stock items are highlighted in the Inventory table with a warning indicator. Setting reorder_point to 0 or leaving it empty disables warnings for that product.

Tills

Tills represent physical or virtual cash registers used to process POS transactions. Each till tracks its opening balance, current balance, and operational status.

Till Fields

FieldTypeDescription
nameStringDisplay name of the till (e.g., “Front Desk Register”, “Ramp Till”).
locationString (optional)Physical location of the till within the facility.
statusEnumCurrent operational state. See Till Statuses.
opening_balanceNumberCash amount the till was opened with.
current_balanceNumberCurrent cash balance in the till. Updates as cash transactions are processed.
is_defaultBooleanWhether this till is the default selection when creating new orders. Only one till can be the default.

Transactions

Transactions record all financial activity in the POS system, including payments, refunds, and adjustments.

Transaction Fields

FieldTypeDescription
transaction_typeEnumThe type of transaction: payment, refund, or adjustment.
payment_methodString (optional)How the transaction was processed (e.g., cash, card, check).
amountNumberTransaction amount in USD. Refunds are recorded as positive amounts with a refund type.
descriptionString (optional)Notes or description for the transaction.
statusEnumProcessing state: completed, pending, failed, or reversed.
created_atTimestampDate and time the transaction was recorded.

Transaction Types

TypeAPI ValueDescription
PaymentpaymentMoney received from a customer.
RefundrefundMoney returned to a customer for a previous payment.
AdjustmentadjustmentManual correction to a balance or till amount.

Customers

Customers represent individuals or organizations that purchase products or services through the POS. Customer records enable house account billing and purchase history tracking.

Customer Fields

FieldTypeDescription
nameString (optional)Company or organization name.
first_nameString (optional)Customer’s first name.
last_nameString (optional)Customer’s last name.
emailString (optional)Email address for invoicing and communication.
phoneString (optional)Phone number.
order_countNumberTotal number of orders placed by this customer.
total_spentNumberCumulative amount spent across all orders.

Rate Codes

Rate codes define the pricing structure for unit bookings. Each rate code can specify daily, weekly, and monthly rates.

Rate Code Fields

FieldTypeDescription
nameStringDisplay name of the rate code (e.g., “Standard T-Hangar”, “Transient Tiedown”).
rate_typeStringClassification of the rate (e.g., “daily”, “monthly”, “seasonal”).
base_rateNumberDefault per-period rate in USD.
weekly_rateNumber (optional)Discounted rate for weekly bookings.
monthly_rateNumber (optional)Discounted rate for monthly bookings.
is_activeBooleanWhether this rate code can be assigned to units.

FBO Statuses

Booking, payment, unit, maintenance, and till statuses.

Use the FBO Point of Sale

Order processing, product management, and till operations.
Last modified on April 11, 2026