I have a Account Opening application. Once the applicant submits the form it is required the applicant gets a pdfReceipt via email. As well a different pdfReceipt is delivered via SFTP to the client's server. The 2 pdfs have very slight differences wherein the pdf that gets sent via SFTP has extra fields exposed. This was working well until...

The client wants to use an API to deliver the email instead of SMTP. I tried overriding the Default SMTP Email Service but the extra fields that need to be hidden are visible (sends incorrect receipt). 

So then I tried in the Submission Completed Processor but the receipt hasn't been rendered yet. Then I tried as a JobAction but the receipt hasn't been rendered yet either. 

Q1) How can I access the two different receipts so I can determine I'm sending the correct one. Which object or service has both receipts or minimally the receipt I want?

Q2) Where in the Transaction LifeCycle can I be assured that the receipt is rendered so I can call the API? Emailing the receipt is a requirement. The Delivery Process is not an option because there is a Job Controller process that can last up to 60 days.


    CommentAdd your comment...

    1 answer


      Hi Brad,

      I will answer in reverse order

      Q2) first with some background.

      In Transact the processing is governed by schedule jobs.

      Collaboration Job Controller - scheduled job is responsible for executing the Collaboration Jobs that are available to run. This might be set to run every minute

      Transaction Processing - schedule job: Renders the receipt, emails it and last performs the delivery.
      This might run every 5 minutes.

      By default when a task is submitted in a collaboration job, the processing does not wait for a receipt to be generated before creating a new task in the next step. The receipt gets created after the Transaction Processing schedule job is run 0 - 5 minutes later.

      A collaboration job can to force all pdf receipts to be generated before the job passes a particular step by using the following job action: JobReceiptWaitService 

      The email with receipt attached that is sent to the user with be generated after the Transaction Processing has run.

      However the form is not made available in the until:

      1. The collaboration job runs the JobDeliveryService action specifying the submission. Note the JobDeliveryWaitService action goes to a Pending.
      2. After a 0 - 5 minute delay the Transaction Processing completes without error.
      3. Transaction can now be retrieved up by the REST API
      4. Transaction Retrieved,  This runs a callback on the Job which completes the Job Delivery and Job Delivery Wait. The Job Step finishes and is routed to the next step.


      We have an idea of a delivery receipt which is separate from the user receipt.


      The SFTP service is a Groovy or Fluent Delivery Service?

      Has code to regenerate the receipt with the extra fields?



      ... To be continued



      Larry Bunton

      1. Larry Bunton

        Hi Brad,

        Following up on this ticker

        What version of TM are you using?

        Are you using

        Fluent API : Txn

        Core API (Groovy Script): Submission

        Where does the current delivery script currently store or retrieve the receipt?

      CommentAdd your comment...