Symbologies
ITF-14 barcode generator
A 14-digit GTIN with a valid check digit becomes an ITF-14 image address.

An ITF-14 is the barcode on the outer case of a product, for a 14-digit GTIN. Beepable draws one only when the check digit matches, and it keeps a leading zero, so the case code is never rewritten as the EAN-13 of the unit inside. The picture includes the bearer bars, the frame that warehouse scanners expect.
How do I generate an ITF-14?
- Use the 14-digit GTIN assigned to the case, including its own check digit. 04006381333931 is an example with a leading zero.
- Keep it as text everywhere. A number cell or a JSON number drops the first zero.
- Put the code in A2, your picture key in Z1, and this formula in B2:
=IMAGE("https://beepable.app/i/itf14.png?v="&ENCODEURL(A2)&"&k="&$Z$1) - Fill down and scan one case label. The scanner should return all 14 digits, including the zero.
- Place the picture without cropping the bearer bars or the white margin outside them.
How is this different from EAN-13?
| EAN-13 | ITF-14 | |
|---|---|---|
| Digits | 13 | 14 |
| Printed on | The unit, for the till | The outer case, for the warehouse |
| Frame | None | Bearer bars around the symbol |
| Digits under the bars on this site | With hrt=1 | No; print them as text |
Adding a zero to a 13-digit code yourself does not make a case GTIN. The check digit would still be the unit's, and the case would scan as the wrong item. Ask whoever assigns your GTINs for the case code.
What if the cell shows a card?
| The cell shows | Why | What to do |
|---|---|---|
| Check digit is invalid for this GTIN. Name code128 to encode it anyway. | The last digit does not match the other digits. | Copy the code again from its source. Beepable never makes up a check digit. |
| ITF-14 needs 14 digits. This has 13. | The code lost its leading zero, or it is a unit EAN-13. | Format the column as text, or use the case GTIN. |
| This barcode needs an API key. | Z1 is empty, or the formula does not point at it. | Paste your picture key in Z1, and keep both dollar signs in $Z$1. |
| This API key has been revoked. | The key was revoked on the Account page. | Create a new picture key and paste it in Z1. |
How do I draw a column of case codes?
Write itf14 in the formula, as above, when the column must hold case codes only. A 13-digit code then shows a card instead of an EAN-13, which is exactly what you want on a case template. With auto, a 13-digit code would quietly become an EAN-13.
For a whole catalog, a PIM can send the case GTINs to the batch route as strings with an All routes key, and store the returned addresses. The warehouse sheet that shows them adds a picture key. Keep the two keys separate, so you can replace the sheet's key without stopping the PIM.
How do I check the carton art?
Scan 04006381333931 from a printed label and confirm the reader returns 14 digits. Check that the bearer bars sit fully inside the printed area. Then try a 13-digit unit code in the same template and confirm it shows a card. Print the 14 digits as text on the label if your spec needs them, taken from the same cell.
Frequently asked questions
How many digits does ITF-14 need?
14 digits, including a valid check digit. 04006381333931 is an ITF-14. The leading zero stays, and it is not turned into an EAN-13.
Where is ITF-14 used?
On the outer case or carton of a traded item. The picture includes the bearer bars, the thick frame around the symbol.
What if I only have the 13-digit code?
A 13-digit GTIN is an EAN-13 for the unit. A case needs its own 14-digit GTIN with its own check digit. Do not add a zero yourself.
Are the digits printed under the bars?
No. ITF-14 has no printed line on this site. Print the 14 digits as text on the case label, copied from the same cell.
How do I keep the leading zero?
Keep the 14 digits as text in the sheet, the CSV, and the JSON. A number drops the zero, and 13 digits are refused for ITF-14.



