Invoice Components for EDIFACT
Mandatory components
This table lists the groups, segments, composites, and elements that have been defined as mandatory by the standards committee for an EDIFACT invoice (INVOIC).
| Group | Segment | Composite | Element | Description |
|---|---|---|---|---|
| BGM | Beginning of Message | |||
| DTM | Date/Time/Period | |||
| C507 | ||||
| DTM01 | Date/Time/Period Qualifier | |||
| UNS | Section Control | |||
| UNS01 | Section Identification | |||
| MOA | Monetary Amount |
Required components
This table lists the form components for this tutorial that are required (need to be activated) and are not mandatory for the standard.
| Element | Description | DataType | Length | Constant, Code Value, or Format to Be Assigned |
|---|---|---|---|---|
| Beginning of Message (BGM Segment) (Already Activated) | ||||
| BGM05 | Document/Message Number | String | 35 | |
| Date/Time/Period (DTM Segment) (Already Activated) | ||||
| DTM01 | Date/Time/Period Qualifier | String | 3 | 3 (Invoice Date/Time) |
| DTM02 | Date/Time/Period | String | 35 | |
| Reference (RFF Group) Reference (RFF Segment in RFF Group) |
||||
| RFF01 | Reference Qualifier | String | 3 |
|
| RFF02 | Reference Number | String | 35 | |
| Date/Time/Period (DTM:2 Segment in RFF Group) | ||||
| DTM:201 | Date/Time/Period Qualifier | String | 3 |
|
| DTM:202 | Date/Time/Period | String | 35 | |
| Name and Address (NAD Group) Name and Address (NAD Segment in NAD Group) |
||||
| NAD01 | Party Qualifier | String | 3 |
|
| NAD10 | Party Name | String | 35 | |
| NAD16 | Street and Number/P.O. Box | String | 35 | |
| NAD17 | Street and Number/P.O. Box | String | 35 | |
| NAD19 | City Name | String | 35 | |
| NAD20 | Country Sub-Entity Identification | String | 9 | |
| NAD21 | Postcode Identification | String | 9 | |
| Payment Terms (PAT Group) Payment Terms Basis (PAT Segment in PAT Group) |
||||
| PAT01 | Payment Terms Type Qualifier | String | 3 | Any valid code |
| Line Item (LIN Group) Line Item (LIN Segment in LIN Group) |
||||
| LIN01 | Line Item Number | Number | 6 | |
| Additional Product ID (PIA Segment in LIN Group) | ||||
| PIA01 | Product ID Function Qualifier | String | 3 | 5 (Product Identification) |
| PIA02 | Item Number | String | 35 | |
| PIA03 | Item Number Type, Coded | String | 3 | UP (UPC (Universal Product Code)) |
| Item Description (IMD:2 Segment in LIN Group) | ||||
| IMD:201 | Item Description Type, Coded | String | 3 | F (Free Form) |
| IMD:206 | Item Description | String | 35 | |
| Measurements (MEA:2 Segment in LIN Group) | ||||
| MEA:201 | Measurement Application Qualifier | String | 3 | AAE (Measurement) |
| MEA:202 | Measurement Dimension, Coded | String | 3 | |
| Quantity (QTY:2 Segment in LIN Group) | ||||
| QTY:201 | Quantity Qualifier | String | 3 | 47 (Invoiced Quantity) |
| QTY:202 | Quantity | Number | 15 | Format = R0 |
| Date/Time/Period (DTM:11 Segment in LIN Group) | ||||
| DTM:1101 | Date/Time/Period Qualifier | String | 3 | 186 (Departure Date/Time, Actual) |
| DTM:1102 | Date/Time/Period | String | 35 | |
| Monetary Amount (MOA Group in LIN
Group) Monetary Amount (MOA:5 Segment in MOA Group in LIN Group) |
||||
| MOA:501 | Monetary Amount Type Qualifier | String | 3 | 146 (Unit Price) |
| MOA:502 | Monetary Amount | Number | 18 | Format = R2 |
| Details of Transport (TDT Group in
LIN Group) Details of Transport (TDT:2 Segment in TDT Group in LIN Group) |
||||
| TDT:201 | Transport Stage Qualifier | String | 3 | 20 (Main-Carriage Transport) |
| TDT:205 | Type of Means of Transport Identification | String | 8 | Any valid code |
| TDT:207 | Carrier Identification | String | 17 | |
| Section Control (UNS Segment) | ||||
| UNS01 | Section Identification | String | 1 | S (Summary) |
| Control Total (CNT Segment) | ||||
| CNT01 | Control Qualifier | String | 3 | 2 (Number of Line Items) |
| CNT02 | Control Value | Number | 8 | Format = N0 |
| Monetary Amount (MOA Group) (Already
Activated) Monetary Amount (MOA:10 Segment in MOA Group) |
||||
| MOA:1001 | Monetary Amount Type Qualifier | String | 3 | 77 (Invoice Amount) |
| MOA:1002 | Monetary Amount | Number | 18 | Format = R2 |
Customization tasks
Sterling Gentran:Server® generates a form based on the groups, segments, composites, and elements you activate. At this point, the form is compliant with the standard and it contains all the necessary components based on the data you send Pet Zone. You need to customize the form components to produce a form that is easy to use to enter data in a logical manner.
This table lists the customization tasks described in this tutorial.
| Form Component | Description | Customization Task |
|---|---|---|
| BGM05 element | Document/Message Number | You will set up the document name (which enables you to differentiate between messages in the document browsers in Sterling Gentran:Server) in this element. Also, your users will enter no longer than an eight-character string in this element, so you will change the maximum length for this element to eight. In addition, you will change the field label to Invoice No., which better describes the data your users will enter. |
| DTM segment | Date/Time/Period | You and your trading partner will use this segment only once, so you will change the maximum use of this segment to one. |
| DTM01 element | Date/Time/Period Qualifier | Your users will enter only the invoice date in this segment, so you do not need to load the entire code list table. You will define a constant value in this element for the invoice date. Then, you will prevent this field from being displayed in the screen entry form, because the value for this field will be entered automatically. |
| DTM02 element | Date/Time/Period | Your users will enter a string no longer than eight characters in this element, so you will change the maximum length for this element to eight. Also, you will change the field label to Invoice Date. |
| RFF group | Reference | You and your trading partner will use this group only once, so you will change the maximum use of this group to one. You will promote this group so that the fields in this group are placed on the main Invoice Message frame. Also, you need two iterations of this group: one for the contract number, and one for the purchase order number. You will copy this segment so that you will have the two iterations of this group you need. |
| RFF01 element | Reference Qualifier | Your users will enter only the contract number in this segment, so you do not need to load the entire code list table. You will define a constant value in this field for the contract number. Then, you will prevent this field from being displayed in the screen entry form, because the value for this field will be entered automatically. You will perform the same task (with a different constant value) for the Reference Qualifier field in the new RFF group that you created by copying the original RFF group. |
| RFF02 element | Reference Number | Your users will enter a string no longer than ten characters in this element, so you will change the maximum length for this element to ten. Also, you will change the field label to P.O. No. ("Contract No." for the Reference Number field in the second iteration of the RFF segment). |
| DTM:2 segment | Date/Time/Period | You and your trading partner will use this segment only once, so you will change the maximum use of this segment to one. |
| DTM:201 element | Date/Time/Period Qualifier | Your users will enter only the contract date in this segment, so you do not need to load the entire code list table. You will define a constant value in this field for the contract date. Then, you will prevent this field from being displayed in the screen entry form, because the value for this field will be entered automatically. You will perform the same task (with a different constant value) for the Date/Time/Period Qualifier field in the new RFF group that you created by copying the original RFF group. |
| DTM:202 element | Date/Time/Period | Your users will enter a string no longer than eight characters in this element, so you will change the maximum length for this element to eight. Also, you will change the field label to P.O. Date ("Contract Date" for the Date/Time/Period field in the second iteration of the RFF segment). |
| NAD group | Name and Address | You and your trading partner have decided to use this group only once, so you will change the maximum use of this group to one. You will promote this group so that the fields in this group are placed on the main Invoice Message frame. Also, you need two iterations of this group: one for the Ship To name and address, and one for the Remit To name and address. You will copy this segment so that you will have the two iterations of this group you need. |
| NAD01 element | Party Qualifier | Your users will enter only the Ship To name and address in this group, so you do not need to load the entire code list table. You will define a constant value in this element for the contract number. Then, you will prevent this field from being displayed in the screen entry form, because the value for this field will be entered automatically. You will perform the same task (with a different constant value) for the Party Qualifier field in the new NAD group that you created by copying the original NAD group. |
| NAD10 element | Party Name | You will change the field label for this element to Ship To ("Remit To" for the Party Name field in the new NAD group). |
| NAD16 element | Street and Number/P.O. Box | The data in this element will be self-explanatory, so you will remove the label from this field. |
| NAD17 element | Street and Number/P.O. Box | The data in this element will be self-explanatory, so you will remove the label from this field. |
| NAD19 element | City Name | The data in this element will be self-explanatory, so you will remove the label from this field. Also, your users will enter no longer than a thirty-character string in this element, so you will change the maximum length for this element to thirty. |
| NAD20 element | Country Sub-Entity Identification | The data in this element will be self-explanatory, so you will remove the label from this field. Also, your users will enter no longer than a two-character string in this element, so you will change the maximum length for this element to two. |
| NAD21 element | Postcode Identification | The data in this element will be self-explanatory, so you will remove the label from this field. |
| PAT group | Payment Terms | You and your trading partner will use this group only once, so you will change the maximum use of this group to one. You will promote this group so that the fields in this group are placed on the main Invoice Message frame. |
| PAT01 element | Payment Terms Type Qualifier | Your users can enter any of the payment terms type codes that the standard designates as valid codes. You will load the entire code list for this element, which will create a list containing valid codes from which users can select. Also, you will change the field label to Payment Terms Code. |
| LIN group | Line Item | You will add the more descriptive title, Line Items, to the group description to label the fields contained on the LIN frame. |
| LIN01 element | Line Item Number | You will use an accumulator for this element to count line items in the invoice. This accumulator will be used in the Control Value field (CNT02) to calculate the total number of line items in the invoice. You will instruct the system to display the value in this field in the first column in the Line Items list on the Invoice Message frame. Also, the line item number will be no longer than five digits, so you will change the maximum length for this element to five. In addition, you will change the field label to Item No. |
| PIA segment in the LIN group | Additional Product ID | You and your trading partner will use this segment only once per line item, so you will change the maximum use of this segment to one. |
| PIA01 element | Product ID Function Qualifier | Your users will enter only the item number in this segment, so you do not need to load the entire code list table. You will define a constant value in this element for the item number. Then, you will prevent this field from being displayed in the screen entry form, because the value for this field will be entered automatically. |
| PIA02 element | Item Number | Your users will enter a string no longer than ten characters in this segment, so you will change the maximum length for this element to ten. Also, you will change the field name to Product Code. In addition, you will instruct the system to display the value in this field in the second column in the Line Items list on the Invoice Message frame. |
| PIA03 element | Item Number Type, Coded | Your users will enter only the product identification in this segment, so you do not need to load the entire code list table. You will define a constant value in this element for the product identification. Then, you will prevent this field from being displayed in the screen entry form, because the value for this field will be entered automatically. Also, the constant you defined for this element is only two characters long, so you will change the maximum length of this element to two. |
| IMD:2 segment in the LIN group | Item Description | You and your trading partner have decided to use this segment only once per line item, so you will change the maximum use of this segment to one. |
| IMD:201 element | Item Description Type, Coded | Your users will enter only the free-form description in this segment, so you do not need to load the entire code list table. You will define a constant value in this field for the free-form description. Then, you will prevent this field from being displayed in the screen entry form, because the value for this field will be entered automatically. |
| MEA:2 segment in the LIN group | Measurements | You and your trading partner have decided to use this segment only once per line item, so you will change the maximum use of this segment to one. |
| MEA:201 element | Measurement Application Qualifier | Your users will enter only the measurement dimension in this element, so you do not need to load the entire code list table. You will define a constant value in this element for the measurement dimension. Then, you will prevent this field from being displayed in the screen entry form, because the value for this field will be entered automatically. |
| MEA:202 element | Measurement Dimension, Coded | Your users can enter any of the measurement dimension codes that the standard designates as valid codes. You will load the entire code list for this element, which will create a list containing valid codes from which users can select. Also, you will change the field label to UOM (indicating "Unit of Measure"). |
| QTY:2 segment in the LIN group | Quantity | You and your trading partner will use this segment only once, so you will change the maximum use of this segment to one. |
| QTY:201 element | Quantity Qualifier | Your users will enter only the invoiced quantity in this segment, so you do not need to load the entire code list table. You will define a constant value in this element for the invoiced quantity. Then, you will prevent this field from being displayed in the screen entry form, because the value for this field will be entered automatically. |
| QTY:202 element | Quantity | You will use an accumulator for this element to generate a running total of the invoice amount. This accumulator will be used in the Monetary Amount field (MOA:1002) to identify the total dollar amount invoiced. You will instruct the system to display the value in this field in the third column in the Line Items list on the Invoice Message frame. Also, your users will enter a number no longer than five digits in this element, so you will change the maximum length for this element to five. In addition, Your users will not use decimal places for the data in this field, so you will format the data with an explicit decimal point and no decimal places. |
| DTM:11 segment in the LIN group | Date/Time/Period | You and your trading partner will use this segment only once per line item, so you will change the maximum use of this segment to one. |
| DTM:1101 element | Date/Time/Period Qualifier | Your users will enter only the actual departure date in this segment, so you do not need to load the entire code list table. You will define a constant value in this element for the actual departure date. Then, you will prevent this field from being displayed in the screen entry form, because the value for this field will be entered automatically. |
| DTM:1102 element | Date/Time/Period | Your users will enter a string no longer than eight characters in this element, so you will change the maximum length for this element to eight. Also, you will change the field label to Date Shipped. |
| MOA group in the LIN group | Monetary Amount | You and your trading partner will use this group only once per line item, so you will change the maximum use of this group to one. You will promote this group so that the fields in this group are placed on the main Invoice Message frame. |
| MOA:501 element | Monetary Amount Type Qualifier | Your users will enter only the unit price in this segment, so you do not need to load the entire code list table. You will define a constant value in this element for the unit price. Then, you will prevent this field from being displayed in the screen entry form, because the value for this field will be entered automatically. |
| MOA:502 element | Monetary Amount | You will use an accumulator for this element to generate the total dollar amount of the invoice amount. This accumulator will be used in the Monetary Amount field (MOA:1002) to identify the total dollar amount invoiced. You will instruct the system to display the value in this field in the fourth column in the Line Items list on the Invoice Message frame. Also, your users will enter a number no longer than eight digits in this element, so you will change the maximum length for this element to eight. In addition, your users will enter prices with two decimal points in this field, so you will format the data with an explicit decimal point and two decimal places. Finally, you will change the field label to Price. |
| TDT group in the LIN group | Details of Transport | You and your trading partner have decided to use this group only once per line item, so you will change the maximum use of this group to one. You will promote this group so that the fields in this group are placed on the main Invoice Message frame. |
| TDT:201 element | Transport Stage Qualifier | Your users will enter only the main-carriage transport in this segment, so you do not need to load the entire code list table. You will define a constant value in this field for the transport stage. Then, you will prevent this field from being displayed in the screen entry form, because the value for this field will be entered automatically. |
| TDT:205 element | Type of Means of Transport Identification | Your users can enter any of the type of means of transport identification codes that the standard designates as valid codes. You will load the entire code list for this element, which will create a list containing valid codes from which users can select. Also, you will change the field label to Transport Method. In addition, your users will enter a string no longer than two characters in this element, so you will change the maximum length for this element to two. |
| TDT:207 element | Carrier Identification | Your users will enter a string no longer than twelve characters in this element, so you will change the maximum length for this element to twelve. Also, you will change the field name to Carrier Code. |
| UNS01 element | Section Identification | The only type of section identification used in this segment is summary, so you do not need to load the entire code list table. You will define a constant value in this element for the summary. Then, you will prevent this field from being displayed in the screen entry form, because the value for this field will be entered automatically. |
| CNT segment | Control Total | You and your trading partner have decided to use this segment only once, so you will change the maximum use of this segment to one. |
| CNT01 element | Control Qualifier | The only type of control used in this segment is the number of line items, so you do not need to load the entire code list table. You will define a constant value in this element for the number of line items. Then, you will prevent this field from being displayed in the screen entry form, because the value for this field will be entered automatically. |
| CNT02 element | Control Value | You will use an accumulator for this element to generate a total of the number of line items in the invoice. You will make this field display-only, so that users cannot change the value in this field. Also, the total in this field will be no longer than a six-character string, so you will change the maximum length for this element to six. You will change the field label to Number of Line Items. In addition, the value in this field always will be a whole number, so you will format the data with an explicit decimal point and no decimal places. |
| MOA group | Monetary Amount | You and your partner will use this group only once, so you will change the maximum use of this group to one. You will promote this group so that the fields in this group are placed on the main Invoice Message frame. |
| MOA:1001 element | Monetary Amount Type Qualifier | The only type of monetary amount used in this segment is the invoice amount, so you do not need to load the entire code list table. You will define a constant value in this field for the invoice amount. Then, you will prevent this field from being displayed in the screen entry form, because the value for this field will be entered automatically. |
| MOA:1002 element | Monetary Amount | You will use an accumulator for this element to generate a running total of price (the quantity invoiced for each line item multiplied by the unit price). You will make this field display-only, so that users cannot change the value in this field. Also, the total in this field will be no longer than a ten-character string, so you will change the maximum length for this element to ten. You will change the field label to Total Invoice Amount. Finally, the value in this field will be a price with two decimal places, so you will format the data with an explicit decimal point and two decimal places. |