Skip to content

bms.transaction

The central module for billing and transactions. It covers AR Billing (producing, confirming, exporting and importing charges, and the QuickBooks hand-off), the trade ledger, and fuel charges. The screens here assume the flow of reviewing a charge on the dashboard and confirming it before leaving.

41 endpoints - system bms - module gate applies

What this module covers - Companies, bookings, equipment, loads, billing setup, rates, presets. Once a charge is confirmed it accumulates as a transaction.

Presets are calculation presets held per company, and setup/rates is the rate definition that goes into such a preset. The two API names are similar but do different jobs.

Endpoints

Method Path What it does Evidence
GET /bms/ar-billing/commercial-trucking-occurrence Read the recorded commercial trucking charge occurrences handler bmsArBillingCommercialOccurrenceRead() · tables T_EQUIPMENT_LOAD_COMMERCIAL_OCCURRENCE
POST /bms/ar-billing/commercial-trucking-occurrence Register a commercial trucking charge occurrence handler bmsArBillingApiValue()
POST /bms/ar-billing/confirm Confirm a charge - until this happens it only appears on the dashboard handler bmsArBillingApiValue() · calls accounting-import-dashboard.js, ar-billing.js
POST/DELETE /bms/ar-billing/exclusion Add or remove an item that is excluded from billing handler bmsArBillingApiBody() · calls accounting-import-dashboard.js
POST /bms/ar-billing/export-booking-confirm Run the export of charges on the confirmed-booking basis handler bmsArBillingApiValue() · calls accounting-import-dashboard.js
GET /bms/ar-billing/export-booking-detail Read the data needed to export charge detail per booking handler bmsArBillingApiValue() · calls accounting-import-dashboard.js
GET /bms/ar-billing/export-dashboard Read the aggregated data used to export the billing dashboard handler bmsArBillingExportDashboard() · tables T_BILLING_SETUP, T_BOOKING, T_COMPANY +3 more
GET /bms/ar-billing/import-applicability-preview Preview whether the billing data to import fits the current schema handler bmsArBillingApiValue()
GET /bms/ar-billing/import-dashboard Read the source billing dashboard data before an import handler bmsArBillingImportDashboard() · tables T_BOOKING, T_COMPANY, T_DELIVERY_ORDER +2 more
PUT /bms/ar-billing/internal-note Save an internal note on a charge handler bmsArBillingApiValue() · calls accounting-import-dashboard.js
GET /bms/ar-billing/invoice-detail Read an invoice in detail handler bmsArBillingApiValue() · calls accounting-import-dashboard.js
GET /bms/ar-billing/invoice-number-check Check whether an invoice number is already used handler bmsArBillingApiValue() · calls accounting-import-dashboard.js
POST/PATCH/DELETE /bms/ar-billing/manual-charge Register, edit or delete a manual charge line handler bmsArBillingApiBody() · calls accounting-import-dashboard.js
GET /bms/ar-billing/options Read the billing input options (commodity, company) handler bmsArBillingOptions() · tables T_COMMODITY, T_COMPANY, T_TRANSACTION_TYPE · calls ar-billing.js, kj-view-company.js
GET /bms/ar-billing/presets List the billing presets per company handler bmsArBillingListPresets() · tables T_BILLING_PRESET, T_COMPANY · calls ar-billing.js, kj-view-company.js
POST /bms/ar-billing/presets Register a billing preset handler bmsArBillingApiValue() · calls ar-billing.js, kj-view-company.js
DELETE /bms/ar-billing/presets/(?P<uuid>[0-9a-fA-F-]{36}) Delete a billing preset handler bmsArBillingApiValue()
PATCH /bms/ar-billing/presets/(?P<uuid>[0-9a-fA-F-]{36}) Edit a billing preset handler bmsArBillingApiValue()
POST /bms/ar-billing/preview Calculate a preview of the amount before the charge is applied handler bmsArBillingApiValue() · calls ar-billing.js
POST /bms/ar-billing/qbo-sync Sync a confirmed charge to QuickBooks Online handler bmsArBillingApiValue() · calls ar-billing.js
PATCH /bms/ar-billing/rates/form Save the billing rate form values handled by an inline closure in the route table
GET /bms/ar-billing/rates Read the trucking rates per company that apply to a charge handler bmsArBillingRegisteredRates() · tables T_COMPANY, T_TRUCKING_RATE
GET /bms/ar-billing/readiness Check the preconditions for starting billing handler bmsArBillingApiValue() · calls accounting-import-dashboard.js
GET /bms/ar-billing/setup/customers List the customers covered by the billing setup handler bmsArBillingSetupCustomerOptions() · tables T_COMPANY · calls billing-setup.js
GET /bms/ar-billing/setup Read the current billing setup handler bmsArBillingNormalizeUuid() · calls billing-setup.js
GET /bms/ar-billing/setup/history Read the change history of the billing setup handler bmsArBillingNormalizeUuid()
POST /bms/ar-billing/setup Save the billing setup handler bmsArBillingSaveSetup() · tables T_BILLING_PACKAGE_RATE_REVISION, T_BILLING_SETUP, T_BILLING_SETUP_HISTORY · calls billing-setup.js
GET /bms/ar-billing/setup/rates List the rates registered in the billing setup handler bmsArBillingNormalizeUuid() · calls billing-setup.js
POST/PATCH /bms/ar-billing/setup/rates Register or edit a rate in the billing setup handler bmsArBillingRateEdit() · calls billing-setup.js
GET /bms/ar-billing/workbench The billing workbench - the charges waiting to be processed handler bmsArBillingWorkbenchPage() · tables T_BOOKING, T_COMPANY, T_DELIVERY +3 more · calls api_catalog.php, ar-billing.js
GET /bms/companies/(?P<id>\d+)/billing-address Read the billing address of a company handler bmsTransactionValue()
POST/PATCH /bms/fuel/form Register or edit a fuel charge handled by an inline closure in the route table · calls popup.core.js
GET /bms/fuel/(?P<id>\d+) Read a fuel charge in detail handler apiTableMutationReadRow()
POST /bms/transactions/apply-final-transload Apply the final transload amount to a transaction handler bmsTransactionIds() · calls popup.core.js, transload-edit-modal.js
POST /bms/transactions/chassis/bulk-input Enter several chassis at once handler bmsTransactionWrite() · calls chassis-input-modal.js, popup.core.js
PATCH /bms/transactions/close Close a transaction handler bmsTransactionIds() · calls transaction-complete-modal.js, popup.core.js
DELETE /bms/transactions Delete a transaction entirely handler bmsTransactionIds()
POST/PATCH /bms/transactions/form Register or edit a transaction handler bmsTransactionApiFormMutation() · calls popup.core.js
GET /bms/transactions/(?P<id>\d+) Read a transaction in detail handler bmsTransactionValue()
DELETE /bms/transactions/(?P<source>trucking|transload|chassis|scale-ticket) Delete a transaction by source (trucking, transload, chassis, scale ticket) handler bmsTransactionApiAccount()
POST /bms/transactions/(?P<source>trucking|transload|chassis|scale-ticket) Register a transaction by source (trucking, transload, chassis, scale ticket) handler bmsTransactionApiAccount()

Topics this module shares with other modules

  • Rate - this topic is spread across 3 modules and 6 endpoints.

Tables this module reads

T_COMPANY (7x) · T_BOOKING (3x) · T_EQUIPMENT (3x) · T_EQUIPMENT_LOAD (3x) · T_BILLING_SETUP (2x) · T_EQUIPMENT_LOAD_COMMERCIAL_OCCURRENCE · T_TRANSACTION · T_DELIVERY_ORDER · T_COMMODITY · T_TRANSACTION_TYPE · T_BILLING_PRESET · T_TRUCKING_RATE · T_BILLING_PACKAGE_RATE_REVISION · T_BILLING_SETUP_HISTORY · T_DELIVERY · T_TRANSLOAD


The description is a summary read off the route path, the handler, the tables it reaches and the screens that call it. Nothing is guessed without evidence: where the handler has to be read, it says so. The full evidence is on each endpoint page.