Changelog

Retrieve generated EDI files from Stedi's API

You can now programmatically retrieve the generated EDI files that Stedi has delivered to your trading partner.

Stedi emits a file.delivered.v2 event every time a file is successfully delivered to a connection for an outbound transaction set. These events now include an output URL in an event.detail.artifacts object. You can use this URL to fetch the generated EDI file, including its envelope information.

Support for Remote FTP and FTPS connections

You can now configure Remote FTP and FTPS connections in the Stedi app. 

For each partnership configuration in your Stedi account, you can set up one or more connection protocols to exchange files. When connecting to your partner’s remote server, you can choose between the FTP, FTPS, and SFTP protocols.

Send transformed file processed events to your API

You can now use Mappings to automatically transform file.processed.v2 events into a custom JSON shape. You can then attach the mapping to a Destination webhook to automatically forward transformed event data to your API.

For every successful file execution, Stedi emits a file.processed.v2 event that includes information about when Stedi processed the file, the associated partnership configuration, the file size, and more.

Create Stedi mappings faster

Stedi Mappings is our powerful JSON-to-JSON transformation engine. We recently made the following major improvements to the visual mapping tool:

  • The visual mapper now shows warnings when the expected mapping output does not match the target JSON Schema. These warnings highlight issues such as invalid value types and missing properties to help you more easily create a complete, accurate mapping.

  • We added a quickstart workflow that makes it easier to create new mappings. You can choose a quickstart for reading EDI (mapping transactions from Stedi to a custom shape for your API), writing EDI (mapping JSON from your system to the shape required for Stedi’s Generate API), and ingesting Stedi events (for example, mapping `file.failed.v2` events to a custom shape).

  • To help you keep mappings up-to-date, we added clearer notifications when a connected Stedi guide has changed (for example, it has new segments or elements) and provided instructions for pulling those changes into your mapping.

Customize the filename for autogenerated acknowledgments

You can now set a custom filename for autogenerated acknowledgments to comply with your trading partner’s requirements.

Stedi can automatically generate a 997 Functional Acknowledgment or a 999 Implementation Acknowledgment for each inbound transaction and deliver it to a specified connection.

To set a custom filename, navigate to the partnership, turn on the Acknowledgments functionality, and enter a JSONata expression into the Filename expression field. For example, the expression "EDI997_" & $millis()would produce filenames that start with EDI997 and then contain a timestamp, such as EDI997-5182341242.edi.

View Destination webhook logs

You can now view detailed logs for each Destination webhook and filter them by a specific date range. The logs provide details about how the webhook is functioning, such as when each webhook is triggered and the response from the configured endpoint, which can help you troubleshoot issues. 

Destination webhooks allow you to send transaction data and events from Stedi to any external API. To view the logs for a destination, click its name to go to its details page, and then navigate to the Logs tab.

Filter inbound files from Remote SFTP/FTPS connections

You can now specify a regex expression for Stedi to use when retrieving files from a Remote SFTP/FTPS connection. When polling the remote server, Stedi only processes files that match the filter pattern.

For example, your trading partner may place files for multiple different entities on the remote server, with different prefixes for each entity. In this case, you could write a regex expression that matches only files with a given prefix.

You can specify a Filter pattern for the remote poller in the connection’s Inbound settings.

Send transformed file failed events to your API

You can now use Stedi mappings to automatically transform file.failed.v2 events into a custom shape before sending them to external APIs.

Stedi emits file.failed.v2 events when it cannot parse an inbound EDI file, or it cannot deliver an outbound EDI file to the configured connection. You may want to automatically send these events to an external platform like Slack or Jira, so your team can receive alerts and monitor issue resolution.

You can now create a Stedi mapping to transform the file.failed.v2 event JSON into the shape your external systems can receive and ingest. Then, you can attach the mapping to a Destination webhook to automatically forward the transformed event data to your API.

Add attachments to Stedi guides

You can now attach files to any Stedi guide and choose whether the attachments are public or private (only available to members of your Stedi account). 

Stedi guides are a machine-readable representation of the EDI specifications that your trading partners provide to you or that you provide to your trading partners. Attachments provide additional information about the guide. 

For example, you may want to add private attachments that help your team debug issues in your EDI pipeline, such as the original PDF specifications or a changelog. For a public guide, you may want to attach an appendix with a supplementary code list or a diagram that helps your partners understand the messaging flow.

To add attachments to a guide in your account, navigate to its Overview page, scroll to the Attachments section, and click Attach file.

Destination webhooks now support OAuth 2.0

You can now use OAuth 2.0 with Destination webhooks. 

Destination webhooks allow you to send transaction data and events from Stedi to any external API. To configure a destination webhook, you first create an auth configuration that defines how to authenticate with a set of URL endpoints. 

The OAuth 2.0 configuration includes setting the Authorization endpoint and parameters, the HTTP method, a client ID, and a client secret. You can create a new OAuth 2.0 configuration from the Event Destinations page.

Automatically delete artifacts after a set time period

Stedi accounts on the Enterprise plan can now set an automatic data removal time frame in Stedi.

Artifacts refer to the transaction and file execution payloads from files Stedi has processed. They contain the actual input/output transaction data in EDI, JSON, or another format. You may want Stedi to remove artifacts after a certain time frame - for example, to comply with your company's PII/PHI retention policies.

Once you set a retention period, Stedi deletes artifacts after the retention window has passed. This affects both existing and future data in your account.

For example, if you set a retention period of 30 days and process a file today, Stedi will delete the artifact after 30 total days have elapsed. Stedi will also delete any artifact created more than 30 days prior. You can set an automatic data removal time frame from the Settings page.

Automatically process inbound TA1 Interchange Acknowledgments

Your trading partner may send you TA1 Interchange Acknowledgments in response to outbound EDI files.

Stedi now automatically processes inbound TA1s and displays the data in the File executions and Transactions pages for inspection.

You can also set the acknowledgmentRequestedCode outbound EDI files to request interchange acknowledgments from your trading partner. Visit the Generate EDI docs for details.

TA1s indicate receipt of an interchange and identify any errors in the interchange's envelope (ISA and IEA) information.

Generate inbound test files from your browser

You can now generate and send inbound test files to simulate receiving a file from your trading partner. This is useful for testing your downstream integration, since the inbound file will trigger configured destination webhooks.

To generate an inbound test file:

  1. Go to the File executions page or navigate into a partnership and click Test inbound.

  2. Select a partnership and an Inbound transaction setting.

  3. Autogenerate the test file from a sample EDI file in the guide or paste your own test data into the editor.

  4. Click Ingest file.

Stedi immediately processes the generated file and triggers any configured webhooks. You can review the results on the File Executions and Transactions pages.

Improvements to Stedi AS2

Stedi provides fully-managed AS2 connections that take care of the intricacies of AS2 and scale automatically to meet your demand. We recently made the following improvements:

  • We added extensive conditional validation to reduce common configuration errors.

  • You can now view and filter provisioning logs for each AS2 connection. These logs detail each step to create or update the connection, such as provisioning the certificates, making it easier to diagnose errors. To view provisioning logs, go to the partnership associated with the connection, and then click the connection to view its details page.

  • When creating or updating an AS2 connection, Stedi now clearly indicates when there are previously uploaded encryption and signing certificates and provides the option to update them. Previously, adding or updating certificates was a separate workflow.

Introducing Fragments: Split large transaction payloads

Stedi accounts on the Enterprise plan can now use fragments to split large transaction payloads from Stedi into smaller, more manageable chunks for downstream processing.

Large EDI files are often the result of transaction sets containing many repeated loops or segments. For example, a company may receive an 837 Health Care Claim file containing many insurance claims, or a retailer may receive an 846 Inventory Inquiry/Advice file containing millions of SKUs. To avoid overloading downstream systems, you can enable fragments on the repeated EDI segment.

Once enabled, Stedi splits the transaction payload into chunks based on that segment. For example, you might enable fragments on the LIN loop (list of inventory items) in an 846 Inventory Inquiry/Advice. For each processed 846, Stedi will emit fragment.processed.v2 events that each contain a chunk of LIN loop iterations.

You can create destination webhooks to automatically send fragment data to your downstream systems, or you can use the API to request the fragments for each processed transaction.

Guide builder now shows warnings for missing ID element codes

Stedi's guide builder now shows warnings when an ID element does not specify the set of allowed codes. You can see which fields are missing ID codes and specify the allowed values from the provided list or supply your custom codes.

Code warnings are available to help improve the quality of your guides, and you can ignore them without affecting Stedi's ability to use the guide for EDI processing. Warnings only appear for ID fields where the X12 specification includes the allowed code values. For example, they will not appear for State or Province codes.

Why element codes are important

ID element codes are a powerful component of the X12 EDI specification to provide additional information about data fields and reference well-known values. For example, you can use ID codes to specify the currency code of a monetary value, the meaning of a date value, or the reason for a shipment delay.

Many elements offer 1,000 or more possible codes, but most trading partners only expect to use just one or a few of these values. If a guide does not indicate which codes are accepted, trading partners often have to engage in costly follow-up with EDI departments or conduct multiple rounds of testing as they discover more code values in use.

The new warnings in Stedi's guide builder help ensure you and your trading partners work with the most accurate EDI specifications on the market.

Add a mapping to destination webhooks

You can now add a mapping to destination webhooks to automatically transform transactions before delivering them to external APIs. Stedi parses EDI files into Guide JSON, which reflects the structure of an EDI transaction in a modern format. You can use a mapping to transform Guide JSON into the shape required by your internal systems and business applications. Mappings provide a visual interface for building JSON-to-JSON transformations and are available in the Cloud and Enterprise plans.

To add a mapping to a destination webhook:

  1. Use the mappings editor to create a transformation for the transaction.processed.v2 event.

  2. Select the mapping in the Mapping menu when creating a transaction.processed.v2 event binding.

Role-based access control for Enterprise plans

Stedi accounts on the Enterprise pricing plan can now use role-based access control (RBAC) to ensure only authorized users can access and modify account resources.

Admins can assign account members to one of four roles:

  • Admin: These users can access and modify all resources within a Stedi account. This includes adding and removing members, assigning member roles, adding billing information, switching between pricing plans, configuring Partnerships, generating EDI files, and configuring resources like Mappings and Functions.

  • Developer: These users can access and configure all resources, such as Partnerships, Mappings, and Functions.

  • Operator: These users can access and configure Partnerships, Guides, and Mappings. They can interact with developer resources like Functions, but cannot modify them. For example, they can invoke existing Stedi functions, but cannot change them or add new functions.

  • Read-only: These users can view account resources, but cannot modify them. For example, they can review processed transactions in Stedi's interface but cannot call the Generate EDI API or edit partnership details.

To change a member's role, go to Settings > Members in your account. Click the pencil icon for a member, choose a Role from the list, and click Update role.

Automatically generate 999s

You can now enable automatic 999 Implementation Acknowledgments for any Stedi partnership.

When you enable 999 acknowledgments for a partnership, Stedi automatically generates a 999 acknowledgment per functionality group of every valid inbound EDI file and delivers the 999s to your trading partner using the specified connection.

You will only use 999 acknowledgments in response to healthcare transactions. It's likely you should use 999s if you receive these transaction sets:

Each generated acknowledgment includes ISA and GS envelopes, complete with auto-incremented control numbers.

Stedi guides EDI Inspector autogenerates envelopes for EDI test files

The EDI Inspector in Stedi guides can now autogenerate an envelope for any sample EDI file.

If the EDI test file in the editor does not contain an envelope, the EDI Inspector displays a Generate envelope button that you can use to instantly create a generic envelope for the transaction set. You can then edit the envelope with information for you and your trading partner. Stedi guides are a machine-readable format for EDI specifications that Stedi uses to translate inbound EDI files and generate outbound EDI files according to your and your trading partners' requirements. You can use the EDI Inspector in each guide to validate EDI test files according to the guide's specifications. You can start from sample files attached to the guide or add your own test file into the editor.