Skip to main content
The RosettaNet connector sends and receives messages following the RosettaNet Implementation Framework (RNIF) standard.

Key Capabilities

  • RNIF 1.1 and 2.0 support for B2B document exchange
  • Automatic message routing with per-partner configuration and flexible encryption/signing options
  • Certificate-based security with synchronous/asynchronous acknowledgment handling

Overview

A RosettaNet connection is configured in two places. Configure the RosettaNet Profiles page with a local RosettaNet identifier, and private certificates. Then configure individual RosettaNet connectors with connection settings specific to a single trading partner. When an input file is processed by a RosettaNet connector, it is packaged and sent to the specified trading partner. When receives a file over RosettaNet, it attempts to route the file to a specific RosettaNet connector. The application uses the RosettaNet identifiers in the RosettaNet message to determine which RosettaNet connector should receive the file. When a file is routed to a RosettaNet connector, that file is placed in the connector’s Transactions tab, or is passed along to the next connector in the flow.

Profile Configuration

The RosettaNet Profile must be configured before connections can be established with individual RosettaNet connectors. Click Profiles on the navbar, then click the RosettaNet tab.

RosettaNet Profile Tab

Personal Id

Settings for identifying the local profile.
SettingDescription
Business IdentifierYour identifier. Messages sent by include this value in outgoing messages to identify the sender. Incoming messages must be addressed to this identifier. Identifiers are case-sensitive.
Business LocationDescribes the location of the receiver for incoming messages. This value is not an address, but it can be a city name.

Personal Certificate

Settings related to the private decryption and signature certificate.
SettingDescription
Private CertificateThe certificate used to decrypt incoming messages and sign outgoing messages. Never share this certificate with external parties. Click the Create Certificate button to generate a self-signed certificate that is ready to use in a RosettaNet transaction: a corresponding public key is also generated with the same filename and a .cer extension.
Certificate PasswordThe password required to access the Private Certificate.

Application URLs

Settings and displayed values related to accessing from the public web.
SettingDescription
Receiving URLThe URL at which listens for incoming RosettaNet messages. Share this URL with all your trading partners.

Miscellaneous

Connector Configuration

Once you configure the global RosettaNet profile settings, create and configure individual RosettaNet connectors for each trading partner on the Flows page.

Settings Tab

Configuration

Settings for identifying and connecting to a specific RosettaNet trading partner.
SettingDescription
Connector IdThe static, unique identifier for the connector.
Connector TypeDisplays the connector name and a description of what it does.
Connector DescriptionAn optional field to provide a free-form description of the connector and its role in the flow.
Business IdentifierThe identifier specific to the target trading partner. This value is included in the headers for outgoing messages, and is also used to route incoming messages to the appropriate RosettaNet connector.
Business LocationThe location of the outgoing message recipient.
Partner URLThe trading partner’s public endpoint where outgoing messages should be sent.

Connection Info

Settings related to connection parameters for the specified trading partner.
SettingDescription
RNIF VersionThe protocol version to use when generating RosettaNet messages.
Encryption TypeWhether to encrypt the payload, the payload and the headers, or neither.
Data SignatureWhether to sign outgoing messages.
Receive Message SecurityWhether to require that signatures and encryption are present for incoming messages. An error is thrown if a received message does not have a required security parameter.
Connection TimeoutThe length of time (in seconds) the connector waits for a connection response before throwing a timeout error.
Test IndicatorControls the GlobalUsageCode in the preamble header. Check this to set the code to Test. If left unchecked, the code is Production. Only required when RNIF Version is 1.1.

Acknowledgments

Settings related to RosettaNet acknowledgments.
SettingDescription
Automatic AcknowledgmentsWhether acknowledgments should be automatically sent in response to incoming RosettaNet messages.
Automatic ExceptionsWhether exceptions should be automatically sent in response to failed messages.
Require AcknowledgmentWhether acknowledgments should be returned in response to outgoing RosettaNet messages.
SecurityWhether acknowledgments should include a signature block verifying the message integrity and identity of the recipient.
DeliveryWhether acknowledgments should be returned as a direct response to the outgoing RosettaNet message (Synchronous) or returned later as part of a separate connection (Asynchronous). Synchronous receipts are recommended unless the size of the RosettaNet message is very large (50MB is a common threshold), in which case processing the message and delivering a synchronous receipt might strain the connection timeout duration.

Trading Partner Certificates

Settings related to the public key certificates provided by the trading partner.
SettingDescription
Encryption CertificateThe public key certificate used for RosettaNet encryption when sending messages. This certificate must be paired with the trading partner’s private decryption certificate, and the trading partner should provide this public key certificate when sharing RosettaNet configuration details.
Verification CertificateThe public key certificate used to verify RosettaNet signatures when receiving messages. This field is usually unnecessary; most RosettaNet parties use the same private certificate for both signing and decrypting. If this field is not specified, the application uses the Encryption Certificate to verify signatures.
TLS Server CertificateThe public key certificate used to verify the identity of a TLS/SSL server. This is only necessary if the partner’s RosettaNet system requires HTTPS instead of HTTP. If the trading partner does not provide a TLS server certificate, you can leave this setting blank to allow the underlying OS/JVM to perform certificate validation, or it can be set to Any Certificate to unconditionally trust the target server’s identity.

Advanced Tab

Alternate Local Profile

Settings that override the configuration on the Profiles page for this specific RosettaNet connector. Setting an alternate local profile lets you use different local certificates and identifiers for certain trading partners.
SettingDescription
Local Business LocationYour location. Overrides Business Location on the Profiles page.
Local Business IdentifierYour identifier. Overrides Business Identifier on the Profiles page.
Private CertificateThe certificate used to decrypt incoming messages and sign outgoing messages. Overrides Private Certificate on the Profiles page.
Certificate PasswordThe password required to access the local private certificate.

TLS Client Authentication

Settings related to client authentication when two-way TLS authentication is required.
SettingDescription
Use ProfileWhether to use the Private Certificate configured on the Profiles page as the TLS certificate for client authentication.
Private CertificateThe private certificate presented during TLS client authentication. Only applicable if you are not using the private certificate on the Profiles page.
Certificate PasswordThe password required to access the TLS client certificate.

HTTP Authentication

Settings related to HTTP client authentication.
SettingDescription
HTTP AuthenticationWhether to use client HTTP authentication.
HTTP Authentication TypeWhether to provide HTTP authentication credentials in an encrypted format (Digest) or in plain text (Basic). Only use Basic authentication if the connection is an HTTPS connection (instead of HTTP).
UserThe user credential for HTTP client authentication.
PasswordThe password credential for HTTP client authentication.

Advanced Settings

Settings not included in the previous categories.
SettingDescription
Processing DelayThe amount of time (in seconds) by which the processing of files placed in the Transactions tab is delayed. This is a legacy setting. Best practice is to use a File connector to manage local file systems instead of this setting.
RNIF Debug ModeWhether communication errors related to the validation of PIPs or the authentication of the sender should be returned by RosettaNet receivers. This setting must be enabled on both sides of the transfer for the exceptions to be returned.
Signature AlgorithmThe algorithm to use when signing outgoing messages.
TLS Enabled ProtocolsThe list of TLS/SSL protocols supported when establishing outgoing connections. Best practice is to only use TLS protocols. SSL v2 and SSL v3 are considered vulnerable and should only be used if your partner does not support higher versions. Keep in mind that TLS v1.3 is not universally adopted, and might be refused if the destination server does not support it.
Secure TransportCheck this to require security when forwarding messages.
Local File SchemeA scheme for assigning filenames to messages that are output by the connector. You can use macros in your filenames dynamically to include information such as identifiers and timestamps. For more information, see Macros.

Proxy Settings

Message

Logging

Miscellaneous

Automation Tab

Automation Settings

Settings related to the automatic processing of files by the connector.
SettingDescription
Send AutomationWhether files arriving at the connector are automatically sent as RosettaNet messages.
Retry IntervalThe number of minutes before a failed send is retried. A retry is triggered when the server does not respond to a send attempt, or responds negatively to communicate that the file was not received.
Max AttemptsThe maximum number of times the connector processes the input file. Success is based on a successful server acknowledgement and validation of the receipt (when requested synchronously). If you set this to 0, the connector retries the file indefinitely.
Resend IntervalThe number of minutes before unacknowledged messages are resent. A resend is triggered when the server receives the file, but an asynchronous acknowledgment is not provided within the expected timeframe.
Max Attempts (async)The maximum number of times the connector processes the input file when asynchronous acknowledgments are requested. Success is based on the return of an asynchronous receipt within the Resend Interval after a successful server acknowledgement. If a successful server acknowledgement is not returned, Max Attempts is applied instead. If this is set to 0, the connector resends the file indefinitely.

Performance

Alerts Tab

SLAs Tab

Establishing a Connection

Trading partners must provide some of the connection details that are required when you configure a new RosettaNet connector. At a minimum, these details should include:
  • Business Identifier
  • Partner URL
  • Partner Certificates

Business Identifier

Your trading partner is identified by their business identifier in a RosettaNet transaction. When sending outgoing requests, the business identifier is used in the header of the request to indicate the recipient. To establish a RosettaNet self-test, the identifier should be set to the same value as the Business Identifier on the Profiles page.
This value is case-sensitive.

Partner URL

The Partner URL is the endpoint where the trading partner receives RosettaNet transmissions. Outgoing RosettaNet messages are sent to this target endpoint, which must be unique for each trading partner. You can test the Partner URL with a web browser to check for networking or connectivity issues. To establish a RosettaNet self-test, the target URL should be identical or nearly identical to the Receiving URL on the Profiles page. You can replace the domain name from the Profiles page with the loopback address localhost to keep the RosettaNet transaction in the local network. An example local self-test URL is http://localhost:8001/pub/Receive.rsb. If you do not replace the domain name with localhost, the RosettaNet message is routed outside of the local network. You can use this to check network configuration settings and to make sure that the message can reach through any firewalls.

Partner Certificates

Each RosettaNet connector must be configured with certificate(s) for the target trading partner. The trading partner provides the certificates necessary to encrypt and verify RosettaNet messages exchanged with them. accepts X.509 public key certificates (files with .cer, .der, or .pem extensions). Typically the trading partner provides a single certificate, which should be configured in the Encryption Certificate field. If the trading partner provides multiple certificates, they should clarify the purpose of each certificate. If the partner provides a full certificate chain (as acquired from a commercial certificate authority), only the leaf certificate (the last certificate in the chain) needs to be configured.

Send and Receive Files

Once the RosettaNet profile and partner-specific RosettaNet connectors have been configured, files can be securely sent and received.

Send Files

In a RosettaNet connector, the Transactions tab displays the files to be sent to the target trading partner. If Send Automation is enabled on the Automation tab, files that reach the Transactions tab of the connector are automatically packaged and sent. Access the log files for all transmissions by expanding the row associated with the transmitted file. On the Transactions tab, choose More > Create Test Files to generate a simple series of test files to send to the trading partner.

Resend and Retry

A RosettaNet Resend is triggered when the trading partner is expected to return an asynchronous acknowledgment, but fails to do so within the Resend Interval duration (60 minutes by default). The application then attempts to resend the transmission. The application continues resending the message until an acknowledgment is received or the Max Attempts (async) is exhausted. A Retry is triggered when the HTTP response from the trading partner indicates that the server has not received the transmission. This can indicate a networking or connectivity issue, which is often transient. The application retries the transmission every Retry Interval minutes until the transmission is received or the Max Attempts is exhausted.

Receive Files

In a RosettaNet connector, the Transactions tab displays the files that have been received by the application and routed to the connector (based on the RosettaNet identifiers present in the incoming RosettaNet message). Expand each file row to display a list of available logs for the transmission. These files are available on the connector Transactions tab. If the connector is connected to other connectors in the flow, files are automatically moved from the Transactions tab of the RosettaNet connector to the Transactions tab of the next connector in the flow. The RosettaNet protocol does not allow for actively pulling files from trading partners: the RosettaNet connector can only passively wait for a trading partner to send a file.

Configuring PIPs

Partner Interface Processes (PIPs) are the logical XML documents used by RosettaNet to transport information about various business processes. The following is a list of common PIPs:
PIPDescription
3A1Request Quote
3A2Request Price and Availability
3A3Request Shopping Cart Transfer
3A4Request Purchase Order
3A5Query Order Status
3A6Distribute Order Status
3A7Notify of Purchase Order Update
3A8Request Purchase Order Change
3A9Request Purchase Order Cancellation
3A10Notify of Quote Acknowledgement
3A13Notify of Purchase Order Information
3A14Distribute Planned Order
3B1Distribute Transportation Projection
3B2Notify of Advance Shipment
3B3Distribute Shipment Status
3B4Query Shipment Status
3B5Request Shipment Change
3B6Notify of Shipments Tendered
3B11Notify of Shipping Order
3B12Request Shipping Order
3B13Notify of Shipping Order Confirmation
3B14Request Shipping Order Cancellation
3B18Notify of Shipment Documentation
3C1Return Product
3C2Request Financing Approval
3C3Notify of Invoice
3C4Notify of Invoice Reject
3C5Notify of Billing Statement
3C6Notify of Remittance Advice
3C7Notify of Self-Billing Invoice

Macros

Examples