Account & Customer Management
Quik! supports flexible account structures so you can organize firms, offices, and clients however your business operates. This guide explains the parent/child account model, how to manage accounts in the Quik! Forms Enterprise Manager (QFEM), how to create and query customers programmatically with the QFEM REST APIs, and how to subscribe and unsubscribe customers to form dealers (form libraries).
What it is
A Quik! account is a customer record in the Quik! Enterprise database, identified by a unique CustomerID. Every account holds its own settings, form library, user records, branding, and field rules. When an account is created, one Master User ID is also created — you use that Master User's credentials to call Quik! APIs on behalf of that customer.
Accounts can be related to one another through a parent/child model:
- Parent Account — your primary, top-level account. It can manage or oversee one or more child accounts, and usage, billing, and reporting can roll up to it. Settings (such as form bundles or e-sign rules) can optionally be pushed down to child accounts.
- Child Account — a separate, fully functional Quik! account that operates independently (its own forms, branding, field rules, form groups, and users) but is linked to a parent for oversight, control, and reporting.
The parent/child relationship is set at the account level and is independent of the product, so it works across any Quik! product. For example, a parent account with no product can exist purely for centralized reporting over child API accounts, or an API parent can sit above Quik! App child accounts (one per client).
Key rules from the model:
- A child account can technically have its own child accounts, but this is uncommon and not recommended.
- A child account should be linked to only one parent at a time.
- An account (CustomerID) is distinct from a user (someone who logs in to perform actions). An account can have as many users as needed.
Note: Most API customers only need a single account, because their end users interact with the customer's own system rather than with Quik! directly — only a few admin users are needed to manage forms, e-signature, and field rules. Quik! App customers typically benefit from a parent account plus one child account per office or team, and each App user gets their own login.
When to create a child account
Create a child account when a group needs any of the following:
- Its own forms, logos, or field rules
- Private CRM or customer data
- Its own billing (optional)
- To be managed independently (like a separate office or client)
- A completely separate experience within Quik!
Partners and resellers are required to set up their customers on their own accounts, and it is ideal to set those customers up as child accounts.
Setting up the parent/child relationship
A new account created through the Quik! website does not automatically connect to a parent account. To link accounts:
- Email Quik! support at support@quikforms.com and request the relationship setup, or
- Create the account programmatically with the QFEM REST APIs (see Provisioning and querying customers). When you create a new account using your partner master credentials, the child account is automatically associated with your parent account.
Managing your account in the Quik! Forms Enterprise Manager (QFEM)
Administrators manage an account through the Quik! Forms Enterprise Manager (QFEM), the admin control center for Quik! Forms Enterprise. To access it:
- Log in to Quik! Customer Central (QCC) at
https://qcc.quikforms.com/App_Resource/QuikEnterprise.dll/QuikEnterprise.Login.aspx. - Select Quik! Forms Enterprise from your products to open the QFEM home screen.
If you are setting up a new account, complete these steps in order:
- Choose forms — select the forms your users will have access to.
- Create groups — organize users and control permissions.
- Configure settings — set firm details, defaults, and routing rules.
- Set up e-signatures — enable e-signature permissions and connect DocuSign.
- Test a form — run through a form to confirm everything works.
Managing your account with APIs (Customer APIs)
Beyond the QFEM admin UI, you can manage your account programmatically with Quik! APIs. The account-management operations — registering users and licenses, field mapping, forms data, form groups, e-signature, and form generation — are exposed through the Quik! Forms Enterprise Manager (QFEM) REST services.
Quik! REST APIs use OAuth tokens. Each REST service is a single endpoint that serves all versions of that service, so you integrate against one endpoint and upgrades only require changes to parameters — not changes to your service reference. The QFEM service is versioned in the URL path, with v2000 being the newer, more extensive version of v1000:
| Service | Base URL | Reference |
|---|---|---|
| QFEM Services (v1000) | https://websvcs.quikforms.com/rest/QFEM/v1000/ |
https://websvcs.quikforms.com/rest/QFEM/v1000/swagger |
| QFEM Services (v2000) | https://websvcs.quikforms.com/rest/QFEM/v2000 |
https://websvcs.quikforms.com/rest/QFEM/v2000/swagger/ui/index |
For the exact per-operation request and response models, see the QFEM Swagger reference linked above or the Forms Enterprise Manager group in the API reference.
Authenticating
Every Quik! REST request must carry a valid OAuth2 token. Request one with a POST to the REST Authentication service:
- Endpoint:
https://websvcs.quikforms.com/rest_authentication/token - Method:
POST - Content-Type:
application/x-www-form-urlencoded - Body:
grant_type=password&username={{Quik! Username}}&password={{Quik! Password}}
Use your account's Master Credentials — end-user credentials do not work with Quik! APIs.
The response returns the token to use on subsequent calls:
{
"access_token": "gfD4QVol1ZF8EDBEyZG...",
"token_type": "bearer",
"expires_in": 86399,
"refresh_token": "VbIW0Iip4jokW4..."
}
Pass the access_token value in the Authorization header of every QFEM request:
Authorization: Bearer {{access_token}}
Tokens expire after 30 minutes; a 401 Unauthorized response means the token has expired or is invalid, so request a new one. Where a service supports it, you can pass the refresh_token back to the token endpoint to renew without re-sending credentials.
Provisioning and querying customers
Partners can create and manage their customers' accounts programmatically. In the Quik! system, a partner's clients are customers, each with a unique CustomerID, and every account has one Master User ID whose credentials are used to call other APIs on behalf of that customer. Multiple users can sign up under a single customer account, and you can issue multiple product licenses to those users — every license is ultimately tied to a single CustomerID.
These provisioning and licensing operations are part of the Quik! Forms Enterprise Manager (QFEM) REST services described above. Authenticate with your Master Credentials to obtain an OAuth token, then call the QFEM endpoint. For the exact request and response models for each operation, use the QFEM Swagger reference or the Forms Enterprise Manager group in the API reference.
A typical programmatic account-setup flow:
- Create the customer account
- List existing customers to confirm the account does not already exist.
- Create a new customer account with a master user.
- Add licenses to the account (optional)
- List the account's licenses to confirm none exist.
- Add the licenses you need (you only need to supply the customer's unique ID and a
ProductID).
- Subscribe the account to a form dealer (optional)
- Subscribe the customer to a company's forms.
Customer-management operations
The capabilities below cover provisioning, querying, licensing, and form-dealer subscriptions. Each links to the API reference for the exact endpoint, request schema, and response.
| Operation | What it does |
|---|---|
| Create customer | Creates a new master customer record and associates it with the partner's master (parent) account. The new customer is automatically given a 30-day subscription to the supplied ProductID with a status of ACTIVE (partner customers are not given trial periods). The contact email receives an automated message with the new username and password. |
| List customers | Returns the partner's customers and their account status. Works as a dynamic query (filter by CustomerIDs, unique IDs, product, status, renewal dates) or returns all records when no filters are supplied. Results do not include the partner's master (parent) account. |
| List customer licenses | Returns the licenses on a customer account — used to confirm whether licenses exist before adding them. |
| Add or update a license | Adds or updates a product license on a customer account. Operates on a single license identified by CustomerID and CustomerUserUniqueID; only those two values are required, and any parameter you leave unset is unchanged. |
| Subscribe to a form dealer | Subscribes a customer to a form dealer's (company's) forms, granting access to that dealer's library. |
| Unsubscribe from a form dealer | Removes a customer's access to a form dealer's forms. |
Creating a customer
Creating a customer provisions a new master customer record in the Quik! Enterprise database and associates it with the partner's master customer account.
Behavior notes:
- The new customer is automatically granted a 30-day subscription to the supplied
ProductID(for example, Quik! Forms Engine isProductID14) with aCustomerProductStatusofACTIVE. - The contact whose email is supplied receives an automated email from Quik! with their username, password, and login link.
- On success the operation returns the new
CustomerIDalong with the masterUsernameandPassword.
Key parameters (required parameters marked):
| Parameter | Type | Required | Description |
|---|---|---|---|
CompanyName |
String | Yes | The customer's company name. |
ProductID |
Integer | No | Any valid/active product ID. Most partners use 14 (Quik! Forms Engine). |
Username |
String | No | If blank, the username defaults to the new CustomerID. If provided, it must be unique or the transaction fails. |
SecurityQuestionID |
Integer | Yes | Value from the security-question table (e.g. 1 = "What city were you born in?"). |
SecurityAnswer |
String | Yes | The customer's answer to the security question. |
FirstName / LastName |
String | Yes | Primary contact's first and last name. |
Email |
String | Yes | Primary contact's email (receives the credentials message). |
Phone |
String | Yes | Primary contact's phone. |
AddressLine1 |
String | Yes | Primary contact's address line 1. |
City |
String | Yes | Primary contact's city. |
StateID |
Integer | Yes | State ID from the State table. |
Zip |
String | Yes | Primary contact's ZIP code. |
CountryID |
Integer | Yes | Country ID from the Country table (1 = United States, 2 = Canada). |
CustomerUserUniqueID |
String | Yes | The unique ID to use for the customer's primary Quik! license. |
FormCompanyID |
Integer | No | The customer's broker/dealer or parent company Form Company ID for forms access (use 185, "No Company", if the ID is not known). |
FormCompanyName |
String | Yes | Name of the customer's broker/dealer or parent company. |
Optional parameters include DiscountCode, PrefixID, MiddleName, Suffix, Title, PhoneExt, Fax, and AddressLine2–AddressLine4.
Common ProductID values:
| ProductID | Abbreviation | Product |
|---|---|---|
| 1 | QTM | Quik! Transaction Manager |
| 6 | QTM-P | Quik! Transaction Manager (paid by parent customer) |
| 13 | QWFE | Quik! Web Forms Engine |
| 14 | QFE | Quik! Forms Engine |
Listing customers
Returns the partner's customers and their account status. Use it as a dynamic query by supplying search criteria, or return all records by supplying no filters. Results do not include the partner's master (parent) account.
Filter parameters (all optional):
| Parameter | Type | Description |
|---|---|---|
CustomerIDs |
String | Comma-separated list of CustomerIDs. |
CustomerUniqueIDs |
String | List of the partner's own unique IDs used to identify customers. |
ProductID |
Integer | Return customers who have the given product. |
CustomerProductStatusID |
Integer | Restrict results by product status. |
RenewalDateStart |
Date | Restrict to a starting renewal date. |
RenewalDateEnd |
Date | Restrict to an ending renewal date. |
Each returned customer includes CustomerID, AccountEstablishedDate, ProductID/ProductName, CustomerProductStatusID/CustomerProductStatus, AcquisitionDate, ProductExpirationDate, RenewalDate, Quantity (number of licenses), CustomerUserUniqueID, CompanyName, Username, full primary-contact details (name, email, phone, address), and FormCompanyName.
Managing licenses
A customer account can carry multiple product licenses, each tied to a CustomerUserUniqueID (for example, an advisor or rep name, user name, or your own internal ID).
List customer licenses to see the licenses on an account. You can filter by CustomerIDs, CustomerUniqueIDs, ProductID, CustomerProductStatusID, and renewal-date range, or return everything by supplying no filters. Each license returns CustomerID, CustomerUserUniqueID, ProductID, ProductLicenseStatusID, ProductLicenseExpiryDate, and the licensee's name and email.
Add or update a license operates on a single license identified by CustomerID and CustomerUserUniqueID — the only two required values. Any parameter you leave unset stays unchanged; to clear a value, send a space. When adding a new license, set the status to Active; if ProductID is omitted it defaults to 14 (Quik! Forms Engine).
| Parameter | Type | Required | Description |
|---|---|---|---|
CustomerID |
Integer | Yes | The CustomerID to associate the license with. |
CustomerUserUniqueID |
String | Yes | The unique ID used as the license name (e.g. advisor/rep name, user name, your internal ID). |
ProductID |
Integer | No | Any valid/active product ID. Defaults to 14 (Quik! Forms Engine) if blank. |
ProductLicenseStatusID |
Integer | No | License status — 1 Active, 2 Inactive, 3 Delete. Leave empty when updating to keep the current status. |
ProductLicenseExpiryDate |
Date | No | Date the license expires. |
FirstName / LastName |
String | No | Licensee's name. If neither is supplied, the CustomerUserUniqueID is used as the first name. |
Email, Phone, address fields |
String / Integer | No | Licensee contact details (MiddleName, Suffix, Email, Phone, PhoneExt, Fax, AddressLine1–4, City, StateID, Zip, CountryID). |
The operation returns the affected CustomerID, CustomerUserUniqueID, ProductLicenseExpiryDate, and the resulting ProductLicenseStatusID/ProductLicenseStatus.
Subscribing and unsubscribing customers to form dealers
A form dealer is a company whose form library a customer can subscribe to. Subscribing a customer to a dealer grants that customer access to the dealer's forms; unsubscribing removes that access. Both operations are part of the QFEM REST services — see the API reference for the exact endpoints.
Both take the same two required parameters:
| Parameter | Type | Required | Description |
|---|---|---|---|
CustomerID |
Integer | Yes | The CustomerID belonging to the user's customer account. |
DealerID |
Integer | Yes | The dealer whose forms you want to subscribe or unsubscribe the customer to. |
Neither operation returns data beyond an ErrorCode and Message. To find the dealers available to you, retrieve your subscribed dealer list — see the Forms Enterprise Manager group in the API reference for the dealer-list operation.
