e-invoicing

Compliance Network Implementation Guide

Configure the inbound service

Configure the inbound service to receive e-invoices from the Inland Revenue Board of Malaysia (IRBM) through Sovos.

The inbound service enables Sovos to fetch e-invoices from IRBM on your behalf and make them available through the Sovos Indirect Tax API.

Important:

Configure this service only if your organization uses basic integration to receive invoices. If you use intermediary integration, only the Sovos Professional Services (PS) team can start the inbound process.

Sovos polls IRBM for new inbound documents at the following intervals:

Production
Every two hours
UAT
Every 30 minutes
Note:

IRBM limits the polling start date to no more than 10 days in the past.

Set up the inbound service

  • Verify that your organization uses basic integration to receive invoices.

  • Assign my_UBLInvoice_Polling_1.0 as a product for your company.

  • Upload your polling credentials.

  1. Send a POST request to https://api-test.sovos.com/v2/configurations/organizations/{orgId}/settings with the following request headers:
    • Content-Type: application/json

    • Authorization: Bearer {accessToken}

    • x-correlationId: {uniqueValue}

  2. Include the following JSON body.
    JSON
    [
      {
        "context": "polling",
        "configurations": [
          {
            "name": "query_filter_params",
            "value": {
              "items": [
                {
                  "name": "PollingDateFrom",
                  "value": "2024-01-01T00:00:00Z"
                }
              ]
            },
            "scope": {
              "category": "MY_INV",
              "productId": "my_UBLInvoice_Polling_1.0",
              "orgId": "YOUR-ORG-ID",
              "taxId": "YOUR-COMPANY-TAXID"
            }
          },
          {
            "name": "polling_process_configuration",
            "value": {
              "pollingWorkflowState": "enable"
            },
            "scope": {
              "operation": "Validate",
              "category": "MY_INV",
              "productId": "my_UBLInvoice_Polling_1.0",
              "orgId": "YOUR-ORG-ID",
              "taxId": "YOUR-COMPANY-TAXID",
              "systemId": "CUSTOM-SYSTEM-ID"
            }
          }
        ]
      }
    ]
    Note:

    Set PollingDateFrom to a date in the ISO 8601 format.

  3. Verify that the response returns HTTP 201.
Save the SETTING-ID to disable or re-enable the inbound service in the future.

Enable or disable the inbound service

  • Configure the inbound service.
  • Save the SETTING-ID value from the inbound service configuration.

Use this API request when you need to temporarily stop Sovos from fetching inbound documents from IRBM.
  1. Send a PUT request to https://api-test.sovos.com/v2/configurations/organizations/{orgId}/settings/{settingId} with the following request headers:
    • Content-Type: application/json

    • Authorization: Bearer {accessToken}

    • x-correlationId: {uniqueValue}

  2. Set pollingWorkflowState to enable or disable and include it in the request body.
    JSON
    {
      "value": {
        "pollingWorkflowState": "disable"
      }
    }
  3. Verify that the response returns HTTP 200.
    JSON
    {
      "status": 200,
      "message": "OK",
      "success": true,
      "data": {
        "name": "polling_process_configuration",
        "value": {
          "pollingWorkflowState": "disable"
        }
      }
    }