Skip to content
Menu

HubSpot + Inkly

Inkly adds one action to HubSpot workflows: Send a handwritten card. A deal closes, a renewal comes up, a meeting gets booked - and a real card, written with a ballpoint pen, goes in the mail with no human effort. You connect your portal once, choose Blank Ivory, and write your message. Every card uses Bea handwriting. Inkly reads each enrolled contact's name and mailing address automatically.

Jump to setup
On this page
HubSpot

A contact enrolls in your workflow

The action

Sends the name, address, and message

Inkly

A pen machine writes the card, real ballpoint

Mailbox

Stamped and mailed within two business days

Private beta. The HubSpot app is not in the marketplace yet, so connections are invite-only. Ask for access; once enabled, the Connect HubSpot button appears in your dashboard. Your HubSpot subscription must include contact-based workflows.

Four steps, about five minutes.

1

Connect your portal

Open HubSpot setup from Integrations in your dashboard and press Connect HubSpot. Approve the install in HubSpot and you land back on the dashboard, connected. There is no API key to create, copy, or paste - connecting is the whole credential step.

Connecting has to start from your dashboard, not from HubSpot. That is what proves the portal belongs to your Inkly account - a connection begun anywhere else cannot finish.

Inkly dashboardIntegrations

HubSpot private beta

Send cards from contact workflows

Connect once. No API key to copy.

Connect HubSpot
Illustrative setup preview. Eligible accounts reach HubSpot setup from Integrations.
2

Add credits

Cards are prepaid. In Credits on the dashboard, add credits before the first workflow run. Every card draws from the same account balance, whether it was sent from a workflow, the API, or the order form.

If the balance runs out mid-workflow, the action fails visibly with "Not enough Inkly credits" and no card is sent. Top up, then re-enroll.

Each portal starts with a 25-card and $125 daily safety limit. You can change either limit or pause sending from the dashboard. Usage resets at 00:00 UTC.

Inkly dashboardCredits

Account balance

$247.50

50 cards available

Add credits
Illustrative setup preview. One balance covers dashboard, API, Zapier, and HubSpot sends.
3

Add the action to a contact workflow

In HubSpot, create or open a contact-based workflow, set your enrollment trigger, then add an action and pick Inkly › Send a handwritten card.

Deal-driven sends work today from a contact workflow: enroll contacts whose associated deal reaches Closed Won. That keeps the recipient - and their mailing address - unambiguous, which is exactly what a physical card needs.

HubSpot workflowContact-based
1Contact meets enrollment criteria
2Inkly
Send a handwritten card
Illustrative setup preview. Inkly appears in contact-based workflows only in this release.
4

Choose Blank Ivory and write the message

HubSpot shows Target record first. Keep it on Enrolled contact: that is the person who gets the card. Its other options, such as a company or a meeting, have no person to address the card to, so the action fails with "Target record must be Enrolled contact".

Select Blank Ivory, the card available through HubSpot. Bea handwriting is applied automatically. Write the message once: it is the template every card uses. Names and mailing addresses come from the enrolled contact's standard properties automatically, with no recipient fields to map.

Click Message to open All data tokens, then choose Enrolled contact. Insert contact properties, including custom properties, wherever you want them in the message. HubSpot fills in each contact's values before Inkly writes the card.

The written card fits 5 lines in Bea, about 180 characters. Blank lines count as lines, and long lines wrap. The pen cannot write emoji or non-Latin characters. Inkly checks every card before charging: one that would not fit fails with "The message ... does not fit the card" and costs nothing. First name, last name, and a complete US address are required for the action to succeed.

Keep apartment, suite, or unit details in the contact's Street address, for example 400 Market St, Suite 9. Inkly reads them automatically.

Under When should the card arrive?, choose As soon as possible, Choose an arrival date for one calendar date, or Use a contact date property for a different date per contact. The matching date field appears only when needed. New actions default to ASAP if no option is selected. Existing actions keep their saved date until you choose an option.

An arrival date is a target, not a guaranteed mailbox date. Choose a real date from today through the next 365 days. Inkly schedules mailing five business days before the target when possible; otherwise the card mails as soon as possible.

Send a handwritten cardInkly
Card designBlank Ivory HandwritingBea, applied automatically Recipient detailsRead from the enrolled contact automatically MessageHi [First name], thank you... When should the card arrive?As soon as possible
Illustrative setup preview. Each enrolled contact supplies their name and address automatically.

Your settings. Their contact details.

Set the card, personalized message, and arrival option; Bea handwriting is automatic. Inkly reads the eight standard contact properties marked Automatic below at each execution. Map a date property only if you choose a contact-based arrival date. Apartment, suite, and unit details come from Street address automatically.

Scroll the table sideways to see every column.

Action fieldHubSpot propertyNotes
Target record Keep Enrolled contact HubSpot asks which record the action runs on. The enrolled contact is the person who gets the card. Companies, meetings and other records have no recipient, so the action refuses them.
Card design Select Blank Ivory Blank Ivory is the only card available through HubSpot.
Handwriting style Automatic: Bea Every HubSpot card uses Bea. No font selection is needed.
Message Type text and insert HubSpot tokens Click Message, then All data tokens > Enrolled contact. HubSpot fills the tokens in; the written card fits 5 lines in Bea, about 180 characters. Blank lines count. No emoji.
When should the card arrive? Choose an arrival option As soon as possible, choose an arrival date, or use a contact date property. New actions default to ASAP if left blank.
Target arrival date Choose a calendar date Shown for Choose an arrival date. Required for that option; the same target is used for every contact.
Contact date property Map a date property Shown for Use a contact date property. Each contact must have a valid date.
Recipient first name Automatic: First name Required.
Recipient last name Automatic: Last name Required.
Recipient company Automatic: Company name Optional.
Street address Automatic: Street address Required. Include the apartment, suite, or unit in this property; Inkly reads the complete value automatically.
City Automatic: City Required.
State Automatic: State/Region Required. Use a two-letter code or the full state name - we convert it.
ZIP code Automatic: Postal code Required. Five digits or ZIP+4.
Country Automatic: Country Blank defaults to US. We mail US addresses only for now.

Most CRM contacts have no mailing address.

Email-first CRMs rarely carry a street address, and a card cannot be mailed without one. The action fails visibly if first name, last name, street address, city, state, or ZIP is missing, or if the address format fails our checks. A non-US country also fails. You will see the reason in the workflow's action history.

Filter at enrollment

Require First name, Last name, Street address, City, State/Region, and Postal code to be known, with Country set to US or left blank. This keeps incomplete records out; Inkly still checks the values when the action runs.

Or branch inside the workflow

Use an if/then branch on the same properties. Contacts with the required details reach the card action; everyone else takes a different path - an email, or a task to find the missing details.

We check required fields, state codes, ZIP format, and US country values. These are format checks, not postal delivery verification. An address that passes can still come back as undeliverable.

Six workflows that pay for themselves.

Deal stage becomes Closed Won

"Thanks for trusting us - excited to get started." Signed by the rep.

Send the note promptly after the signature, alongside your welcome email.

Enrollment: Contact-based workflow, enrolled when an associated deal reaches Closed Won

Renewal date is 30 days out

"Year one was good. Here is to the next." Choose a target date ahead of renewal.

The cheapest retention spend you will ever approve.

Enrollment: Date-based enrollment on a renewal date property

Meeting booked with a target account

"Looking forward to Thursday." Allow mailing time before the meeting.

Almost nobody does this. That is exactly why it works.

Enrollment: Enroll on meeting booked, filtered to a target-account list

Lifecycle stage becomes Customer

A welcome note from the founder, in the founder’s chosen hand.

The strongest moment to be memorable is the week they start paying you.

Enrollment: Enroll when lifecycle stage is Customer

NPS or survey score of 9 or 10

A thank-you - and, if you like, a referral ask.

You are rewarding exactly the people most likely to refer.

Enrollment: Enroll on the survey property, filtered to promoters

A contact goes quiet for 90 days

"Been a while - still here if you need us."

A card cuts through where the fourth follow-up email did not.

Enrollment: Enroll on last activity date older than 90 days

Before you wire it up.

Can a contact get two cards by mistake?
Not from a retry. Every workflow execution is recorded. A retry with the same card and recipient data replays the original answer; changed data for the same execution fails instead of sending another card. Re-enrolling a contact is a new execution and deliberately sends a new card; HubSpot keeps re-enrollment off unless you turn it on.
What does a card cost?
$4.95 each from your prepaid balance, with no minimum. The 50-card minimum on the order form does not apply to workflow sends.
What if we run out of credits?
The action fails with "Not enough Inkly credits" and nothing is mailed. It does not queue and it does not retry for days - a card arriving unexpectedly late is worse than a failed step you can see. Top up, then re-enroll the affected contacts.
Can we send to contacts outside the US?
Not yet. Non-US addresses fail the action with a clear message. Add Country is US to your enrollment criteria to keep them out.
Which HubSpot plan do we need?
A HubSpot subscription that includes contact-based workflows. This release is scoped to contact-based workflows, not deal- or company-based workflows.
What happens if we disconnect?
Sends stop immediately. Inkly asks HubSpot to uninstall the app and retries if HubSpot is temporarily unavailable; the encrypted cleanup credential is erased after uninstall completes. Cards already in production still get mailed.
Can we trigger from a deal or company workflow?
Not directly yet. Use a contact workflow with an associated-deal enrollment trigger - the card needs one unambiguous person and address, and deal properties do not carry those.
How do we know it worked?
The action returns the Inkly order id and scheduled mail date into the workflow, and every card shows up on your Inkly dashboard with its status. Your account balance stays in Inkly instead of being copied into HubSpot workflow history.

Wire up the first one.

Connect your portal from your dashboard, and we will set the first workflow up with you.