Participants

Collecting Signer Information

When defining participants in your transactions, you can configure the system to collect or verify information about signers before they perform tasks such as signing, initialing, or reviewing documents. This feature allows you to gather missing data or confirm pre-populated information, ensuring you have accurate participant details for compliance, audit trails, and communication purposes.

Overview

The AlphaTrust e-Sign platform provides eight properties that enable you to query participants for their information:

  • QueryForName - Full name of the participant
  • QueryForInitials - Initials
  • QueryForEmailAddress - Email address
  • QueryForTitle - Job title or role
  • QueryForOrganization - Company or organization name
  • QueryForCity - City
  • QueryForStateProv - State or province
  • QueryForCountry - Country

When any of these properties are set to true, the system displays a data collection form to the participant during their workflow. If you've already provided values for these fields via the API, they will be pre-populated in the form for the participant to verify and update if needed.

How It Works

  1. Define Query Properties: Set one or more QueryFor* properties to true when creating or inserting a participant
  2. Participant Workflow: When the participant accesses their task, they see a form requesting the specified information
  3. Data Collection: The participant fills out or verifies the pre-populated data
  4. Submission: Once submitted, the data is saved to the participant record and available throughout the transaction lifecycle
  5. Usage: The collected information can be used in notifications, audit reports, and signature blocks via Notification Placeholders

Signer Information Page Example

API Implementation

Using CreateTransactions()

When creating a new transaction, you can enable signer information collection by setting the appropriate QueryFor* properties on the ParticipantInsertModel:

var req = new TransactionCreateRequestModel()
{
    EnableLogging = false,
    Transactions = new List<object>
    {
        new TransactionCreateModel()
        {
            IsTest = true,
            ProntoID = "Default",
            Description = "Transaction with Signer Information Collection",
            Participants = new List<object>
            {
                new ParticipantInsertModel()
                {
                    FullName = "John Smith",
                    EmailAddress = "john.smith@your-domain.com",
                    SendRequestViaEmail = true,

                    // Enable signer information collection
                    QueryForName = true,
                    QueryForInitials = true,
                    QueryForEmailAddress = true,
                    QueryForTitle = true,
                    QueryForOrganization = true,
                    QueryForCity = true,
                    QueryForStateProv = true,
                    QueryForCountry = true
                }
            },
            Documents = new List<object>
            {
                new DocumentInsertModel()
                {
                    Title = "Document Requiring Signer Info",
                    Source = new SourceModel()
                    {
                        FileBytes = System.IO.File.ReadAllBytes(@"C:\MyDocument.pdf")
                    },
                    Tasks = new List<object>
                    {
                        new TaskInsertModel()
                        {
                            Type = TaskTypes.Signature
                        }
                    }
                }
            }
        }
    }
};

var api = new TransactionsApi(myRestEndpointUrl);
var results = api.CreateTransactions(req, apiKey, apiSecret, apiUsername, apiPassword);
if (results.IsSuccessful.Value)
{
    // Transaction created successfully
    // Participant will see information collection form before signing
}
else
{
    // Handle error
}

Using InsertParticipants()

You can also enable signer information collection when adding a participant to an existing transaction:

var req = new ParticipantInsertRequestModel()
{
    Participants = new List<object>
    {
        new ParticipantInsertModel()
        {
            TransactionID = 1234567890,
            FullName = "Sally Smith",
            EmailAddress = "sally.smith@your-domain.com",

            // Query for specific information only
            QueryForTitle = true,
            QueryForOrganization = true,
            QueryForCity = true,
            QueryForStateProv = true
        }
    }
};

var api = new ParticipantsApi(myRestEndpointUrl);
var results = api.InsertParticipants(req, apiKey, apiSecret, apiUsername, apiPassword);
if (results.IsSuccessful.Value)
{
    // Participant added successfully
}
else
{
    // Handle error
}

Available Properties

All QueryFor* properties are boolean values that default to false. Set them to true to request that information from the participant.

PropertyTypeDescriptionUsage Example
QueryForNameboolRequest participant's full nameVerify legal name for contract
QueryForInitialsboolRequest participant's initialsCollect initials for document markings
QueryForEmailAddressboolRequest participant's email addressConfirm or update contact information
QueryForTitleboolRequest participant's job title or roleRecord signatory authority level
QueryForOrganizationboolRequest participant's company or organizationDocument corporate affiliation
QueryForCityboolRequest participant's cityCollect location for compliance
QueryForStateProvboolRequest participant's state or provinceRecord jurisdiction information
QueryForCountryboolRequest participant's countrySupport international transactions

You can enable any combination of these properties based on your specific requirements. You don't need to enable all eight—choose only the fields you need to collect.

Control Panel Configuration

In addition to the API, you can configure signer information collection through the Control Panel's Workflow Editor. This no-code approach allows business users to configure these settings without requiring developer involvement.

Steps to Configure

  1. Navigate to Workflow Designer in the Control Panel
  2. Select your workflow or create a new one
  3. Go to the Workflow Rules tab
  4. Locate the Signer Information Options section
  5. Check the boxes for the information you want to collect:
    • Query for Name
    • Query for Initials
    • Query for Email Address
    • Query for Title
    • Query for Organization
    • Query for City
    • Query for State/Prov
    • Query for Country

Signer Information Options in Workflow Setup UI

Hybrid Approach: You can configure workflows in the Control Panel and then launch them via the API using the ProntoID property. This allows business users to manage signer information requirements without code changes. See Control Panel Workflows for more details.

Data Prepopulation

When you provide values for participant properties in your API call (such as FullName, EmailAddress, Title, Organization, etc.), the system will pre-populate the corresponding fields in the signer information form. This provides several benefits:

  • Data Verification: Participants can verify that the information you have on file is correct
  • Reduced Friction: Pre-filled forms require less typing and are faster to complete
  • Accuracy: Participants can easily spot and correct outdated or incorrect information
  • Compliance: Demonstrates due diligence by confirming participant details

Example with Prepopulation

var participant = new ParticipantInsertModel()
{
    // Provide known information (will be pre-populated)
    FullName = "John Smith",
    EmailAddress = "john.smith@your-domain.com",
    Title = "VP of Operations",
    Organization = "Acme Corporation",
    City = "San Francisco",
    StateProv = "CA",
    Country = "United States",

    // Request verification/collection of these fields
    QueryForName = true,
    QueryForTitle = true,
    QueryForOrganization = true,
    QueryForCity = true,
    QueryForStateProv = true,
    QueryForCountry = true
};

In this example, all the fields will be pre-populated with the values you provided. The participant will see a form with these values filled in and can either:

  • Confirm the information is correct and proceed
  • Update any fields that are incorrect or outdated
  • Fill in any fields you left empty (if you didn't provide values)

Best Practices

Collect Only What You Need

Only enable the QueryFor* properties for information you actually need. Requesting too much information can create friction in the signing process and reduce completion rates.

// Good: Only collecting necessary information
participant.QueryForName = true;
participant.QueryForTitle = true;

// Avoid: Collecting everything "just in case"
// (unless you genuinely need all these fields)

Prepopulate When Possible

If you already have participant information in your system, pass it to the API. This reduces the burden on participants and improves the user experience.

// Good: Pre-populate known information
participant.FullName = userRecord.FullName;
participant.Organization = userRecord.Company;
participant.QueryForName = true;        // Still query to verify
participant.QueryForOrganization = true; // Still query to verify

Use for Compliance Requirements

Enable signer information collection when you need to maintain detailed records for compliance, audit trails, or legal requirements.

// Collecting information for compliance documentation
participant.QueryForName = true;
participant.QueryForTitle = true;
participant.QueryForOrganization = true;

Consider the Participant Experience

Place the signer information collection appropriately in the workflow. It typically appears after authentication but before the actual signing task.

Leverage Notification Placeholders

Once collected, use the participant information in your notification templates and signature blocks. See Notification Placeholders for available tokens.

Common Use Cases

Corporate Compliance

Collect signatory authority information:

participant.QueryForName = true;
participant.QueryForTitle = true;
participant.QueryForOrganization = true;

International Transactions

Collect location information for jurisdiction tracking:

participant.QueryForCity = true;
participant.QueryForStateProv = true;
participant.QueryForCountry = true;

Identity Verification

Confirm participant identity details:

participant.QueryForName = true;
participant.QueryForInitials = true;
participant.QueryForEmailAddress = true;

Contact Information Updates

Keep your records current:

participant.EmailAddress = oldEmailOnFile;
participant.QueryForEmailAddress = true; // Allow them to update if needed

See Also