Skip to content

Transactional Service Common Questions

When should I invoke startTransactionalService and completeTransactionalService?

  • window.wogaaCustom.startTransactionalService('example-1') should be invoked when the website user starts the transactional service Creation of user

  • window.wogaaCustom.completeTransactionalService('example-1') should be invoked when the website user completes the transactional service Creation of user

What argument should I pass to startTransactionalService and completeTransactionalService?

  • Invoking window.wogaaCustom.startTransactionalService('example-1') will work since the Example Webite has tracking ID example-1 tagged under it.
  • Invoking window.wogaaCustom.startTransactionalService('testing-1') will not work since the Example Webite doesn't have tracking ID testing-1 tagged under it.

Why is My Service Getting a Low Completion Rate?

If you are getting a low completion rate on your service(s) shown in WOGAA's dashboard, the few reasons why this could happen:

  • Inserting the event trigger code in the Wrong End Page

    Non-Standard Flow - Wrong End Pages

    Agencies have implemented the event trigger code - completeTransactionalService() only on the "Logout" page.

    As such, this is an error-prone implementation as it will result in an inaccurate way of measuring completion rate (e.g. low completion rate ) of their service(s).

    Since there is a possibility that a user can choose not to logout from the site/application after "completing" the transaction(s), technically the service will still be considered as "incomplete" on our end given that the user did not arrive on the "end page"(Logout page).

    What you should do:

    The completeTransactionalService() should be placed on an appropriate end page/last step that you would consider the "Transaction to have finished" instead of the "Logout" page.

  • Counting completion rate on transactions with ‘save and return’ state

    If your service allows users to save a transaction and finish it later (e.g. "Save as draft"), this is how WOGAA is currently tracking the "Start" and "Complete" figures:

    1. Given a transaction (e.g. some form filling) is started, the startTransactionalService() is triggered.
    2. Next, the user performs a "Save as draft" action of the transaction and leave the site.
    3. Then, the user comes back to the site and open up the "draft".
    4. At this stage, a new startTransactionalService() is fired.
    5. Once the transaction is completed, the completeTransactionalService() is executed.

    This should result in Two Starts and One Complete events sent to WOGAA's server based on this type of transactional behaviour.

startTransactionalService() is called, but why do I not see any Snowplow events fired?

Assuming you have implemented and verified the Event trigger codes correctly, the startTransactionalService() will only send events on the first call in a session. This is to prevent multiple counts of start if user keeps refreshing the page.

Still unable to get your Tracking Code to work?

No worries, WOGAA Support Team can help! You can reach out to us at