Electronic messaging

This topic provides overview and setup information for electronic messaging.

Recently, the governments and legislative authorities of various countries and regions around the world have implemented reporting requirements for companies that are registered in those countries or regions. The purpose of the requirements is to enable data to be obtained from those companies in electronic format, directly from the systems where it was accounted, stored, and processed.

The Electronic messages functionality in Finance supports various processes for electronic interoperation between Finance and the systems that governments and legislative authorities offer for reporting, submitting, and receiving official information.

The Electronic messages functionality is integrated with the Electronic Reporting (ER) module. Therefore, you can set up ER formats for electronic messages. For more information, see Electronic reporting (ER).

Electronic messaging is based on the following entities:

  • Electronic message – A report or declaration that should be reported and/or transmitted internally. An example is a report that is sent to a tax office.
  • Electronic message items – Records that should be included in the message that is reported.
  • Electronic message processing – A chain of actions that should be run to collect the required data, generate reports, store data in Microsoft Azure Blob storage, transmit reports outside the system, receive responses from outside the system, and, based on the information that is received, update the database. The actions in the chain can be either linked or unlinked

The following illustration shows the flow of data for electronic messaging.

Electronic messaging data flow

The Electronic messages functionality supports the following scenarios:

  • Manually create messages, and generate reports that are based on associated exporting ER formats of various types: Microsoft Excel, XML, JavaScript Object Notation (JSON), PDF, text, and Microsoft Word.
  • Automatically create and process messages that are based on information that was requested and received from an authority via an associated importing ER format.
  • Collect and process information from a data source as message items. The data source is a Finance table.
  • Store additional information, and evaluate various values by calling specifically defined executable classes in relation to messages or message items.
  • Aggregate information that is collected in message items, split that information by message, and generate reports that are in associated exporting ER formats.
  • Transmit the reports that are generated to a web service by using security information that is stored in Azure Key Vault.
  • Receive a response from a web service, interpret the response, and update data in Finance as appropriate.
  • Store and review all the reports that are generated.
  • Store and review all the log information that is related to actions that are run for a message or message item.
  • Control the processing through various message statuses and message item statuses.

Set up electronic messaging

Electronic messaging can help you maintain different electronic reporting processes for different document types. In some complex scenarios, electronic messaging is set up so that it has a combination of many message statuses, message items statuses, actions, additional fields, and executable classes. For these scenarios, packages of data entities are available for import. If you use these data entity packages, you should import them to a legal entity by using the Data management tool. For more information about how to use the Data management tool, see Data management.

If you don’t import a data entity package, you can manually set up the Electronic messages functionality. In this case, you must set up the following elements:

The following sections provide more information about each of these elements.

Number sequences

Set up number sequences for both messages and message items. The number sequences are used to automatically number the messages and the message items. The numbers that are assigned will be used as unique identifiers for the messages and message items in the system. You can set up number sequences for electronic messaging on the General ledger parameters page (General ledger > Ledger setup > General ledger parameters).

Message item types and statuses

Message item types identify the types of records that will be used in electronic messages. You can set up message item types on the Message item types page (Tax > Setup > Electronic messages > Message item types).

Message item statuses identify the statuses that will apply to message items in the processing that you’re setting up. You can set up message item types on the Message item statuses page (Tax > Setup > Electronic messages > Message item statuses).

The Allow delete parameter of a message item status defines whether users can delete message items that have this status on the Electronic messages page or the Electronic message items page.

Message statuses

Set up the message statuses that should be available in message processing. You can set up message statuses on the Message statuses page (Tax > Setup > Electronic messages > Message statuses).

The following table describes the fields on the Message statuses page.

Field nameDescription
Message statusEnter a unique name for the message status. Message statuses are used to characterize the state of an electronic message at every moment. The name that you enter is shown on the Electronic messages page and in a log that is related to electronic messages.
DescriptionEnter a description of the message status.
Response typeSelect the type of response for the message status. Some actions in a processing can produce more than one response type. For example, actions of the Web service type can produce responses of either the Successfully executed type or the Technical error type, depending on the result of its execution. In this case, you must define message statuses for both response types. For more information about action types and the types of responses that are related to them, see Message processing action types.
Message item statusSometimes, the status of an electronic message must influence the status of related message items. Select a message item status in this field to associate it with the message status.
Allow deleteSelect this check box if users should be able to delete electronic messages that have this status on the Electronic messages page.

Additional fields

The Electronic messages functionality lets you fill in records from a transactional table. In this way, you can prepare the records for reporting and then report them. However, transactional tables sometimes don’t have enough information to fill in records in a manner that meets the reporting requirements. To fill in all the information that must be reported for a record, you can set up additional fields. Additional fields can be associated with both messages and message items. You can set up additional fields on the Additional fields page (Tax > Setup > Electronic messages > Additional fields).

The following table describes the general fields on the Additional fields page.

FieldDescription
Field nameEnter the name of an additional attribute of message items that are related to the process. This name is shown in the user interface (UI) while you work with the process. It can also be used in ER configurations that are related to the process.
DescriptionEnter a description of the additional field.
User editSet this option to Yes if users should be able to change the value of the additional field from the UI.
CounterSet this option to Yes if the additional field should contain a number sequence in an electronic message. Value of the additional field will be filled in automatically when an action of the Electronic reporting export is run.
HiddenSet this option to Yes if the additional field should be hidden in the UI.

Each additional field can have different values for the processing. You define these values on Values FastTab. The following table describes the fields.

FieldDescription
Field valueEnter the field value to use for a message or message item during reporting.
DescriptionEnter a description of the field value.
Account typeSome field values might be limited to specific account types. Select one of the following values: All, Customer, or Vendor.
Account codeIf you selected Customer or Vendor in the Account type field, you can further limit the use of the field value to a specific group or table.
Account/Group numberIf you selected Customer or Vendor in the Account type field, and if you entered a group or table in the Account code field, you can enter a specific group or counteragent in this field.
EffectiveSpecify the date when the value should start to be considered.
ExpirationSpecify the date when the value should stop being considered.

By default, combinations of criteria that are defined by the Account/Group number, Account code, Effective, and Expiration fields don’t influence the selection of values for additional fields. However, these combinations can be used in an executable class to implement specific logic that calculates values for additional fields.

Executable class settings

An executable class is an X++ method or class that the electronic message processing can call in relation to an action if some evaluation is required for the process.

You can manually set up an executable class on the Executable class settings page (Tax > Setup > Electronic messages > Executable class settings). Create a line, and set the following fields.

FieldDescription
Executable classEnter the name that will be used during the setup of a message processing action that this class is called in relation to.
DescriptionEnter a description of the executable class.
Executable class nameSelect an X++ executable class.
Execution levelThis field is set automatically, because the value should be predefined for the selected executable class. This field limits the level that related evaluation is run on.
Class descriptionThis field is set automatically, because the value should be predefined for the selected executable class.

Some executable classes might have mandatory parameters that must be defined before the executable class is run for the first time. To define these parameters, select Parameters on the Action Pane, set the fields in the dialog box that appears, and then select OK. It’s important that you select OK. Otherwise, the parameters won’t be saved to the database, and the executable class won’t be called correctly.

Populate records actions

You use populate records actions to set up actions that add records to the Message items table so that they can be added to an electronic message. For example, if your electronic message must report customer invoices, you must set up a populate records action that is linked to the Data source field in the Customer invoice journal table. You can set up populate records actions on the Populate records action page (Tax > Setup > Electronic messages > Populate records actions). Create a new record for every action that should add records to the table, and set the following fields.

FieldDescription
NameEnter a name for the action that fills in records in your process.
DescriptionEnter a description of the populate records action.

On the Datasources setup FastTab, add a line for every data source that is used for the process, and set the following fields.

FieldDescription
NameEnter a name for the data source.
Message item typeSelect the type of message item that should be used when records are created for the data source.
Account typeSelect the type of account that should be associated with records from the data source.
Master table nameSelect the table that should be a data source.
Document number fieldSelect the field that the document number should be taken from in the selected table.
Document date fieldSelect the field that the document date should be taken from in the selected table.
Document account fieldSelect the field that the document account should be taken from in the selected table.
User queryIf this check box is selected, you can set up a query by selecting Edit query above the grid. Otherwise, all the records will be filled in from the selected data source.

Web applications

You use web application settings to set up a web application so that it supports Open Authorization (OAuth) 2.0. OAuth is the open standard that lets users grant “secure delegated access” to the application on their behalf, without sharing their access credentials. You can also go through the authorization process by getting an authorization code and access token. You can set up web application settings on the Web applications page (Tax > Setup > Electronic messages > Web applications).

The following table describes the fields on the Web applications page.

FieldDescription
Application nameEnter a name for the web application.
DescriptionEnter a description of the web application.
Base URLEnter the base internet address of the web application.
Authorization URL pathSpecify the path that is used to compose the URL for authorization.
Token URL pathSpecify the path that is used to compose the URL for the token.
Redirect URLEnter the redirect URL.
Client IDEnter the client ID of the web application.
Client secretEnter the client secret of the web application.
Server tokenEnter the server token of the web application.
Authorization format mappingSelect the ER format that is used to generate the request for authorization.
Import token model mappingSelect the ER importing model mapping that is used to store the access token.
Granted scopeThe scope that is granted for requests to the application. This field is automatically updated.
Access token will expire inThe remaining time before the access token expires.
AcceptSpecify the Accept property of the web request. For example, enter application/vnd.hmrc.1.0+json.
Content typeSpecify the content type. For example, enter application/json.

In addition, the following buttons are available on the Action Pane of the Web applications page to support the authorization process:

  • Get authorization code – Initialize authorization of the web application.
  • Obtain access token – Initialize the process of getting an access token.
  • Refresh access token – Refresh an access token.

When an access token to a web application is stored in the system’s database in encrypted format, it can be used for requests to a web service. For security purposes, access to the access token must be limited to security roles that must be allowed to address those requests. If users outside the security group try to address a request, they receive an error that states that they aren’t allowed to interoperate via the selected web application. To set up the security roles that must have access to the access token, use the Security roles FastTab on the Web applications page. If security roles aren’t defined for a web application, only a system admin can interoperate via this web application.

Web service settings

You use web service settings to set up direct data transmission to a web service. You can set up web service settings on the Web service settings page (Tax > Setup > Electronic messages > Web service settings).

The following table describes the fields on the Web service settings page.

FieldDescription
Web serviceEnter a name for the web service.
DescriptionEnter a description of the web service.
Internet addressEnter the internet address of the web service. If a web application is specified for the web service, and if the internet address of the web service should be the same as the internet address that is defined for that web application, select Copy base URL to copy the base URL of the web application to this field.
CertificateSelect a Key Vault certificate that has previously been set up.
Web applicationSelect a Key Vault certificate that has previously been set up.
The response type – XMLSet this option to Yes if the response type is XML.
Request methodSpecify the method of the request. HTTP defines a set of request methods that indicate the action that should be performed for a given resource. The request method can be GET, POST, or another HTTP method.
Request headersSpecify request headers. A request header is an HTTP header that can be used in an HTTP request, and that isn’t related to the content of the message.
AcceptSpecify the Accept property of the web request.
Accept encodingSpecify the Accept-Encoding value. The Accept-Encoding request HTTP header advertises the content encoding that the client can understand. This content encoding is usually a compression algorithm.
Content typeSpecify the content type. The Content-Type entity HTTP header indicates the media type of the resource.
Successful response codeSpecify the HTTP status code that indicates that the request was successful.
Request headers format mappingSelect the ER format that is used to generate web request headers.

Message processing actions

You use message processing actions to create actions for your processes and set up their parameters. You can set up message processing actions on the Message processing actions page (Tax > Setup > Electronic messages > Message processing actions).

The following tables describe the fields on the Message processing actions page.

General FastTab

FieldDescription
Action typeSelect the type of action. For information about the available options, see the Message processing action types section.
Format mappingSelect the ER format that should be called for the action. This field is available only for actions of the Electronic reporting export, Electronic reporting import, and Electronic reporting export message types.
Format mapping for URL pathSelect the ER format that should be called for the action. This field is available only for actions of the Web service type. It’s used to compose the path of the URL address that will be added to the base internet address that is specified for the selected web server.
Message item typeSelect the type of records that the action should be evaluated for. This field is available for actions of the Message item execution level, Electronic reporting export, Electronic reporting import, and Web service types, and also some other types. If you leave this field blank, all the message item types that are defined for the message processing are evaluated.
Executable classSelect executable class settings that were previously created. This field is available only for actions of the Message item execution level and Message item execution level types.
Populate records actionSelect a populate records action that was previously set up. This field is available only for actions of the Populate records type.
Web serviceSelect a web service that was previously set up. This field is available only for actions of the Web service type.
File nameSpecify the name of the file that will be the result of the action. This file can be the response from the web server or the report that is generated. This field is available only for actions of the Web service and Electronic reporting export message types.
Show dialogSet this option to Yes if a dialog box must be shown to users before report generation. This field is available only for actions of the Electronic reporting export message type.
Message processing action types

The following options are available in the Action type field:

  • Create message – Use this action type to let users manually create messages on the Electronic message page. An initial status can’t be set up for an action of this type.
  • Populate records – An action of the Populate records type must previously be set up. Associate this action type with a populate records action to enable that action to be included in processing. It’s assumed that this action type is used either for the first action in message processing (when no electronic message was created in advance) or for an action that adds message items to a message that was previously created by an action of Create message type. Therefore, for actions of this type, a result status can be set up only for message items. An initial status can be set up only for messages.
  • Message execution level – Use this action type to set up an executable class that should be evaluated at the message level.
  • Message item execution level – Use this action type to set up an executable class that should be evaluated at the message item level.
  • Electronic reporting export – Use this action type for actions that should generate a report that is based on an exporting ER configuration at the message item level.
  • Electronic reporting export message – Use this action type for actions that should generate a report that is based on an exporting ER configuration at the message level (for example, when a message doesn’t have any message items).
  • Electronic reporting import – Use this action type for actions that should generate a report that is based on an importing ER configuration.
  • Message level user processing – Use this action type for actions that assume some manual action by the user at the message level. For example, the user might update the status of messages.
  • User processing – Use this action type for actions that assume some manual action by the user at the message item level. For example, the user might update the status of messages items.
  • Web service – Use this action type for actions that should transmit a generated report to a web service. This action type isn’t used for Italian Purchase and Sales Invoices Communication reporting. For actions of Web service type, the Message processing actions page includes a Miscellaneous details FastTab, where you can specify a confirmation text. This confirmation text will be shown to users before requests to the selected web service are addressed.
  • Request verification – Use this action type to request verification from a server.

Initial statuses FastTab

Note

The Initial statuses FastTab isn’t available for actions that have an initial action type of Create message.

FieldDescription
Message item statusSelect the message item status that the selected message processing action should be evaluated for.
DescriptionA description of the selected message item status.

Result statuses FastTab

FieldDescription
Message statusSelect the message statuses that the selected message processing action should be evaluated for. This field is available only for message processing actions that are evaluated at the message level. For example, it’s available for actions of the Electronic reporting export and Electronic reporting import types, but it isn’t available for actions of the User processing and Message item execution level types.
DescriptionA description of the selected message status.
Response typeThe response type of the selected message status.
Message item statusSelect the resulting statuses that should be available after the selected message processing action is evaluated. This field is available only for message processing actions that are evaluated at the message item level. For example, it’s available for actions of the User processing and Message item execution level types. For message processing actions that are evaluated at the message level, this field shows the message item status that was set up for the selected message status.

The following table shows the result statuses that must be set up for different action types and response types.

Electronic message action type/Response typeSuccessfully executedBusiness errorTechnical errorUser definedCancel
Create messageX
Electronic reporting exportX
Electronic reporting import
Web serviceXX
User processing
Message execution level
Populate records
Message item execution level
Request verificationXXX
Electronic reporting export messageX
Message level user processing

Electronic message processing

Electronic message processing is a basic concept of the Electronic messages functionality. It aggregates actions that should be evaluated for the electronic message. The actions can be linked via an initial status and a result status. Alternatively, actions of the User processing type can be started independently. On the Electronic message processing page (Tax > Setup > Electronic messages > Electronic message processing), you can also select additional fields that should be supported for the processing on either the message level or the message items level.

The Action FastTab lets you add predefined actions to the processing. You can specify whether an action must be run separately, or whether it can be started by the processing. To specify that an action in the processing can be initialized only by a user, set the Run separately field to Yes for that action. If an action should be started by the processing for messages or message items that are in the status that is defined as the initial status for the action, set the Run separately field to No. Actions of the User action type must always be run separately.

Sometimes, several actions must be aggregated into a sequence, even though the first action is set up so that it runs separately. For example, a user must initialize report generation, but immediately after the report is generated, it must be sent to a web service, and the response from the web service must be reflected in the system. In this situation, you can create an inseparable sequence for the actions that must always run together. On the Action FastTab, select Inseparable sequences above the grid, and create a sequence. Then, for all the actions that must run together, select the sequence in the Inseparable sequence field. In this case, the Run separately field can be set to Yes for the first action in the sequence but No for all the other action.

The Message item additional fields FastTab lets you add predefined additional fields that are related to message items. You must add additional fields for each type of message item that the fields are related to.

The Message additional fields FastTab lets you add predefined additional fields that are related to messages.

The Security roles FastTab lets you set up the security roles that are predefined in the system for specific processing. Users who have a specific role will see only processing that is defined for that role.

The Batch FastTab lets you set up processing to work in a batch regime.

Work with the Electronic messages functionality

If you’re working at the message level, the Electronic messages page (Tax > Inquiries and reports > Electronic messages > Electronic messages) is more useful. If you’re operating at the data collection (message item) level, the Electronic message items page (Tax > Inquires and reports > Electronic messages > Electronic message items) is more useful.

Electronic messages

The Electronic messages page presents the processing that is available to you, based on your role. Security roles are associated with processing in the setup of that processing. For each processing that is available to you, the page shows electronic messages and information that is related to them.

The Messages FastTab shows electronic messages for the selected processing. Depending on the status of the selected message and predefined processing, you can run some actions by using the buttons above the grid:

  • New – This button is associated with actions of the Create message type.
  • Delete – This button is available if the Allow delete check box is selected for the current status of the selected message.
  • Collect data – This button is associated with actions of the Populate records type.
  • Generate report – This button is associated with actions of the Electronic reporting export message type.
  • Send report – This button is associated with actions of the Web service type.
  • Import response – This button is associated with actions of the Electronic reporting import type.
  • Update status – This button is associated with actions of the Message level user processing type.
  • Message items – Open the Electronic message items page.

The Action log FastTab shows information about all the actions that have been run for the selected message. If an action caused an error, information about the error is attached to the related line in the grid. To review the information about the error, select the line in the grid, and then select the Attachment button (the paper clip symbol) in the upper-right corner on the page.

The Message additional fields FastTab shows all the additional fields that are defined for messages in the processing setup. It also shows the values of those additional fields.

The Message items FastTab shows all the message items that are related to the selected message. Depending on the status of the selected message item, you can run some actions by using the buttons above the grid:

  • Delete – This button is available if the Allow delete check box is selected for the current status of the selected message item.
  • Update status – This button is associated with actions of the User processing type.
  • Original document – Open a page that shows the original document for the selected message item.

All reports that have already been generated and received for a message are attached to that message. To review the attachments that are related to a message, select the message, and then select the Attachment button (the paper clip symbol) in the upper-right corner of the page.

Attachment button

The Attachments page shows all the attachments that are related to the selected message. To view a file, select it in the list on the left, and then select Open on the Action Pane.

Open button

You can also review attachments that are related to a specific action that was previously run for a message. On the Electronic messages page, select the message on the Messages FastTab, select the action on Action log FastTab, and then select the Attachment button in the upper-right corner of the page.

You can also run either the whole processing or just a specific action by selecting Run processing on the Action Pane.

Electronic message items

The Electronic message items page presents all message items and a log of the actions that have been run for each message item. It also shows the additional fields that are defined for the message items, and the values of those additional fields.

The following table describes the fields on the Message items tab.

FieldDescription
ProcessingThe name of the processing that was used to create the message item.
Message itemThe ID of the message item. This ID is assigned automatically, based on the Message item number sequence that is defined on the General ledger parameters page.
Message item dateThe date when the message item was created.
Message item typeThe type of message item. Several types of messages items can be set up for the same processing (for example, Incoming invoices and Outgoing invoices). This field can be filled in automatically only when an invoice is added to the Message items table.
Message item statusThe actual status of the message item. The available statuses vary, depending on the type of message item. Here are some examples: Populated – A record was added to the Message items table.Evaluated – Additional attributes were calculated for the message item.Reported – The message item was successfully added to a report.Excluded – This status can be useful if you must exclude some message items from a report before it’s exported.
Transmission dateFor processing that automatically transmits a generated report outside the system, the date when the message item was transmitted.
Document numberThis field is filled in automatically, based on the setup of the populate records action. This field can be filled in automatically only when an invoice is added to the Message items table.
Account numberThe account number of a customer or vendor (or another field value, depending on the field that is defined on the populate records action). This field can be filled in automatically only when an invoice is added to the Message items table.
MessageThe number of the message. This number is assigned automatically, based on the Message number sequence that is defined on the General ledger parameters page.
Message statusThe actual status of the electronic message.
Next actionThe next actions that can be started for the current status of the message item.

The Additional fields tab shows the additional fields for the selected message item, and their values.

Run processing

Select Run processing on the Action Pane to run the processing for message items. To run a specific action, in the Run processing dialog box, set the Choose action option to Yes, and then select an action. To run the whole processing, leave the Choose action option set to No.

Generate report

Select Generate report on the Action Pane to generate a report. This button is associated with actions of the Electronic reporting export type.

Update status

Select Update status on the Action Pane to update the status of one or more message items. In the Update status dialog box, use the Records to include FastTab to select the message items to update. Make sure that you correctly define the selection criteria, because message item statuses will be updated according to these criteria, the initial status of the selected action, and the New status value that you specify. After a status update is completed, it will be difficult to determine which items were updated. Therefore, it will be difficult to roll back the status update.

Electronic messages

Select Electronic messages on the Action Pane to review an electronic message that is related to the selected message item.

You can also review all the files that are related to a specific message item. Select the Message field for the message item, or select Electronic messages on the Action Pane. Then, on the Electronic message page, select the message to review files for, and then select the Attachment button (the paper clip symbol) in the upper-right corner of the page.

Attachment button

The Attachments page shows all the attachments that are related to the message. To view a file, select it in the list on the left, and then select Open on the Action Pane.

Open button

Original document

Select Original document on the Action Pane to open the original document for the selected message item.

Example: Set up and run processing to call a simple ER exporting format to generate an Excel report

After you’ve created your ER format, mapped it to data sources, and completed it, you can run it by using the Electronic reporting workspace. A report is generated, and you can save it locally.

To control the following aspects of the reporting process, you must set up electronic messaging processing:

  • Log information about who generated the report.
  • Log information about when the report was generated.
  • Save the reports that were generated for previous periods.

This section provides an example that shows how you can set up electronic messaging to generate a report that is based on an exporting ER format for Excel. If you want to follow this example, the ER Excel exporting format must already be created, mapped to data sources, and completed. Additionally, a number sequence must already be set up for electronic messages.

When you build processing, it’s helpful if you first define the processing actions and statuses that will be set up. The following illustration shows what the processing looks like for this example.

Processing scheme

Create message statuses

  1. Go to Tax > Setup > Electronic messages > Message statuses.
  2. Create the following message statuses:
    • New
    • Prepared
    • Generated
    Message statuses
  3. On the line for the New status, select the Allow delete check box to let users delete messages that have this status.

Create additional fields

  1. Go to Tax > Setup > Electronic messages > Additional fields.
  2. Add an additional field and its values. Here is an example.Additional fields
  3. Set the User edit option to Yes to let users edit the field.

Create message processing actions

For this example, you will create the following actions:

  • Create message
  • Update to Prepared
  • Generate report
  • Update to initial status (optional)
  1. Go to Tax > Setup > Electronic messages > Message processing actions.
  2. Create an action that is named Create message. On the General FastTab, in the Action type field, select Create message.
  3. Create an action that is named Update to Prepared, and set the following fields:
    • On the General FastTab, in the Action type field, select Message level user processing.
    • On the Initial statuses FastTab, in the Message status field, select New.
    • On the Result statuses FastTab, in the Message status field, select Prepared. In the Response type field, enter Successfully executed.
  4. Create an action that is named Generate report, and set the following fields:
    • On the General FastTab, in the Action type field, select Electronic reporting export. In the Format mapping field, select the exporting ER format. The options are Excel, XML, JSON, Text, and Other.
    • On the Initial statuses FastTab, in the Message status field, select Prepared.
    • On the Result statuses FastTab, in the Message status field, select Generated. In the Response type field, enter Successfully executed.
    Generate report action
  5. Optional: To let users regenerate a report several times, you can create an Update to initial status action and set the following fields:
    • On the General FastTab, in the Action type field, select Message level user processing.
    • On the Initial statuses FastTab, in the Message status field, select Generated.
    • On the Result statuses FastTab, add a separate line for each of the two message statuses (Prepared and New). For both lines, set the Response type field to Successfully executed.

Electronic message processing

In this example, all the actions should be set up so that they run separately. The assumption is that the user will initialize every action.

  1. Go to Tax > Setup > Electronic messages > Electronic message processing.
  2. Add a record for your processing, and add all previously defined actions and an additional field.
  3. Optional: On the Security roles FastTab, define security roles for your processing to limit access to specific reporting.
  4. Go to Tax > Inquires and reports > Electronic messages > Electronic messages.
  5. Select New to create a message. At this point, you can add dates and a description. You can also update the value of the additional field as you require.Create an electronic message

The grid on the Action log FastTab is automatically filled in with a log of all actions that are performed on the message.

You can now either delete or update the message status. To update the message status, select Update status. In the New status field, select Prepared, and then select OK.

Update the message status

The message status is updated to Prepared, and you can now generate the report by selecting Generate report. The report is generated, and the message status and action log are updated. To view the generated report, select the Attachment button (the paper clip symbol) in the upper-right corner of the page.

The original article can be found here

Inventory management – Inventory journals

This topic describes how you can use inventory journals to post various types of physical inventory transactions.

The inventory journals in Supply Chain Management are used to post physical inventory transactions of various types, such as the posting of issues and receipts, inventory movements, the creation of bills of materials (BOMs), and the reconciliation of physical inventory. All these inventory journals are used in a similar way, but they are divided into different types.

Types of inventory journals

The following types of inventory journals are available:

  • Movement
  • Inventory adjustment
  • Transfer
  • BOM
  • Item arrival
  • Production input
  • Counting
  • Tag counting

Movement

When you use an inventory movement journal, you can add cost to an item when you add inventory, but you must manually allocate the additional cost to a particular general ledger account by specifying a general ledger offset account when you create the journal. This inventory journal type is useful if you want to overwrite the default posting accounts.

Inventory adjustment

When you use an inventory adjustment journal, you can add cost to an item when you add inventory. The additional cost is automatically posted to a specific general ledger account, based on the setup of the item group posting profile. Use this inventory journal type to update gains and losses to inventory quantities when the item should keep its default general ledger offset account. When you post an inventory adjustment journal, an inventory receipt or issue is posted, the inventory values are changed, and ledger transactions are created.

Transfer

You can use transfer journals to transfer items between stocking locations, batches, or product variants without associating any cost implications. For example, you can transfer items from one warehouse to another warehouse within the same company. When you use a transfer journal, you must specify both the “from” and “to” inventory dimensions (for example, for Site and Warehouse). The on-hand inventory for the defined inventory dimensions is changed accordingly. Inventory transfers reflect the immediate movement of material. In-transit inventory isn’t tracked. If in-transit inventory must be tracked, you should use a transfer order instead. When you post a transfer journal, two inventory transactions are created for each journal line:

  • An inventory issue at the “from” location.
  • An inventory receipt at the “to” location.

BOM

When you report a BOM as finished, you can create a BOM journal. By using a BOM journal, you can post the BOM directly. This posting generates an inventory receipt of the product, together with an associated BOM and an inventory issue of the products that are included in the BOM. This inventory journal type is useful in simple or high-volume production scenarios where routes aren’t required.

Item arrival

You can use the item arrival journal to register the receipt of items (for example, from purchase orders). An item arrival journal can be created as part of arrival management from the Arrival overview page, or you can manually create a journal entry from the Item arrival page. If you enable the item arrival journal name to check for picking locations, Supply Chain Management looks for a location for received items and, if there is room, generates location destinations for the incoming items.

Production input

Production input journals work like the item arrival journals but are used for production orders.

Counting

Counting journals let you correct the current on-hand inventory that is registered for items or groups of items, and then post the actual physical count, so that you can make the adjustments that are required to reconcile the differences. You can associate counting policies with counting groups to help group items that have various characteristics, so that those items can be included in a counting journal. For example, you can set up counting groups to count items that have a specific frequency, or to count items when stock falls to a particular level. For information about how to define counting groups, see Define inventory counting processes.

Tag counting

Tag counting journals are used to assign a numbered tag to a count lot. The tag should contain a tag number, item number, and item quantity. To ensure that a tag is used only one time, and that all tags are used, every item number should have a unique set of tags that has its own number sequence. Three status values can be set for each tag:

  • Used – The item number is counted for this tag.
  • Voided – The item number is voided for this tag.
  • Missing – The item number is missing for this tag.

When you post a tag counting journal, a new counting journal is created, based on the tag counting journal lines. For more information about tag counting, see Inventory tag counting.

Working with journals

A journal can be accessed by only one user at a time. If several users must access journals at the same time to create journal lines, those users must select journals that aren’t currently being used, to prevent information from being overwritten. In situations where multiple departments use the same journal type, it’s helpful to create multiple journal names (for example, one per department). It can also be helpful to divide journals so that each posting routine is entered in its own unique inventory journal. For posting routines that are associated with inventory transactions, create one journal for periodic inventory adjustments and another for inventory counting.

Posting journal lines

You can post the journal lines that you create at any time until you’ve locked an item from additional transactions. The data that you enter in a journal remains in that journal, even if you close the journal without posting the lines.

Data entity support for inventory journals

Data entities support the following types of integration scenarios:

  • Synchronous service (OData)
  • Asynchronous integration

For more information, see Data entities.

Note

Not all inventory journals are OData-enabled, therefore you cannot use the Excel data connector to get data published, updated, and imported back to Supply Chain Management.

Another difference between the journal data entities is the ability to use composite entities that include both the header and line data. Currently, you can use the composite entities for:

  • Inventory adjustment journal
  • Inventory movement journal

These two inventory journals only support the Initialize stock scenario as part of a data management import project:

  • When a journal header number is not specified, but a number sequence is specified for the journal type, the import job will automatically create journal headers per 1000 lines. For example, importing 2020 lines will result in the following three journal headers:
    • Header 1: will contain 1000 lines
    • Header 2: will contain 1000 lines
    • Header 3: will contain 20 lines
  • It is assumed that unique line information exists per inventory dimension, which can be a product, storage, and tracking dimension. Therefore, it’s not possible to import journal lines where only the date field differs on the lines within the same import Project.

The original article can be found here

Cash and bank management – Cash flow forecasting

You can use the cash flow forecasting tools to analyze upcoming cash flow and currency requirements, so that you can estimate the company’s future need for cash. To obtain a forecast of the cash flow, you must complete the following tasks:

  • Identify and list all the liquidity accounts. Liquidity accounts are the company’s accounts for cash or cash equivalents.
  • Configure the behavior for forecasts of transactions that affect the company’s liquidity accounts.

After you’ve completed these tasks, you can calculate and analyze forecasts of the cash flow and upcoming currency requirements.

Cash flow forecasting integration

Cash flow forecasting can be integrated with General ledger, Accounts payable, Accounts receivable, Budgeting and inventory management. The forecasting process uses transaction information that is entered in the system, and the calculation process forecasts the expected cash impact of each transaction. The following types of transactions are considered when the cash flow is calculated:

  • Sales orders – Sales orders that aren’t yet invoiced, and that result in physical or financial sales.
  • Purchase orders – Purchase orders that aren’t yet invoiced, and that result in physical or financial purchases.
  • Accounts receivable – Open customer transactions (invoices that aren’t yet paid).
  • Accounts payable – Open vendor transactions (invoices that aren’t yet paid).
  • Ledger transactions – Transactions where it’s specified that a future posting will occur.
  • Budget register entries – Budget register entries that are selected for cash flow forecasts.
  • Demand forecasts – Inventory forecast model lines that are selected for cash flow forecasts.
  • Supply forecasts – Inventory forecast model lines that are selected for cash flow forecasts.

Although there is no direct integration with Project management and accounting, there are several ways to include project transactions in the cash flow forecast. Posted project invoices are included in the forecast as part of open customer transactions. Project-initiated sales orders and purchase orders are included in the forecast as open orders after they are entered in the system. You can also transfer project forecasts to a ledger budget model. This ledger budget model is then included in the cash flow forecast as part of the budget register entries.

Configuration

To configure the cash flow forecasting process, use the Cash flow forecast setup page. On this page, you specify the liquidity accounts to track and the default forecasting behaviors for each area.

General ledger

You must first define the liquidity accounts to track through cash flow forecasting. Typically, these liquidity accounts are main accounts that are associated with the bank accounts that will receive and disburse cash. On the Cash flow forecast setup page, on the General ledger tab, select the main accounts to include for forecasting. If a bank account has been associated with the main account on the Bank account page, it’s shown in the Bank account field.

You can set up a dependent cash flow forecast for a main account that contains transactions that are directly related to transactions in another main account. Each line that you add in the In the Dependent accounts section creates a cash flow forecast amount in a dependent main account. This amount is a percentage of the cash flow amounts to the primary main account that you selected.

First, set the Main account field to the primary main account where transactions are expected to initially occur. Set the Dependent main account field to the account that will be affected by the initial transaction against the primary main account. Set appropriate values for the other fields on the line. You can change the value in the Percent field to reflect the effect of the primary main account on the dependent main account. For a sales or purchase forecast, select a Terms of payment value that is typical for most customers or vendors. Set the Posting type field to the expected posting type that is related to the cash flow forecast.

Accounts payable

You can calculate the forecast for purchases by using the setup options on the Accounts payable tab of the Cash flow forecast setup page. Before you can configure cash flow forecasting for Accounts payable, you must configure terms of payment, vendor groups, and vendor posting profiles.

In the Purchasing forecast defaults section, you can select default purchasing behaviors for cash flow forecasting. Three fields determine the time of the cash impact: Time between delivery date and invoice date, Terms of payment, and Time between invoice due date and payment date. The forecast will use the default setting for the Terms of payment field only if a value isn’t specified on the transaction. Use a term of payment to describe the most typical number of days for each part of the process.

The Liquidity accounts for payments field specifies the liquidity account that is most often used for payments. Use the Percentage of amount to allocate to cash flow forecast field to specify whether a percentage of amounts should be used during forecasting. Leave this field blank if the full transaction amounts should be used during forecasting.

You can override the default setting for the Time between invoice due date and payment date field for specific vendor groups. The forecast will use the default value from the Purchasing forecast defaults section unless a different value is specified for the vendor group that is related to the vendor on the transaction. To override the default value, select a vendor group, and then set the new value for the Purchasing time field.

You can override the default setting for the Liquidity account field for specific vendor posting profiles. The forecast will use the default value from the Purchasing forecast defaults section unless a different liquidity account is specified for the posting profile that is related to the vendor on the transaction. To override the default value, select a posting profile, and then specify the liquidity account that is expected to be affected.

Accounts receivable

You can calculate the forecast for sales by using the setup options on the Accounts receivable tab of the Cash flow forecast setup page. Before you can configure cash flow forecasting for the Accounts receivable, you must configure terms of payment, customer groups, and customer posting profiles.

In the Sales forecast defaults section, you can select default sales behaviors for cash flow forecasting. Three fields determine the time of the cash impact: Time between shipping date and invoice date, Terms of payment, and Time between invoice due date and payment date. The forecast will use the default setting for the Terms of payment field only if a value isn’t specified on the transaction. Use a term of payment to describe the most typical number of days for each part of the process.

The Liquidity accounts for payments field specifies the liquidity account that is most often used for payments. Use the Percentage of amount to allocate to cash flow forecast field to specify whether a percentage of amounts should be used during forecasting. Leave this field blank if the full transaction amounts should be used during forecasting.

You can override the default setting for the Time between invoice due date and payment date field for specific customer groups. The forecast will use the default value from the Sales forecast defaults section unless a different value is specified for the customer group that is related to the customer on the transaction. To override the default value, select a customer group, and then set the new value for the Sales time field.

You can override the default setting for the Liquidity account field for specific customer posting profiles. The forecast will use the default value from the Sales forecast defaults section unless a different liquidity account is specified for the posting profile that is related to the customer on the transaction. To override the default value, select a posting profile, and then set the liquidity account that is expected to be affected.

Budgeting

Budgets that are created from budget models can be included in cash flow forecasts. On the Budgeting tab of the Cash flow forecast setup page, select the budget models to include in the forecast. By default, new budget register entries are included in forecasts after the budget model has been enabled for cash flow forecasting. Inclusion in cash flow forecasting can be overwritten on individual budget register entries.

Inventory management

Inventory supply and demand forecasts can be included in cash flow forecasts. On the Inventory management tab of the Cash flow forecast setup page, select the forecast model to include in the cash flow forecast. Inclusion in cash flow forecasting can be overwritten on individual supply and demand forecast lines.

Calculation

Before you can view cash flow forecasting analytics, you must run the cash flow calculation process. The calculation process will project the future cash impacts of transactions that have been entered.

Calculate the cash flow forecast by using the Calculate cash flow forecasts page. You can calculate either the full cash flow forecast or an incremental cash flow forecast.

  • To clear all cash flow forecast transactions and recalculate, set the Cash flow forecast calculation method field to Total. We recommend that you use this approach if you haven’t updated the cash flow forecasts for a long time.
  • To update the existing cash flow information for new transactions only, set the Cash flow forecast calculation method field to New. The page will show the date when your cash flow calculation was last run.

You can also use batch processing for your cash flow forecasting. To help guarantee that your forecasting analytics are regularly updated, set up a recurring batch process for cash flow forecast calculation.

Reporting

After the cash flow forecast is calculated, you must refresh the associated entity information for analytical reporting. On the Entity store page, select the LedgerCovLiquidityMeasurement aggregate measurement, and then click Refresh.

There are two workspaces that contain cash flow forecasting data. One workspace has data for all companies, and the other workspace has data only for the current company.

Access to the workspace for all companies is controlled through the View cash flow all companies workspace duty. By default, the Cash overview – all companies workspace is available to the following roles:

  • Chief executive officer
  • Chief financial officer
  • Financial controller

Access to the workspace for the current company is controlled through the View cash flow current company workspace duty. By default, the Cash overview – current company workspace is available to the following roles:

  • Accountant
  • Accounting manager
  • Accounting supervisor
  • Accounts payable manager
  • Accounts receivable manager

The Cash overview – all companies workspace shows cash flow forecasting analytics in the system currency. The system currency and the system exchange rate type that are used for the analytics are defined on the System parameters page. This workspace shows an overview of cash flow forecasting and bank account balances for all companies. A chart of cash inflows and outflows gives an overview of future cash movements and balances in the system currency, together with detailed information about the forecasted transactions. You can also see the forecasted currency balances.

The Cash overview – current company workspace shows cash flow forecasting analytics in the company’s defined accounting currency. The accounting currency that is used for the analytics is defined on the Ledger page. This workspace shows an overview of cash flow forecasting and bank account balances for the current company. A chart of cash inflows and outflows gives an overview of future cash movements and balances in the accounting currency, together with detailed information about the forecasted transactions. You can also see the forecasted currency balances.

For more information about the cash flow forecasting analytics, see the Cash overview Power BI content topic.

Additionally, you can view cash flow forecasting data for specific accounts, orders, and items on the following pages:

  • Trial balance: Select Cash flow forecasts to view the future cash flows for the selected main account.
  • All sales orders: On the Invoice tab, select Cash flow forecasts to view the forecasted cash impact of the selected sales order.
  • All purchase orders: On the Invoice tab, select Cash flow forecasts to view the forecasted cash impact of the selected purchase order.
  • Supply forecast: Select Cash flow forecasts to view the future cash flows that are associated with the selected item supply forecast.
  • Demand forecast: Select Cash flow forecasts to view the future cash flows that are associated with the selected item demand forecast.

You can found the original article here

Inventory management – Set up an item arrival overview profile

This topic focuses on the setup of an arrival overview profile. The arrival overview profile is a collection of rules that will be applied when the Arrival overview page is opened by a user. You can use this procedure in demo data company USMF. This procedure would typically be carried out by a receiving clerk.

  1. In the navigation pane, go to Modules > Inventory management > Setup > Distribution > Arrival overview profiles.
  2. Select New. Because you will almost always work in the same warehouse offloading full truck loads, you should create an arrival overview profile to simplify the process of registering received items.
  3. In the Arrival overview profile name field, type a value.
  4. In the Show lines field, select an option. Select which lines to show for the receipts:
    • All – Show all lines, regardless of status.
    • In progress – Show lines for receipts in which the progress is Complete or Partly. This means that for each line, either the full quantity or part of the quantity has been registered in an arrival journal.
    • Not complete – Show lines for receipts in which the progress is None or Partly. This means that for each line, nothing or only part of the quantity has been registered in an arrival journal.
  5. Expand or collapse the Arrival options section.
  6. In the Days forward field, type a value. This sets a filter to show the receipt lines expected to be received within the next few days (depending on the number you set).
  7. In the Days back field, type a value. This sets a filter to show the receipt lines expected to be received a number of days before today.
  8. In the Warehouses field, type a value. Filter on one or more warehouses.
  9. In the Mode of delivery field, select a value. This sets a filter to show only the receipt lines with this Mode of delivery.
  10. In the Name field, select WHS.
  11. In the Warehouse field, select warehouse 24. This is the default warehouse that will be used for registered receipt lines that use this profile.
  12. In the Location field, select Baydoor. This is the default location that will be used for registered receipt lines that use this profile.
  13. Expand or collapse the Arrival query details section.
  14. In the Restrict to site field, select site 2. This sets a filter to show only the receipt lines with this site.
  15. Set the Purchase orders option to Yes. Select receipt lines from purchase orders.
  16. Set the Transfer orders option to Yes. Select receipt lines from transfer orders.
  17. Select Save.
  18. Close the page.

The original article can be found here