Skip to main content

Integration

Integration is the Reports area for the connection between ITS and the customs systems that call it. It answers three questions: what ITS refused and why, whether the declarations ITS announced to other countries were accepted, and how far organisations have got with onboarding.

It is the page a technical contact opens after a complaint that "ITS is rejecting our declarations".

Before you start

  • You need a role that reads the integration area (Secretariat admin or Organisation admin). See What each role can do.
  • Have the correlation ID of a refused call to hand if you are chasing one particular refusal. Your customs system receives it in every answer from ITS.

Open it

  1. Select Reports, then the Integration tab.
  2. Check the Period and the sentence You are reading ….

Integration as the Secretariat: rejections, distinct reasons, deliveries and acceptance; Why we refused; Whose calls are refused; Rejections over time; Did the endpoint accept it; Onboarding

On the page

On the pageWhat it is for
RejectionsCalls ITS refused in the period.
Distinct reasonsHow many different reasons those refusals had.
DeliveriesAnnouncements ITS sent to other countries' systems (a new declaration, a stamp, an amendment).
AcceptanceThe share of deliveries the receiving system acknowledged.
Why we refusedRefusals by reason, largest first.
Whose calls are refusedRefusals by the country or organisation that made the call.
Rejections over timeRefusals through the period.
Did the endpoint accept itDeliveries by result: acknowledged or still pending.
OnboardingOrganisations by how far they have got with connecting to ITS.

The refusal reasons

ReasonWhat it usually means
NOT_ENTITLEDThe caller may not do this, or may not see this declaration.
NOT_FOUNDThe declaration or office asked for does not exist, or is outside the caller's scope.
INVALID_FIELDS, UNPARSEABLE, UNKNOWN_VALUEThe request was badly formed or used a value ITS does not know.
BUSINESS_RULE, PRECONDITIONThe request was well formed but broke a transit rule, for example a stamp out of order.
INTERNAL_ERRORA fault on ITS's side. Report it with the correlation ID.

For every error code, see the error catalogue.

What you see depends on who you are
SecretariatState Party (Tunisia)REC (IGAD)
Refusals countedEvery caller'sCalls made as TunisiaCalls made for IGAD's members
Whose calls are refusedEvery country and organisation (KE, UG, ZW, TN, IGAD, AU…)TN onlyOne member code (ER)
DeliveriesEvery announcement ITS sentAnnouncements to TunisiaAnnouncements to the members
OnboardingEvery organisationTunisiaThe members, see the caution
SecretariatState PartyREC
Integration as the Secretariat: thousands of rejections, eight reasonsIntegration as Tunisia: 86 rejections, 83 of them NOT_ENTITLED, all from TNIntegration as IGAD: 13 rejections, all NOT_ENTITLED, charged to ER

Find out what your system is sending wrong

  1. Read Why we refused. Reasons other than NOT_ENTITLED are the ones your system can usually fix.
  2. Open the tile's ⋮ menu and select Open full report. Rejections lists every refused call: when, which request, the reason, the reference and the caller.
  3. Narrow it to the period and reason you are chasing, and export it for your developers. See Export a report.
  4. For a single refusal, look it up by correlation ID on Failed transmissions (in All areas).

Known problems

Using the portal adds refusals to your count

On the current version, every portal page makes a request that the server refuses for State Party and REC accounts. Each of those refusals is recorded as one of your organisation's rejections, with the reason NOT_ENTITLED. For Tunisia, almost every rejection in the period (83 of 86) is the portal itself, and the count rose from 58 to 86 in one morning of browsing. The same refusals appear in Failed transmissions and in notifications saying "N of your requests were refused today".

Until this is fixed, treat NOT_ENTITLED refusals on requests your customs system does not make as the portal's own, and look at the other reasons for your system's real problems.

A REC's portal refusals are charged to one member

As IGAD, Whose calls are refused reads ER 13. Those are IGAD's own portal requests, charged to Eritrea. Do not read them as a problem with Eritrea's system.

Deliveries can read 0 while declarations were delivered

For Tunisia, Deliveries reads 0 and Outbound deliveries says "Nothing matches", while the declaration's own History lists an acknowledgement from Mali and a pending delivery to Algeria. Check a declaration's History for the delivery of one declaration.

Acceptance can read 100% with deliveries pending

Acceptance rounds: 4,437 acknowledged and 19 pending shows as 100%. Read Did the endpoint accept it for the pending count.

Codes and odd callers

Results and reasons show as codes (ACKED, PENDING, NOT_ENTITLED). A caller shown as ~none is a call that arrived with no organisation attached. The Rejections over time chart is labelled "Declarations over time" and "Registered" in its legend; it shows rejections.

The Onboarding tile may leave organisations out

The Onboarding tile lists fewer organisations than the System integration workspace (for the Secretariat, 19 against 27), and as IGAD it lists only Eritrea, not IGAD itself, although IGAD is in the sandbox.

  • Reports
  • All reports: Rejections, Outbound deliveries, Onboarding, Rejections by reason, Delivery outcomes.