/** * Get Business Details * POST: { BusinessID: int } * Returns: { OK: true, BUSINESS: {...} } or { OK: false, ERROR: string } */ response = { "OK": false }; try { // Get request data requestBody = toString(getHttpRequestData().content); if (len(requestBody) == 0) { response["ERROR"] = "Request body is required"; writeOutput(serializeJSON(response)); abort; } requestData = deserializeJSON(requestBody); businessID = val(requestData.BusinessID ?: 0); if (businessID == 0) { response["ERROR"] = "BusinessID is required"; writeOutput(serializeJSON(response)); abort; } // Get business details (only columns that exist) q = queryExecute(" SELECT BusinessID, BusinessName, BusinessStripeAccountID, BusinessStripeOnboardingComplete FROM Businesses WHERE BusinessID = :businessID ", { businessID: businessID }, { datasource: "payfrit" }); if (q.recordCount == 0) { response["ERROR"] = "Business not found"; writeOutput(serializeJSON(response)); abort; } // Build business object business = { "BusinessID": q.BusinessID, "BusinessName": q.BusinessName, "StripeConnected": (len(q.BusinessStripeAccountID) > 0 && q.BusinessStripeOnboardingComplete == 1) }; response["OK"] = true; response["BUSINESS"] = business; } catch (any e) { response["ERROR"] = e.message; } writeOutput(serializeJSON(response));