What Can Macros Do?
- Release Notes
- Newly Released Features
- Getting Started
- Roles & Permissions
- Manifests
- Order Management
- Automations
- Employee Management
- Customer Management
- Customer Portal
- Stock Management
- Part Requests
- Invoicing
- Reporting
- Custom Fields
- Integrations
- GSX
- Shipments
- Service Contracts
- Configuring Your Environment
- Incoming Part Allocation
Table of Contents
Macros in Fixably
Macros in Fixably are predefined automations that streamline workflows, standardize processes, and reduce manual data entry. These macros are not user-configurable and require backend access to enable or modify. This article provides an overview of available macros, including their functions, usage considerations, and supported parameter types.
What Are Macros?
Macros are server-defined actions that automate tasks within Fixably. They are designed to:
- Improve operational efficiency
- Ensure consistency in data entry and updates
- Support integrations with external systems (e.g., GSX, IGSPN, Cello)
Macros can be invoked via triggers such as status changes, queue updates, or manual execution by a user.
Note: Clients cannot create or modify macros. All macros are implemented by Fixably through database-level access.
Using Macros
Below is a list of available macros organized by category, with plain-language descriptions of what each one does:
Order Management
Macro Name |
Description |
---|---|
order.close |
Closes an order, marking any open repair as ready for pickup. |
order.print |
Generates a printout for the current order. |
order.custom |
Sets custom order fields that are macro-accessible. |
order.deposit |
Records a deposit on the current order. |
order.files |
Uploads files to the order. |
order.location |
Assigns a service location to the order. |
order.charge |
Adds a charge to the current order. |
order.setTatPromise |
Sets a Turnaround Time (TAT) promise for the order. |
Device Management
Macro Name |
Description |
---|---|
device.create |
Adds a new device to the order. |
device.create.custom |
Adds a device and displays custom fields in the UI. |
device.files |
Uploads device images or documents. |
device.history |
Displays history from prior repairs of a device (by serial number). |
device.model |
Updates the model of a device based on defined configurations. |
device.inspection |
Displays a QR code for submitting inspection images. |
device.queue |
Moves the order to the preferred queue for the selected device. |
Repair Management
Macro Name |
Description |
---|---|
repair.create |
Starts a new GSX repair. |
repair.close |
Closes a repair if possible. |
repair.part.validation |
Validates that part serial numbers meet repair rules. |
resolution.add |
Adds a resolution note to the order. |
diagnosis.add |
Adds a diagnostic note. |
issue.add |
Adds an issue note describing the problem. |
Shipping and Logistics
Macro Name |
Description |
---|---|
shipment.create |
Creates a shipment using an enabled shipping integration. |
shipment.internal |
Creates an internal shipment between locations. |
shipment.create.postnord |
Creates a PostNord shipment via Unifaun integration. |
shipmentRequest.create |
Requests a shipment for an order with a user assigned. |
cello.shipment |
Creates a shipment and returns a PDF confirmation (Cello integration). |
gsx.returnlabel |
Generates a return label for GSX repair. |
Customer and Contact Management
Macro Name |
Description |
---|---|
customer.add |
Creates or updates a customer record. |
contact.add |
Adds a contact to the order. |
addressData.set |
Updates the address fields for the order. |
insurance_company.add |
Sets an insurance company on the order. |
Queue and Workflow Automation
Macro Name |
Description |
---|---|
queue.select |
Allows the user to manually select a queue. |
queue.set |
Automatically sets the queue for the order. |
status.set |
Changes the status of the order. |
priority.set |
Updates the order priority (e.g., urgent, standard). |
trigger.event |
Triggers an internal workflow event. |
handler.set |
Assigns a technician to the order. |
self.handler |
Sets the logged-in user as the technician. |
tasks.set |
Assigns task values to the order. |
Communication and Notifications
Macro Name |
Description |
---|---|
send.email |
Sends an email using a predefined snippet. |
send.email.simple |
Sends a free-form email. |
send.email.template |
Sends a templated email from the UI. |
send.sms |
Sends an SMS using a snippet (SMS must be enabled). |
send.sms.template |
Sends a templated SMS (SMS must be enabled). |
send.file |
Emails a printout. |
signature.request |
Starts a Fixably Paperless signature flow. |
Third-Party Integrations
Macro Name |
Description |
---|---|
gspn.repair.create |
Creates an IGSPN repair. |
gspn.check_out |
Finalizes an IGSPN repair and closes it. |
gspn.status_comment |
Posts a status comment to IGSPN. |
gspn.parts |
Mass-edit serial numbers for IGSPN repair parts. |
gspn.order_files |
Uploads documents required by IGSPN. |
gspn.work_code |
Sets labor type, distance, and service grade in IGSPN. |
gspn.appointment_create |
Schedules an appointment for IGSPN service. |
gspn.account |
Sets the IGSPN account for repair. |
phonecheck.data |
Displays PhoneCheck device diagnostics. |
File and Document Handling
Macro Name |
Description |
---|---|
file.upload |
Uploads a single file to the order. |
files.create |
Uploads files, possibly in bulk. |
order.files |
Uploads order-specific files. |
Tag and Custom Field Management
Macro Name |
Description |
---|---|
order.customField.set |
Updates a custom field on the order. |
tag.add |
Adds a tag to the order. |
tag.remove |
Removes a tag from the order. |
Financial and Invoice Operations
Macro Name |
Description |
---|---|
invoice.create |
Creates an invoice. |
invoice.print |
Generates a list of invoices to print. |
insurance.invoice |
Insurance-related invoicing. |
insurance.invoicees |
Assigns invoicees to lines when using insurance companies. |
add.discount |
Applies a discount product to the order. |
line.discount |
Applies a discount product to a line item. |
Product and Line Item Management
Macro Name |
Description |
---|---|
line.add |
Adds a line item (product) to the order. |
products.add |
Lets the user search for and add multiple products. |
part.serial |
Updates the serial number of a part. |
part.imei |
Sets the IMEI number for a part. |
Miscellaneous
Macro Name |
Description |
---|---|
ast.run |
Displays a button to run AST (Apple diagnostic). |
note.add |
Adds a basic note to the order. |
note.create |
Adds a note using a predefined snippet. |
store.set |
Assigns a store to the order. |
warranty.status |
Checks the warranty status. |
Macro Parameters
Parameters for macros define the information needed to execute an action.
Basic Parameter Types
Type |
Description |
Example |
---|---|---|
string |
Plain text |
"Fixably" |
int |
Integer (whole number) |
42 |
float |
Floating point number (uses .) |
13.37 |
bool |
Boolean value (1 or 0) |
1 |
json |
JSON object or array |
{"name": "Fixably"} |
Note: Parameters are stored as strings in the database but are converted during macro execution.
Complex Parameters
Some macros use params as a single structured input. This must be valid JSON.
Example:
{
"companyName": "Fixably",
"website": "https://www.fixably.com"
}
Keys and values within params must match the macro’s expected schema, as defined in its documentation.
Limitations and Support
- Macros are created and maintained by Fixably.
- Clients cannot request custom macros via the UI.
- If a macro is needed for a process, contact Fixably Support or your Customer Success Manager with a description of the business need.
Still have questions? Contact Support or reach out to your Success Manager.