In-depth resources:
Tutorial: Generating GS1-128 barcodes

GS1-128 is an application standard of the GS1 implementation using the Code 128 barcode specification. GS1-128 uses a series of Application Identifiers to include additional data such as best before dates, batch numbers, quantities, weights and many other attributes needed by the user.*

It is beyond the scope of this help file to explore all the details of the GS1-128 symbology specification.
For more information please refer to the official web site of the GS1 authority:

To generate a GS1-128 compliant barcode symbol in Labeljoy you need to enter the text in the human readable format. Labeljoy will validate the text through its internal GS1-128 validation engine and will generate the corresponding symbol, or will display an error message indicating what the problem is.
For example, by entering the text (00)123456789012345678 Labeljoy will create a GS1-128 barcode symbol that will comply with Application Identifier (00) Serial Shipping Container Code (SSCC-18).

Modulo 10 check digits:
Some AI's (Application identifiers) require a modulo 10 check digit. When required Labeljoy will compute the check digit regardless of what was input.
For example, the SSCC-18 code above needs a check digit in the last position which is actually 5 and not 8. In such scenario no error message will be displayed, instead Labeljoy will simply replace the check digit with the correct one.
So if you don't know how to compute the check digit just enter any digit in its place.

FNC1 separators:
When two or more AI's (Application Identifiers) need to be encoded in a single symbol, the GS1-128 specification may require one or more FNC1 separator characters. Labeljoy will automatically detect where FNC1 separator characters are needed and will add them accordingly.
No extra input is required by Labeljoy to correctly handle FNC1 separators.

IMPORTANT: FNC1 separator characters do not have a corresponding human readable text, they are only encoded in the barcode symbol. Interpretation of the FNC1 character may vary depending on barcode reader settings, although it is often output as ASCII character 29.

If you need to create a custom symbol using the FNC1 separator character, please refer to the EAN-128 symbology.

Labeljoy requires you to enter an alphanumeric text up to 255 characters long to generate the barcode. Enter the text in the text box.
The human readable text can be shown below the symbol, above it or hidden according to the setting specified in the Text combo box.

The Check AI sequence check box enforces an additional GS1-128 rule that regulates the concatenation of certain AI's.
For example, when using AI 02 (Number of containers) the symbol should also encode AI 00 (Serial Shipping Container Code) and AI 37 (Number of Units Contained).
Also, AI 02 should never be encoded in the same symbol with AI 01 (Shipping Container Code) and 8006 (Component of an Article) since they refer to data considered meaningless when mixed.
Keep this check box activated to create GS1-128 symbols that fully comply with the original standard.

Text concatenation:
When an GS1-128 barcode element is generated by concatenating fields or counters, the following rules apply:
- Text length must not exceed 255 characters.
- The text must honor GS1-128 specification.
When a value not complying with the above rules is found, the barcode is not displayed.

GS1-128 symbol encoding the text (00)123456789012345678, which corresponds to AI 00 (SSCC-18). Note that the last digit is 5 in the symbol since it's the correct modulo 10 check digit.
GS1-128 symbol encoding a concatenation of two Application Identifiers: AI 30 (Quantity Each) and AI 21 (Serial Number). Note that in this case an FNC1 separator character is added right before the start of AI 21 (not visible in the human readable text).
GS1-128 symbol encoding a concatenation of three Application Identifiers: AI 01 (Shipping Container Code) and 2 more like the previous image. Note that in this case no FNC1 separator is needed before the start of AI 30.

* From wikipedia.