Skip to main content

How to embed WeTransform into your application

Two integration modes, one result: your clients upload and transform files without ever leaving your platform.

Written by Stéphane Jauffret

WeTransform can be embedded directly into your application, so your clients never need to know WeTransform exists. They upload their files, review the transformation, fix errors, and submit, all inside your product. There are three integration modes, from the deepest to the simplest.

⚙️ Mode 1 — The SDK (recommended)

The WeTransform SDK opens the full experience as a modal or an inline widget inside your own interface, and lets your code react to what happens through typed events. It ships as npm packages:

  • @wetransform/core — framework-agnostic, works in any JavaScript or TypeScript project

  • @wetransform/react — React wrapper

  • @wetransform/vue — Vue 3 wrapper, with a renderless component and a composable

npm install @wetransform/core

const sdk = createWeTransform({  organizationHandle: 'your-org',  authentication: {    customerId: 'customer_id',    signature: signatureGeneratedServerSide,  },})sdk.open()sdk.on('successSubmit', ({ fileUrl }) => {  // the transformed file is ready})

🔑 The signature is an HMAC SHA256 token generated on your server with your embed secret key. Never expose the secret in the browser. See Authentication — how to make the experience seamless for your clients.

Full SDK reference, with configuration options, events, and React and Vue examples: api.wetransform.com/en/documentation/sdk.

🖥️ Mode 2 — Embed via iframe

If you cannot add an npm package to your stack, you can display the WeTransform interface inside your page with a plain iframe pointing to your branded URL:

<iframe  src="https://your-name.send-a-file.io/template-handle?customer_id=1234&signature=..."  width="100%"  height="800px"  frameborder="0"></iframe>

The authentication is the same HMAC signature as with the SDK. The upload, match, and Finalize steps all happen inline, inside your page.

🔗 Mode 3 — Redirect to your branded page

The simplest option, when embedding is not possible: redirect your client to your dedicated page at your-company.send-a-file.io, branded with your logo and colors. Once the file is submitted, WeTransform redirects them back to your Return URL with a signed download link. Your client briefly leaves your site, which is why the SDK and iframe modes are preferred.

🔄 The end-to-end flow

  1. Your client clicks "Upload file" on your platform

  2. Your server generates the HMAC signature and your frontend opens WeTransform (SDK modal, iframe, or redirect)

  3. The client uploads their file, reviews errors in Finalize, and submits

  4. Your application receives the transformed file URL (SDK successSubmit event, or Return URL)

  5. Your system downloads the file and integrates it — done

🔁 Webhooks as an alternative. Instead of waiting for the client-side event or redirect, you can configure a webhook to receive the file automatically as soon as it is processed. See How to receive your output automatically with webhooks.

👉 What to do next

Did this answer your question?