3. Test and Go Live as a Leader

3.1 Generate an example payload with Integration Assistance

The Integration Assistance page can help you generate the correct payload structure that matches the Guideline for a particular Relationship.

On the Integration Assistance page you can select a:

  1. Transaction Type corresponding to an existing Relationship
  2. Direction: "In" or "Out"
  3. Data Format: "JSON" or "X12"
  4. Version e.g. "1" or "4010"

You will see a list of Trading Partners that you have this Relationship with. When you select one of these Trading Partners, a valid payload will be generated below. You can click on Copy to copy the payload contents.

🚧

Although the structure of the payload corresponds to the Relationship's Guideline, the value of the element (in X12) or property (in JSON) is only a placeholder. Ensure that the values are valid before using this example payload according to your own guideline.

3.2 Create a Transaction

In most instances, EDI transactions will be created by your System of Record (SOR) and then passed on to Orderful. However there are situations where you may want to enter a Transaction directly into Orderful, for example for testing purposes.

The Transaction must correspond to an existing, configured Relationship in Orderful. This means that, in order to send a test Transaction, you must have at least one inbound Relationship configured.

To create a Transaction you can:

Upload a file

To upload a transaction in a file:

  1. Go to the Transactions page
  2. Click on Create Transaction
  3. Select Upload transaction
  4. Choose the file you want to upload.

Transaction files in X12 format can use .txt, .x12 or .edi extensions, while files in JSON format must use the .json extension. For more information about how the file contents must be structured see format information below.

File format for JSON

Files containing JSON must use the following structure. The contents of your Transaction should be entered into the message object. For help generating this transaction content, see Generate an example payload with Integration Assistance.

To see the possible Transaction Type values, see Available Transaction Types.

{
    "type": {
        "name": "TRANSACTION_TYPE_NAME"
    },
    "stream": "test",
    "message": {
        [...] // Enter your data here
    },
    "sender": {
        "isaId": "ISA_ID_SENDER"
    },
    "receiver": {
        "isaId": "ISA_ID_RECEIVER"
    }
}
File format for X12

Files in the X12 format must:

  • Start with an ISA segment.
  • Have at least one interchange envelope (ISA/IEA segments).
  • Have at least one functional group inside each interchange envelope (GS/GE segments).
  • Have at least one transaction set inside each functional group (ST/SE segments).
  • Respect the presence and order of loops, segments, and elements defined by the X12 standards for each transaction type inside each transaction set.

Make an API call

You can create a Transaction by sending an HTTP POST to the Orderful API's /transactions endpoint.

📘

You can send the Transaction data in either JSON or X12 format.

For help generating the content of the transaction, see Generate an example payload with Integration Assistance. For a full description of this endpoint, please see Create a Transaction.

curl --location --request POST 'https://api.orderful.com/v3/transactions' \
--header 'Content-Type: application/json' \
--header 'orderful-api-key: YOUR_API_KEY' \
--data-raw '{
    "stream": "test",
    "sender": {
        "isaId": "YOUR ISA ID HERE"
    },
    "receiver": {
        "isaId": "AMAZONIADEMO"
    },
    "type": {
        "name": "850_PURCHASE_ORDER"
    },
    "message": {
  "transactionSets": [
    {
      "transactionSetHeader": [
        {
          "transactionSetIdentifierCode": "850",
          "transactionSetControlNumber": "0001"
        }
      ],
      "beginningSegmentForPurchaseOrder": [
        {
          "transactionSetPurposeCode": "00",
          "purchaseOrderTypeCode": "SA",
          "purchaseOrderNumber": "PO123456789",
          "date": "20200828"
        }
      ],
      "referenceInformation": [
        {
          "referenceIdentificationQualifier": "DP",
          "referenceIdentification": "210"
        }
      ],
      "dateTimeReference": [
        {
          "dateTimeQualifier": "002",
          "date": "20200910"
        },
        {
          "dateTimeQualifier": "010",
          "date": "20200905"
        }
      ],
      "N1_loop": [
        {
          "partyIdentification": [
            {
              "entityIdentifierCode": "BT",
              "name": "ODF Buyer HQ"
            }
          ],
          "partyLocation": [
            {
              "addressInformation": "1119 BUSH STREET"
            }
          ],
          "geographicLocation": [
            {
              "cityName": "SAN FRANCISCO",
              "stateOrProvinceCode": "CA",
              "postalCode": "94101"
            }
          ]
        },
        {
          "partyIdentification": [
            {
              "entityIdentifierCode": "ST",
              "name": "ODF BUYER MAIN STORE"
            }
          ],
          "partyLocation": [
            {
              "addressInformation": "1207 WASHINGTON RD"
            }
          ],
          "geographicLocation": [
            {
              "cityName": "SEATTLE",
              "stateOrProvinceCode": "WA",
              "postalCode": "98101"
            }
          ]
        }
      ],
      "PO1_loop": [
        {
          "baselineItemData": [
            {
              "assignedIdentification": "1",
              "quantity": "48",
              "unitOrBasisForMeasurementCode": "CA",
              "unitPrice": "26.25",
              "productServiceIDQualifier": "UP",
              "productServiceID": "711719100246",
              "productServiceIDQualifier1": "VN",
              "productServiceID1": "009"
            }
          ],
          "PID_loop": [
            {
              "productItemDescription": [
                {
                  "itemDescriptionTypeCode": "F",
                  "description": "SUNGLASSES VERMILLION (E16249)"
                }
              ]
            }
          ]
        },
        {
          "baselineItemData": [
            {
              "assignedIdentification": "2",
              "quantity": "120",
              "unitOrBasisForMeasurementCode": "CA",
              "unitPrice": "27.45",
              "productServiceIDQualifier": "UP",
              "productServiceID": "611719100245",
              "productServiceIDQualifier1": "VN",
              "productServiceID1": "009A"
            }
          ],
          "PID_loop": [
            {
              "productItemDescription": [
                {
                  "itemDescriptionTypeCode": "F",
                  "description": "SUNGLASSES YELLOW (F8C729)"
                }
              ]
            }
          ]
        }
      ],
      "CTT_loop": [
        {
          "transactionTotals": [
            {
              "numberOfLineItems": "2"
            }
          ]
        }
      ],
      "transactionSetTrailer": [
        {
          "numberOfIncludedSegments": "17",
          "transactionSetControlNumber": "0001"
        }
      ]
    }
  ]
}
}
'

Send a file to your Outbound Communication Channel

If you are using an Outbound Communication Channel like AS2, FTP, or VAN, you can send the file using this system. The details of how this is done will depend on your implementation.

3.3 Transaction validation

After you have sent your Transaction, you can check its status by going to your Transactions page.

If there are any issues, please refer to the Transaction Statuses Overview.

3.4 Scenario Testing for Leaders

At this stage, you should have:

  • Set up your Orderful organization.
  • Set up a Trading Partnership with a Follower.

You are now ready to try out sending and receiving some Transactions. We call this try-out phase Scenario Testing.

When you set up your Trading Partnership you also set up one or more Scenarios. If you go to your Scenario Testing page you will find one or more Scenario Checklists organized by EDI Account.

If you click on the Scenario Checklist, this will open up a side panel on the right with further information, including the list of steps.

Each Scenario Checklist Step includes instructions for sending or receiving a test Transaction. Instructions include:

  • The test transaction's Transaction Type
  • The Trading Partner that must send the test transaction
  • A description that indicates what business information must be included in the test Transaction

If a Scenario Checklist assigns you as the sender of the first test Transaction, you must create that test Transaction and then link it to the Scenario Checklist by clicking Transaction ID and finding your Transaction under "Most recent test transactions", and clicking Save. Then, send the Transaction to your Trading Partner. Once your Trading Partner accepts the test Transaction, the Scenario Checklist Step will turn green and a checkmark will appear beside it. You can now move on to the next step, or, if applicable, wait for your Trading Partner to perform their step.

If a Scenario Checklist assigns your Trading Partner as the sender of the first test Transaction, you must wait for them to send you that test Transaction. After they send the test Transaction, ingest it through your inbound Communication Channel. Once you have successfully ingested the Transaction, make sure to mark it as accepted by sending an Acknowledgment. Once you accept the test Transaction, the Scenario Checklist Step will turn green and a checkmark will appear beside it. You can now move on to the next step, or, if applicable, wait for your Trading Partner to perform another step.

When your Scenario Test is complete it will automatically be moved to the "Completed Testing" tab.

3.5 Go Live

You and your Trading Partner should agree on a time to go live. This communication will happen outside of Orderful. Once you’ve passed scenario testing you should email your Trading Partner and schedule a go-live time that is appropriate for both parties.

Once you are ready, going live is as simple as going to your Relationships page and toggling the "Status" from "Go live ready" to "Live". This will now allow you to post transactions to the Live stream.