Integrations & Reference

Protected society-fleet checkout, presentation exports, and legacy integration boundaries.

Resource
drs_vehicleshop
Version
v1.0.1-drs.8
Updated
Aug 30, 2026
Resource GitHub
Guide navigationIntegrations & Reference
Sections
01 / SOCIETY FLEETS

Society fleets

Enable society fleet checkout deliberately

Fleet checkout is Qbox-first and fails closed unless DRS Garages, an allowed caller, a supported society banking provider, a ready fleet journal, the exact job/boss/grade/on-duty authority, and a server-side model allowlist all pass. Reuse the same durable request id for every retry.

Society fleet checkout is unavailable

Check Qbox resolution, the DRS Garages fleet service, Config.Fleet.AllowedCallers, the job catalogue, boss/grade/on-duty rules, the selected banking provider, and GetFleetServiceStatus before retrying.

02 / EXPORTS & INTEGRATION BOUNDARIES

Exports & integration boundaries

Client presentation export

ResolveVehiclePresentation(modelOrHash) returns the configured model, display name, brand, addon flag, and ordered image candidates. It is presentation-only and grants no purchase or ownership authority.

lua
local presentation = exports.drs_vehicleshop:ResolveVehiclePresentation(modelOrHash)

Protected society fleet exports

Only resources listed in Config.Fleet.AllowedCallers may request the server-resolved catalogue, purchase an allowlisted job vehicle, or inspect service health. PurchaseFleetVehicle requires a stable 8–64 character requestId and the acting player source.

lua
local catalog = exports.drs_vehicleshop:GetFleetCatalog({
    actorSource = source,
    job = 'police'
})

local result = exports.drs_vehicleshop:PurchaseFleetVehicle({
    requestId = durableRequestId,
    actorSource = source,
    action = 'society_purchase',
    job = 'police',
    model = 'police3',
    garageIndex = 1
})

local status = exports.drs_vehicleshop:GetFleetServiceStatus()

Legacy compatibility boundary

The client still accepts qr-vehicleshop:client:openShop during transition and reads two legacy state-bag keys during entity recovery. New calls and state use drs_vehicleshop:*; financial server callbacks are not exposed under QR aliases.

03 / RELEASE & SOURCE NOTES

Release & source notes

  • Keep the resource folder named drs_vehicleshop and use the drs_vehicleshop:* namespace for new integrations.
  • The public source currently has no tag or GitHub release. Pin the tested main-branch commit and review repository changes before updating production.
  • The README describes a local preview directory that is not present in the audited public snapshot; it is not part of this deployment guide.
  • The MIT license and NOTICE retain RaySist and QR Development attribution for the original qr-vehicleshop foundation.