Create Excel and PDF documents from Typeform in Power Automate

This article demonstrates how to create PDF documents from an XLSX template on a Typeform submission with the help of Processes in Power Automate (MS Flow). It may help you to automize the generation of different documents like applications, requests, orders, etc., in your company.

Processes are a Plumsail Documents feature with an intuitive interface for creating documents from templates.

Typeform is an online form builder that allows you to create modern responsive forms for your website.

Let’s see how to connect them in Power Automate (Microsoft Flow) to automatically collect data from a Typeform, apply the data to our Excel template, and generate a new PDF document.

Create a Form

We’ve already created a Typeform with a short employee questionnaire. We will use data from its submission. If you haven’t created Typeforms before, follow this link to learn how to do it.

Below is a screenshot of our form:

Typeform image

Configure the Process

Before creating the Flow, we need to set a Process, which will generate PDF documents from an XLSX template.

Create a new process

Go to the Processes section in your Plumsail account.

Click on the Add process button.

add process button

Set the Process name. As we’re going to generate PDF documents from an Excel template, select XLSX for the template type.

create excel process

Configure a template

Once you’re done with the first step Create Process, press the Next button, and you’ll proceed to the next step – Configure Template.

It includes two substeps:

  • Editor;

  • Settings.

In Editor, you can compose the template from scratch or upload a pre-made one. It’s also possible to modify the uploaded template online.

Feel free to download an XLSX template that we have already prepared. It’s a short employee information sheet:

Excel template

Then upload it to the process.

upload template file

Templating syntax

When creating your own templates, mind the templating language. Plumsail Excel XLSX templates use a different approach than most other templating solutions. It uses a minimal amount of syntax to make your work done.

In short, the templating engine thinks that everything between curly {{ }} brackets is variables where it will apply your specified data. Read this article to get familiar with the templating engine.

Test template

You can test a template as well, to see how it will look at the end. After clicking on the Test template button, you will see the dialog where you can fill in the auto-generated testing form. Form fields are created based on tokens from your document template. You can adjust the look of the testing form by changing token types.

test template

It’s testing. We’re going to apply the data from the MS Form to our template.

Once you’ve tested the template, press Save&Next to proceed further - to the Settings substep.

Here, please:

  • Switch to an active mode to remove Plumsail watermarks from resulting documents

  • Fill in the name of the result file

  • Select PDF format for the output file

  • Protect the result PDF if you wish

Configure template

Once you’ve customized all the settings, you can test the template to see the result as we did it before.

When everything is done here, click on Save & Next to set up deliveries.

Delivery

The next step is delivery. For demonstrating purpose, we’ll store the result file in OneDrive. But there are other options.

Select the folder where the ready document will be saved.

create pdf from template on form submission

You can configure as many deliveries as you need.

Start the Process

We will start our Process from Power Automate (Microsoft Flow).

Create a Flow

This is how our Flow looks:

pdf from  Typeform flow

Check out the Flow steps described below.

Form is submitted

We need to start the Flow everytime somebody submits our Typeform. For that, search for Typeform in Power Automate and set Typeform - When a response is submitted as a trigger.

If this is your first Flow with Typeform, on this step, sign in to your Typeform Account from MS Flow to use your forms inside Flows.

Then, you’ll need to pick the form you want to track in the dropdown.

typeform trigger

Start document generation process

This is the action from Plumsail Documents connector. This action is suitable for starting the Process of generating documents from a template. You can find more information about this action by visiting this page.

Using the action for the first time, you’ll be asked for ‘’Connection Name’’ and ‘’Access Key’’.

create flow connection

You can type any name for the connection. For example, ‘’Plumsail Documents’’.

Then create an API key in your Plumsail Account page, copy and paste it to ‘’Access Key’’ field.

The action has two parameters:

start generation documents action
  • Process name. Select the process you need from available ones.

  • Template data. Specify source data in JSON format:

dynamic content of Typeform is submitted

This object contains information from our form. We selected the dynamic content from the output of Typeform - When a response is submitted action:

dynamic content of Typeform is submitted

Use the ready document in Flow

You can stop on the step Start document generation process.

Steps described above are enough for generating PDFs from an XSLX template based on the Typeform submission. Your result file will be saved to OneDrive in this case. See how it will look:

Final document

But if you need an advanced logic, it’s possible to work with the result file right in the Flow.

Here is an example of how you can send the ready document for approval.

Add an action Create an approval from the Approvals connector. Select an output of the previous step for an attachment.

send pdf for approval

Sign up for Plumsail Documents

As you can see, it’s simple to automize the generation of documents on Typeforms submission. If you’re new to Plumsail Documents, register an account and follow the steps described in the article to set the process for automatic creation of PDFs from Typeforms. A 30-day trial is free.