How to Set Up Email to Fax in ICTFax

Once email-to-fax is configured in ICTFax, sending a fax is as simple as sending an email. Users don’t need to log in to the fax portal or install any software — they compose an email, attach a PDF, address it to 14085551234@yourdomain.com, and hit send. ICTFax handles the conversion and transmission. Here’s the complete setup process.

Prerequisites

  • ICTFax installed and running on your server (FreeSWITCH-based, not Asterisk)
  • Admin access to the ICTFax web interface
  • A working SIP trunk with T.38 or G.711 fax passthrough support — email-to-fax won’t transmit without one
  • A domain or subdomain you control for the email gateway (e.g., fax.yourdomain.com) — incoming emails to this domain will trigger fax transmissions
  • Access to your mail server — this guide uses Postfix, which is the standard MTA on Linux systems where ICTFax is typically deployed. Root or sudo access to the server is required.
  • MX records for your fax gateway domain pointing to your server’s public IP

Step 1: Configure the Email Gateway Domain in ICTFax

Log in to the ICTFax admin interface and navigate to Settings > Email to Fax (the menu label varies slightly by version — look for “Email Gateway” or “SMTP Settings” if you don’t see it directly).

On this screen, enter the domain you’ll use for the email gateway. If you want users to send faxes by emailing [faxnumber]@fax.yourdomain.com, enter fax.yourdomain.com here. ICTFax will accept incoming emails to any address at this domain and parse the local part (the part before the @) as the destination fax number.

Also configure:

  • Allowed Sender Domains or Addresses: If you want to restrict which email addresses can trigger fax transmissions, enter the allowed domains here. Leave it open only if your server is properly secured — an unrestricted email-to-fax gateway can be exploited for spam faxing if it’s exposed to the internet without authentication.
  • Default Sender Fax Number: The caller ID that will appear on sent faxes when no specific sender number is specified. This should be one of your registered DIDs.
  • Max Attachment Size: The maximum file size ICTFax will accept and convert. A reasonable limit is 10-20 MB — larger attachments slow conversion and may time out.

Save these settings before moving to the server-level configuration.

Step 2: Set Up Postfix to Receive Email for the Gateway Domain

ICTFax’s email-to-fax feature works by receiving incoming SMTP messages and passing them to a processing script. Postfix handles the SMTP reception; ICTFax handles the fax conversion and transmission.

On your server, open the Postfix main.cf configuration file (typically at /etc/postfix/main.cf). You need to add your fax gateway domain to the virtual_alias_domains or configure a catch-all transport for that domain. The exact method depends on your existing Postfix configuration.

The recommended approach is a transport map. Add the following to main.cf:

transport_maps = hash:/etc/postfix/transport

Then create or edit /etc/postfix/transport and add:

fax.yourdomain.com    ictfax:

This tells Postfix to route all email for your fax domain through a custom transport named ictfax. Next, define that transport in /etc/postfix/master.cf:

ictfax    unix  -    n    n    -    -    pipe
  flags=Rq user=ictfax argv=/path/to/ictfax/email2fax.php ${recipient}

Replace /path/to/ictfax/email2fax.php with the actual path to ICTFax’s email processing script on your server. This is typically in the ICTFax application directory — check your installation directory if you’re not sure.

After editing both files, run:

postmap /etc/postfix/transport
postfix reload

Postfix will now route incoming email for your fax domain to the ICTFax processing script.

Step 3: Configure the MX Record for Your Fax Gateway Domain

For external emails to reach your server, the domain’s MX record must point to your server. In your DNS provider’s control panel, add an MX record for fax.yourdomain.com pointing to your server’s hostname (which should have an A record pointing to your server’s public IP).

Example DNS setup:

  • A record: mail.yourdomain.com203.0.113.45 (your server’s public IP)
  • MX record: fax.yourdomain.commail.yourdomain.com (priority 10)

DNS propagation takes anywhere from a few minutes to 48 hours depending on your provider and your TTL settings. Set a low TTL (300 seconds) before making the change if you need fast propagation. Verify the MX record is resolving correctly with a DNS lookup tool before proceeding to testing.

Also ensure that TCP port 25 (SMTP) is open inbound on your server’s firewall. Some cloud providers block port 25 by default on new instances — check your firewall rules and your cloud provider’s port policy.

Step 4: Configure Attachment Handling and File Conversion

ICTFax converts email attachments to TIFF format before transmitting them as faxes. The most common formats it handles are PDF, DOC, DOCX, and image files (JPG, PNG, TIFF).

For PDF conversion, ICTFax uses Ghostscript. Confirm Ghostscript is installed on your server:

gs --version

If the command returns a version number, you’re set. If not, install it:

apt-get install ghostscript    # Debian/Ubuntu
yum install ghostscript        # CentOS/RHEL

For DOC/DOCX conversion, LibreOffice is used. Verify it’s installed:

libreoffice --version

Install it if needed:

apt-get install libreoffice

Both packages need to be accessible by the system user that runs the ICTFax email processing script. If conversion failures occur later, a permissions mismatch on Ghostscript or LibreOffice binaries is a common cause.

In the ICTFax admin under Settings > Email to Fax, set the Supported Attachment Types to match what your users will actually send. Enabling types that conversion dependencies don’t support causes failed fax jobs with unhelpful error messages.

Step 5: Map Email Addresses to User Accounts (Optional but Recommended)

By default, ICTFax accepts email-to-fax submissions from any sender at the allowed domains. If you want fax jobs to be attributed to specific user accounts (for tracking, billing, or per-user DID assignment), you need to map sender email addresses to ICTFax user accounts.

Go to Users in the admin interface and edit each user account. Add the user’s email address to their profile. When ICTFax receives an email-to-fax submission from that address, it associates the fax job with the matching account.

This also lets you assign a specific outbound DID per user — if a healthcare provider wants each doctor’s faxes to show a specific caller ID, configure it at the user account level here. This ties directly into ICTFax’s HIPAA-compliant fax workflows, where sender identity and audit trails matter.

Step 6: Test the Full Email-to-Fax Flow

Testing needs to cover the full chain: email reception → parsing → conversion → transmission → delivery confirmation.

Send a test email from an allowed sender address to 14085551234@fax.yourdomain.com (replace with a real fax number you can verify received the fax — your own test fax machine or an online fax service works well). Attach a simple PDF — one page, text only, nothing complex.

After sending, check the ICTFax admin under Fax Jobs or Sent Faxes. You should see the job appear within 30-60 seconds of sending the email. The status will move from Pending to Processing to Completed (or Failed if something went wrong).

If the job appears and completes, verify receipt on the destination fax machine or service. Confirm the document rendered correctly — page orientation, margins, and text clarity should all match the original PDF. If the job doesn’t appear at all, the problem is in the Postfix routing (Step 2). If the job appears but fails, check the ICTFax error log for the specific failure reason.

Check the ICTFax features page for documentation on inbound fax-to-email as well — many deployments configure both directions simultaneously.

Troubleshooting

Emails sent to the fax gateway address aren’t creating fax jobs

Work backwards through the chain. First check whether Postfix is receiving the email at all — check the Postfix mail log at /var/log/mail.log (Debian) or /var/log/maillog (CentOS). If you see the incoming message there but no fax job appears in ICTFax, the transport to the ICTFax processing script is failing. Check the path in master.cf points to the correct script location, and check that the script is executable by the Postfix transport user. If the email isn’t showing in the mail log at all, the MX record either isn’t resolving correctly or port 25 is blocked.

Fax job appears in ICTFax but fails with a conversion error

The attachment conversion dependencies (Ghostscript for PDF, LibreOffice for DOC) are missing or not accessible. Run the conversion command manually as the ICTFax service user to see the exact error: gs -q -dNOPAUSE -dBATCH -sDEVICE=tiffg4 -sOutputFile=/tmp/test.tif /path/to/test.pdf. If this fails, install or fix Ghostscript. Also check that the attachment format is actually what ICTFax is configured to accept — a file with a .pdf extension that’s actually an image or an HTML page will fail conversion.

Fax job is queued but never transmits — status stays on Pending

Check your SIP trunk status. Go to the ICTFax admin and verify the trunk shows as registered and active. A fax job queues successfully but won’t transmit if there’s no working SIP trunk to carry it. Also check whether your SIP provider supports T.38 fax — some providers require T.38 to be explicitly enabled on the trunk, and fax transmissions fail silently over providers that don’t support it. Confirm T.38 support with your provider and enable it in the ICTFax trunk settings.

Fax transmits successfully but the recipient receives a garbled or blank page

This is almost always a T.38 vs. G.711 fax passthrough mismatch between ICTFax and your SIP provider, or a fax speed negotiation issue. Try setting the maximum fax speed to 9600 bps in the ICTFax fax settings — slower speeds are more tolerant of network jitter and often resolve garbled output. If the document is rendering as blank, the conversion from PDF to TIFF may have produced an all-white image — test by converting the PDF locally with Ghostscript and checking the resulting TIFF file.

Frequently Asked Questions

Does the recipient know the fax came from email, or does it look like a normal fax?

To the recipient, it looks like a normal fax. The fax header line shows your configured sender fax number and name, not any email address or indication of how it was submitted. The document content is whatever you attached — ICTFax converts the file to the standard T.30/T.38 fax format before transmitting.

What file formats can users attach?

With Ghostscript and LibreOffice installed, ICTFax handles PDF, DOC, DOCX, and common image formats including TIFF, JPG, and PNG. PDF is the most reliable format — encourage users to send PDFs where possible. DOCX conversion through LibreOffice sometimes has minor formatting differences compared to the original, especially with complex layouts. TIFF files at fax resolution (200 DPI) transmit with no conversion needed.

Is there a way to get a delivery confirmation back to the sender?

Yes. ICTFax can send a delivery notification email back to the sender when the fax job completes or fails. Configure this under Settings > Notifications. The notification includes the job status, timestamp, and number of pages. For failed jobs, it includes the failure reason — useful for users who are submitting from an email client and can’t check the ICTFax portal directly.

How do I prevent the gateway from being used by unauthorized senders?

Two layers of protection: at the Postfix level, configure sender address verification or require SMTP authentication. At the ICTFax level, set an allowed sender list in the Email to Fax settings. For higher security, restrict the email gateway to your internal mail server only — set Postfix to only accept email for the fax domain from your internal relay, not from the open internet. This way only users on your corporate email system can trigger fax transmissions.

Can users send faxes to international numbers through the email gateway?

Yes, as long as your SIP trunk supports international dialing and the recipient number is formatted correctly. For international numbers, users should address the email to the full number in E.164 format without the plus sign — e.g., 441614960000@fax.yourdomain.com for a UK number. Confirm international dialing is enabled on your SIP trunk account and check per-minute rates for international destinations before opening it up to all users.

ICTFax is fax server software built on FreeSWITCH for businesses that need reliable, scalable fax with HIPAA-compliant workflows. Learn more about ICTFax and see how it handles inbound, outbound, and email-to-fax in a single deployment.

Related Resources