Home | Tips | Library | Other Authors | Other WP Sites | Writer's Links | Contact | Site Map | Donate

Barry MacDonnell's
Toolbox for WordPerfect

Macros, tips, and templates for Corel® WordPerfect® for Windows®
© Copyright 1996-2021 by Barry MacDonnell. All Rights Reserved.

Page updated May 19, 2012

Does using a (WordPerfect) Postal Bar Code help speed delivery of your letter through the U.S. Mail?

The short answer is "probably not" -- for normal outgoing mail (i.e., not specially designed "business reply" or "bulk" mail, or mail that is not specially pre-sorted). But see below.

There has been a lot of discussion over the past few years on various Corel news groups, Compuserve forums, and elsewhere about whether bar codes help speed individually mailed letters (in contrast to bulk mail -- trays of business reply mail and courtesy reply mail).

In any case, among other requirements it seems bar-coded envelopes may need a Facing Identification Mark (FIM) -- the vertical alignment marks you see on commercial return envelopes at the top of the envelope near the postage stamp area. Otherwise Post Office equipment may be "blind" to the user-entered bar code.

Here's some information to help you decide for yourself.

Update (05/19/12) -

From the United States Postal Service at http://pe.usps.com/businessmail101/misc/discountsBarcoded.htm -

"Barcoding your mail may entitle you to a lower postage rate, but ONLY if all the other requirements for automation postage rates are met. A barcode alone will NOT qualify your mail for automation rates.

In general, the Postal Service recommends that, unless you are preparing a mailing for automation rates, you should NOT put barcodes on the mailpieces. As long as the mailing address is correct, your mail will still be processed efficiently without a barcode—and you won’t need to worry about having the wrong barcode on your mail. A bad (incorrect) barcode is much worse than no barcode at all. A bad barcode can cause your mailpiece to travel to the wrong destination. ..."

If you still think you need them:

Update (08/24/05) -

Here's a quote from the United States Postal Service Publication 25, March 2001, pp53-55 (http://pe.usps.gov/cpim/ftp/pubs/Pub25/pub25.pdf):

The facing identification mark (FIM) is a pattern of vertical bars printed in the
upper right portion of a mailpiece, to the left of the postage area. A FIM pattern
is essentially a nine-bit code consisting of bars and no-bar placeholders. The
presence of a bar can be considered a binary "1" (one); the absence of a bar, a
binary "0" (zero).

The FIM patterns currently used translate into these binary codes:
FIM A: 110010011
FIM B: 101101101
FIM C: 110101011
FIM D: 111010111

Determine which FIM to use (see Exhibit 5-3) as follows:
FIM A is used for CRM [Courtesy Reply Mail] and MRM [Metered Reply Mail] with a preprinted barcode.
FIM B is used for BRM [Business Reply Mail] without a preprinted BRM ZIP+4 barcode.
FIM C is used for BRM with a preprinted BRM ZIP+4 barcode.
FIM D is used only with information based indicia (IBI) postage.

The FIM uses a code that tells automated processing equipment some of what it
needs to know to do its job. The FIM allows automatic facing (orientation) of the
mail for cancellation (postmarking). The FIM also identifies reply mail that bears
a preprinted barcode. Barcoded mail is then routed directly to a high-speed
barcode sorter, bypassing slower manual sorting or optical character reader
(OCR) processing.

FIM Standards
Make sure the FIM meets the following standards:
The FIM clear zone must contain no printing other than the FIM pattern.
Exhibit 5-4 shows the configuration of the clear zone and the correct location
of the FIM.
The rightmost bar of the FIM must be 2 inches ± 1 /8 inch from the right edge of
each mailpiece.
The FIM bars must be 5 /8 inch high ± 1 /8 inch and 1 /32 inch wide ±0.008 inch.

The tops of the FIM bars must be no lower than 1 /8 inch from the top edge of
each mailpiece. They may extend over the top edge to the flap.
The bottoms of the FIM bars should touch the bottom edge of the FIM clear
zone but must not be more than 1 /8 inch above or below that edge.
[Italics mine. The non-printable area for most printers -- which, for most lasers, is 1/4 inches -- means a FIM that is added by your printer probably will be too low!] ...

And so forth and so on. Doesn't look too useful for the average piece of personal or business mail, does it?

I've tested sending ordinary letters across town and across country -- with bar codes and without (but not with a FIM-A mark), and with codes placed above as well as below the mailing address -- and haven't seen any significant difference. So I don't use them -- but your experience may be different.

If you want to print a FIM-A mark, you could use the macro in the footnote at the bottom of this web page.

Update (11/14/03) - Jack Waananen, Corel C_Tech, reports:

The barcode feature is useful if a mailer delivers the envelopes to the USPS
already "faced" (oriented in one direction) in first-class trays or bulk-mail bundles -- presorted by zip code.

For individual envelopes tossed into the mix with other mail, the barcode without the FIM (Facing Identification Mark) is not useful.

Update (04/04/02) - For more information see the US Postal Service site at http://www.usps.com/ (enter "Publications" in the Search field) or get Publication 25, "Designing Letter and Reply Mail," a 4MB (PDF) file directly downloadable from the USPS site at http://pe.usps.gov/cpim/ftp/pubs/Pub25/pub25.pdf. It contains information on automation, POSTNET bar codes, FIM marks, etc.

Update (1/21/00) - From the Bizfonts site: "... The FIM (Facing Identification Mark) font is a special font used by the US Post Office to separate Business Reply Mail from other mail. The FIM font consists of four unique bar codes; each bar code represents a unique reply mail classification as defined in the graphic image above.... "

Here's a snippet from a page from Corel's Knowledge Base relating to WPWin6 but should apply to all versions of WPWin:

"POSTNET Barcode And WordPerfect Software
DocumentID: 632828

Revision Date: 2/29/96 3:03:06 PM

The information in this document applies to:

WordPerfect® 6.0 for Windows®

...POSTNET barcodes are one of the requirements for postal discounts....There are a number of factors beyond the certified software and printers that are required to gain postal discounts. The Bulk Mail Entry Unit is the department at the post office where mail is taken that qualifies for any bulk mail discounts. Again, contact your local postal representative for details.

The postal service will not use the POSTNET barcode to route the postal piece if it does not have a Facing Identification Mark (FIM). [Italics mine.] A FIM is a set of graphics lines located to the left of the postage stamp. Common postal pieces that use FIMs are business reply cards. (FIMs are used on other postal pieces as well.) If the postal equipment finds a FIM (with stamped mail), the postal piece is routed through cancellation equipment, then sent to a POSTNET barcode reader. If no FIM is found, the postal piece is routed to an Optical Character Reader (OCR) where the address block is read from the bottom up. Postal equipment sprays a POSTNET bar code in the lower right corner of the postal piece. (This is why a postal piece may have two POSTNET bar codes.)

Metered letters do not go through cancellation equipment. The meter date is considered a cancellation. All metered letters (unless mail is entered at the Bulk Mail Entry Unit) is put on the OCR for processing.

The POSTNET barcode can be placed in three different locations. The preferred location is in the lower right corner of the envelope. The second best position is above the address block, and the third option is below the address block. If no FIM is found on the envelope and a POSTNET barcode is used, it should be placed above the address block. The OCR reader reads the address from the bottom up. If the mail piece does go to the OCR and another barcode needs to be sprayed on the mail piece, it will be placed in the lower right corner.

The POSTNET barcode should be 11 digits. (Check with your Postal Representative for information about how to identify the last two digits. Basically, they are the last two numbers of the primary street address, such as 55 for 1555 Technology Way.) The ZIP Code in the address block should be the ZIP or ZIP+4. The tenth and eleventh digits should not be included in the address block. These last two digits must be entered manually since WordPerfect software does not identify and automatically add the last two numbers of the primary street address in the barcode field. It is recommended to use one field for the ZIP+4 and another for the 11 digit POSTNET barcode when using a WordPerfect Data Merge file or a DataPerfect database.

The address block should:

Print within a certain area (defined as the OCR read area on Notice 67 template)

1. Use a readable font for the optical reader (San Serif fonts, see Publication 25, Table 2, page 25)

2. Be all uppercase

3. Have no punctuation (A hyphen "-" is not considered punctuation and therefore can be part of the address block where appropriate.)

4. Use standard abbreviations (see Publication 28, Appendix F, pages 73- 74).

Those who are interested in specific information should contact their local postal representative. Publications 25 and 28 are free items....

Here is a snippet from a public message on a Compuserve forum:

"...Most of the time unbundled mail (i.e. first class mail not already in trays) goes through the machinery to add the postnet codes anyway, even if already on the envelope. Envelopes with FIMs are rerouted but those without are not. The operator, who has his headphones cranked up and is working by autopilot, will key in the barcode information automatically, even if the envelope already has it.
So, my understanding is that it is not worth the effort to barcode letters if (1) they do not have FIMs and (2) they are not in trays (minimum 200 pieces)."

And another from a Corel newsgroup:

"... Also note that bar codes are really only useful on faced mail in first-class trays (i.e. mail placed in the USPS trays all facing the same direction) that can bypass the encoding process OR on unfaced (random envelopes) that have facing marks -- the vertical lines to the left of the stamp that you see, for example, on your utility company return envelopes.

In other words, bar codes on random envelopes without facing marks are not useful. Mail one to yourself and you will see that the USPS has added their own bar code at the bottom...."

Stay tuned....

Page Top


Here is a macro that works (at least, for me) to print a FIM-A mark on an envelope, usually appended to the current document. Place your cursor on the envelope page and play the macro. You'll get a FIM A mark (five vertical lines) at the top, starting 2.5" from the right edge of the envelope page. (Any size envelope can be marked this way.)

Note that the FIM mark is set up to print 1/4-inch from the top edge of the envelope, which is too low according to USPS standards (see above). You can change this ... but the mark must have graphic lines of a certain height, so decreasing the distance from the top edge of the envelope won't help since it will shorten the printed lines!

Anyway, you are welcome to the code below, which is based on an anonymous source and was posted at WordPerfect Universe.

If you select the code and copy it to the Windows clipboard with Ctrl+C, be sure to paste the code into WordPerfect with Edit, Paste Special, Unformatted text.

// Macro code begins here

// Set the coordinates for the FIM's first graphic line in the next two commands.
// Most printers need 0.25" along the top edge of the envelope if the envelope is fed narrow edge first. This is the "non printable" area; adjust as required for your printer.


vWidth=ConvertType(vWidth; Inches!)
PosPageTop ()
PosLineVeryBeg ()
GraphicsLineCreate ()
GraphicsLineType (Vertical!)
GraphicsLineStyle (SingleLine!)
GraphicsLineSpacing (0.0")
GraphicsLineLength (0.625")
GraphicsLineHorizontalPosition (Set!; vHorizPos)
GraphicsLineVerticalPosition (Set!; vVertPos)
GraphicsLineThickness (0.0308")
GraphicsLineEnd (Save!)
GraphicsLineCreate ()
GraphicsLineType (Vertical!)
GraphicsLineStyle (SingleLine!)
GraphicsLineSpacing (0.0")
GraphicsLineLength (0.625")
GraphicsLineHorizontalPosition (Set!; vHorizPos+.0625")
GraphicsLineVerticalPosition (Set!; vVertPos)
GraphicsLineThickness (0.0308")
GraphicsLineEnd (Save!)
GraphicsLineCreate ()
GraphicsLineType (Vertical!)
GraphicsLineStyle (SingleLine!)
GraphicsLineSpacing (0.0")
GraphicsLineLength (0.625")
GraphicsLineHorizontalPosition (Set!; vHorizPos+.25")
GraphicsLineVerticalPosition (Set!; vVertPos)
GraphicsLineThickness (0.0308")
GraphicsLineEnd (Save!)
GraphicsLineCreate ()
GraphicsLineType (Vertical!)
GraphicsLineStyle (SingleLine!)
GraphicsLineSpacing (0.0")
GraphicsLineLength (0.625")
GraphicsLineHorizontalPosition (Set!; vHorizPos+.4375")
GraphicsLineVerticalPosition (Set!; vVertPos)
GraphicsLineThickness (0.0308")
GraphicsLineEnd (Save!)
GraphicsLineCreate ()
GraphicsLineType (Vertical!)
GraphicsLineStyle (SingleLine!)
GraphicsLineSpacing (0.0")
GraphicsLineLength (0.625")
GraphicsLineHorizontalPosition (Set!; vHorizPos+.5")
GraphicsLineVerticalPosition (Set!; vVertPos)
GraphicsLineThickness (0.0308")
GraphicsLineEnd (Save!)

// Macro code ends here

(rev. 11/02/98; 01/21/00; 02/05/01; 04/04/02; 11/14/03; 08/24/05; 03/31/06; 03/02/07)

Page Top