Pre-fill documents from your CRM
How-to guide3 min read
Data fields are filled from the dataobject you send. Your code (or your integration tool) maps your system's field names to the template's data names once. Notriv doesn't need to know how your CRM is organized.
Map your fields
| Your CRM field | Template data name |
|---|---|
| Contact → Full Name | client_name |
| Deal → Amount | purchase_price |
| Deal → Close Date | closing_date |
const deal = await crm.deals.get(dealId)
await notriv.envelopes.create({
template: 'tmpl_purchase_agreement',
signers: { client: { name: deal.contact.fullName, email: deal.contact.email } },
data: {
client_name: deal.contact.fullName,
purchase_price: deal.amount,
closing_date: deal.closeDate,
},
metadata: { crm_deal_id: deal.id },
})Tip
Using Zapier, Make or n8n? They read the template's
data_keys and show a dropdown for each one, so you map fields by clicking.Values filled automatically
Leave these out and Notriv fills them for you:
| Data name | Filled with |
|---|---|
today | Today's date, MM/DD/YYYY |
sender.name | Your account name |
sender.email | Your account email |
client.name | The signer's name for that role (works for any role) |
client.email | The signer's email for that role |
Mistakes are caught before sending
Nothing is sent if the data is wrong, and the error says exactly what to fix:
| Problem | Error |
|---|---|
| A required value is missing | missing_data |
| A name the template doesn’t use (often a typo) | unknown_data_key |
| A signer role is missing | signer_missing |
Next steps
Was this page helpful?