nanoq Nanoq

Service Integration - Prisme and AR

Webservices - Monthly Tax Reports and Fees

This section describes the lifecycle of Postings in their travels between AR and Prisme.

Key Concepts:

  • Posting. A Posting can be either a Monthly Report or a Fee.
  • Status. A Posting's lifecycle is defined as a series of Statuses.
    The lifecycle is one-way chronologically, i.e. a Posting takes on one Status after another.
    It cannot skip over a Status, and cannot move back to an earlier status.
    A Posting will not necissarily all the way through the Status chronology.
Status Lifecycle:
Below is a description of the various Statuses, and which system is engaged in change of Status.
The numbrs in red refer to the figure below, showing a Posting's travels between systems.
All postings start in AR, submitted either by an Employer or by an eTax user in the tax office.

  1. CREATED
    • Posting is created in AR.
  2. APPROVED_FOR_POSTING
    • Posting is approved (by an eTax user or automatically) to be sent for posting in the accounting system.
  3. SENT_FOR_POSTING
    • Call to MonthlyTaxReportService.SubmitX (1).
    • Receipt of call from MonthlyTaxReportClient (2).
    • MonthlyTaxReportClient has received a response from MonthlyTaxReportService with ResponseStatus: Received.
  4. POSTED
    • Booking in the accounting system (3).
    • Call to CallbackService.UpdateXStatus with Status: POSTED (4).
    • Receipt of call from CallbckServiceClient (5).
    • CallbackServiceClient has received a response from CallbackService with ResponseStatus: Received.
  5. APPROVED_FOR_REVERSAL
    • Posting is approved (by an eTax user, Employer or automatically) to be sent for reversal in the accounting system.
  6. SENT_FOR_REVERSAL
    • Call to MonthlyTaxReportService.RollbackX (1).
    • Receipt of call from MonthlyTaxReportClient (2).
    • MonthlyTaxReportClient has received a response from MonthlyTaxReportService with ResponseStatus: Received.
  7. REVERSED
    • Reversal in the accounting system (3).
    • Call to CallbackService.UpdateXStatus with Status: REVERSED (4).
    • Receipt of call from CallbckServiceClient (5).
    • CallbackServiceClient has received a response from CallbackService with ResponseStatus: Received.

Posting Lifecycle

Design Notes:
  • Asynchronous communication. AR sends Postings to the accounting system, but does not wait for the Posting to be
    posted/booked in the accounting system; it requires only acknowlegement that the Posting is received.
    This is because (1) system-to-system communication can fail temporarily (timeouts, connection problems etc)
    and (2) posting/reversal in the accounting system can require manual tasks.
    Postings are sent in batches every 2-5 minutes.
  • Retry on error. AR will re-send any postings that were not succesfully sent in the previous batch,
    regardless of the type of error encountered (communication error, runtime error, logical error etc).
    It is expected that the accounting system will behave the same way when calling AR.
© Copyright KIMIK iT A/S