Symptoms

There is a failed notification task in Billing (task object is MESSAGE). Methods can be different - UserNotification, AccountNotification, PlanNotification, LicenseWithProductKeyNotification, ARDocNotificationDfltTempl, etc. Task fails with the following error message:

Execution Failed: Template is not found. Can not send notification.

Cause

Billing tries to send a notification using not existing or not available Notification Template. Another case is, that if some notification template once assigned to a service plan using the "Notification About Service Provisioning" parameter is removed. This is a symptom of a bug tracked at ID PBA-85596. Contact your Technical Account Manager or the Pooled Technical Associate Team at pta@odin.com to clarify the status of this request.

Resolution

  1. Try finding a place where wrong Notification Template name is specified. Possible places are described below in this article;
  2. Check if a Notification Template with such name actually exists in the Notification Templates list:

    Home > System > Settings > Notifications > Notification Templates

    If a template with such name does not exist, then the name used in the Event Handler should be corrected or the corresponding new template created.

  3. If the Notification Template exists, check if it is set as "Active";
  4. Notification Template should be set as "Visible to Resellers" if notifications are to be sent to reseller's customers.

Possible places where the Notification Template name can be specified are the following:

  • The General tab of a Service Plan;
  • Common Notification Settings of a vendor's account:

    Home > System > Settings > Notifications > Common Notification Settings

  • Corresponding Event Handler. To find out the exact Event type, find a failed task having object "MESSAGE" in the Billing Provider's Control Panel:

    Home > Operations > Tasks > Failed Tasks, search for the tasks with "Object" = 'MESSAGE'

    1. Open the task you want to investigate and click on its Event Handler:

    1. Check the "Signature" field value: if "TemplateName=NOTIFICATION TEMPLATE NAME" is specified there, then Billing will try to send a notification using the "NOTIFICATION TEMPLATE NAME" Notification Template:

Important

Make sure that at the end of the signature there are no line breaks or space characters. They are not visible in a view mode, so press the Edit button and check that there is no extra line or a space character after the Notification Template name. Otherwise, the billing might be unable to find the Notification Template and the mentioned error "Template is not found. Can not send notification." will be thrown by the system.

Troubleshooting

The exact Notification Template name that was used by Billing while executing failed task can be found in logs (generic_worker.log or scheduler.log in 6.0, billing.log or billing.scheduler.log in 7.x ) on the Billing application server. Search for the method specified in the failed task Event Handler, for the above example - PlanNotification. NOTIFICATION_TEMPLATE_NAME is the required Notification Template:

[14-01-29 01:37:52.051 Worker1.41  TH09386 NTE] Entering method MESSAGE_Container::Worker1.41.PlanNotification(user = -1, transaction = 309013, SID = 0, lang = en, LP)
[14-01-29 01:37:52.051 Worker1.41  TH09386 NTE]         1 input arguments :
                int32_t: 1000101
...
[14-01-29 01:37:52.054 Worker1.41  TH09386 TRC]  +++[1] ErrorMessage* MESSAGE::SubscriptionNotification(Int, Str)(1000101, NOTIFICATION_TEMPLATE_NAME)
...
[14-01-29 01:37:52.064 Worker1.41  TH09386 TRC]  ...[1] *** INTERRUPTED BY EXCEPTION *** ErrorMessage* MESSAGE::SubscriptionNotification(Int, Str)
[14-01-29 01:37:52.064 Worker1.41  TH09386 TRC] ...[0] *** INTERRUPTED BY EXCEPTION *** ErrorMessage* MESSAGE::PlanNotification(Int)
...
[14-01-29 01:37:52.067 Worker1.41  TH09386 NTE]         ExceptionResult: Template is not found. Can not send notification.

Internal content