Frequently asked questions

These are the questions our support and sales inboxes actually receive, answered directly. If yours is not here, email support@postally.ca.

Sending 125 or more postcards with unique artwork? Follow the Personalized Mail API guide for request examples, PDF review, pricing and cancellation. You can also share its complete Markdown text with your AI assistant.

Pricing

How much does it cost to send a postcard?

Pricing is flat per piece — the same rate whether you send one postcard or ten thousand. The rate depends on the size, the destination (Canada, the USA or international) and the mail class, and it includes print, handling and postage; larger sizes cost more. Current rates for every size and destination are on the pricing page at https://postally.ca/pricing, which reads them live from our pricing system, so it always shows the current rates. Canadian sales tax is added per piece based on each recipient’s destination province; mail to addresses outside Canada is zero-rated.

Do you offer volume discounts?

No. Pricing is flat — the per-piece rate does not change with quantity. The one price step is mail class, not volume: 125 or more promotional pieces in a single mailing qualify for Canada Post Personalized Mail, which costs noticeably less per piece than Lettermail — both rates are on the pricing page at https://postally.ca/pricing. There are no tiers above that.

Why was I charged more per piece than the lowest advertised rate?

The lowest rate you may have seen is Personalized Mail, Canada Post’s promotional mail class. We require 125 pieces in a single mailing to use it. Below that — and for any non-promotional mail such as invoices, notices or personal correspondence — the piece goes as Lettermail, which costs more per piece. So a send of 10 postcards is charged 10 times the Lettermail rate for that size and destination, plus the sales tax for each recipient’s province (GST alone for Alberta, for example). Both rates are on the pricing page at https://postally.ca/pricing. The 125-piece floor is our own operating minimum, set above Canada Post’s machineable minimum to give us a safety buffer.

Is there a minimum order or a monthly fee?

No minimum order, no monthly fee and no contract. Review the current quote for any applicable campaign fee. One postcard is a valid order. API accounts pre-load credits (minimum top-up $20) and each send draws the balance down; dashboard users can pay per order by card. Test mode is free.

What we can mail

What can you mail, and is it only for marketing?

Postcards, in four sizes: 4x6, 5x7, 6x9 and 6x11. They do not have to be marketing — Lettermail carries any content, including transactional notices, appointment reminders and personal correspondence, at any quantity. Only the discounted Personalized Mail class is restricted to promotional content at 125+ pieces. Letters, self-mailers and cheques are not available yet.

Can you send Canada Post Registered Mail, or return a tracking number?

No. We do not offer Registered Mail, signature on delivery or proof of delivery, and we do not return a Canada Post tracking number. Lettermail and Personalized Mail carry no per-piece carrier tracking. If you need legally provable delivery — serving notices to tenants, for example — Postally is not the right tool and we would rather say so plainly.

Can I track a postcard after it is mailed?

Only up to the point we hand it to Canada Post. You get webhook and API status through production — created, dispatched to our print partner, printing, printed and inducted — and induction is the last step we can confirm. Because Lettermail carries no per-piece tracking, we cannot tell you when a specific postcard was delivered. If you need a read on response rather than delivery, the QR code add-on gives you a real scan signal with geographic analytics.

Why does my return address have to be Canadian?

Two reasons, and the second is the one that makes it a hard rule rather than advice. First, Canada Post requires it: their Commercial Mail Customer Guide states that if a return address is used it must be Canadian, and separately that they do not return items to addresses outside Canada. So a foreign return address does not get you a slower return — it gets you none. An undeliverable piece is disposed of or recycled rather than sent back, and nobody is told. Second, non-compliant mail is Canada Post’s to price or refuse at its discretion: published remedies run from a per-item surcharge for return-address issues, through reclassifying the item into a more expensive product, up to refusing the deposit outright. A refused deposit means your mail was printed and paid for and never went anywhere, and a reclassified one is repriced by Canada Post after the fact. We are not willing to put your mail in that position, so a non-Canadian return country is refused (400) at each of these, even on an incomplete return address: recipient create, update and import, the inline recipient and return_address shorthand on every send (alongside a recipient_id too), design previews, trigger create for every mail type, and your account Settings return address. The return address a piece would actually print is checked again before any mailpiece is created or any credits are debited, so an address stored before the rule cannot print on a new piece; a campaign is checked when you approve it, and a pay-per-job order when you check out, before the payment page opens. A piece that is rendered again later (a retry, or a re-render after an AI Proof Review hold) is checked once more and fails, with any prepaid credits refunded, if it is refused. Two options both work: use a Canadian address — your own, or your customer’s name over a "c/o" Canadian address, which Canada Post explicitly permits varying from piece to piece — or omit the return_* fields. On a postcard or letter, if you omit the return_* fields, the piece uses your account Settings return address when one is set; otherwise it mails without a return address, which Canada Post permits. A self-mailer (coming soon) never uses the Settings address: it must carry a complete Canadian return address of its own. merge_data cannot change the delivery-address or return-address blocks Postally prints. The delivery address is unaffected: we mail to the US and internationally as normal.

Where can you mail to?

Canada, the United States and international destinations. Everything is printed in Canada and inducted with Canada Post — including US-bound mail, which travels as Letter-post and is handed to USPS for final delivery. Nothing is printed or posted outside Canada. Note that Canada Post requires a Canadian return address when a return address is used, and does not return undeliverable mail to addresses outside Canada.

Sending

Can I send one-off postcards where every piece is different?

Yes. A single postcard needs no minimum order or volume commitment: POST /v1/postcards/create accepts front_pdf_url and optional back_pdf_url instead of template_id. For 1–500 postcards with unique PDF artwork in one campaign, use POST /v1/postcards/mailings, poll GET /v1/postcards/mailings/:id, review every prepared PDF and the total quote, then POST /v1/postcards/mailings/:id/submit. Use saved Canadian recipients without PHI and one shared format, finish and postal layout. A mailing of 125 or more eligible promotional pieces can use Personalized Mail (mail_class: standard), with an explicit eligibility attestation. Smaller or non-promotional mailings use first_class. Live mailings use prepaid credits; nothing is charged or released for printing until you submit. The existing POST /v1/postcards/batch still accepts up to 500 template-based items, each with its own template_id, and does not accept inline PDFs. See the complete workflow guide: https://postally.ca/guides/personalized-mail-api. Plain-text Markdown: https://api.postally.ca/v1/docs/postcard-mailings.

Can I supply my own print-ready PDFs instead of using your designer?

Yes. For one postcard, pass front_pdf_url and optional back_pdf_url on POST /v1/postcards/create instead of template_id. For 1–500 postcards with different PDFs, POST /v1/postcards/mailings prepares one campaign without templates. Poll GET /v1/postcards/mailings/:id to review the PDFs and quote, then POST /v1/postcards/mailings/:id/submit; live mailings charge prepaid credits only on submission. Use saved Canadian recipients without PHI and a shared format, finish and postal layout. Personalized Mail requires at least 125 eligible promotional pieces and an eligibility attestation. For 4x6, each PDF should be one page, 6.25 x 4.25 inches (450 x 306 pt, including 0.125" bleed per side). Keep the postal areas clear; GET /v1/specs gives their geometry for each size and layout. One invalid item prevents submission of the whole mailing without a charge. Templates remain available for shared designs and are required by the legacy POST /v1/postcards/batch endpoint. Test mode renders PDFs without charging or mailing. Artwork and rendered PDFs for test-mode pieces are deleted 30 days after the piece is created. See the complete workflow guide: https://postally.ca/guides/personalized-mail-api. Plain-text Markdown: https://api.postally.ca/v1/docs/postcard-mailings.

How do I review, retry or cancel a mailing of unique postcards?

Create it with POST /v1/postcards/mailings and a required Idempotency-Key, then save the returned mailing ID. Poll its status and review every final PDF and quote before submitting the quote token. Preparation expires 24 hours after creation; a retry does not extend that deadline. A temporary preparation failure can be retried through the mailing retry endpoint; changed artwork or an expired mailing requires a new mailing. Before submission, cancel through /v1/postcards/mailings/:id/cancel with no charge. After submission, cancel the entire campaign through POST /v1/campaigns/cancel with its campaign ID before the submission-day deadline and before production. Individual pieces cannot be cancelled. An eligible cancellation returns the charged pieces, tax and any mailing small-order fee to your prepaid balance. Scoped keys need postcards.write, mailpieces.read for previews and campaigns.write for cancellation after submission. Test mailings cannot be converted to live mailings.

Can I see what a postcard will look like before I pay for it?

Yes, and it costs nothing. Send with test mode on: the piece is composed and rendered exactly as it would print — your artwork with the address block, return address and postage indicia applied — but nothing is charged and nothing is mailed. Poll GET /v1/mailpieces/get/:id until has_pdf is true or status is failed, then open the PDF from GET /v1/mailpieces/:id/pdf. Do not wait for a status change as the success signal: a test piece stays at status "created" because it never enters the print queue. It moves to "failed" if its render fails our post-render print checks or errors — then there is no PDF, and failure_reason on the same response says why. Give the poll a timeout: if there is still neither a PDF nor a failed status after a few minutes, treat it as a render error. A test send with no template and no front_pdf_url is accepted but has no artwork, so nothing is rendered. Artwork and rendered PDFs for test-mode pieces are deleted 30 days after the piece is created. Download the PDF if you want to keep it.

When does a postcard actually get mailed?

Pieces submitted during the day are batched and sent to our print partner at 2am Vancouver time. Cancellation closes at 23:59:59 Vancouver time on the submission day, or earlier if the job has entered production. Durable postcard mailings must be cancelled as a whole campaign after submission; their individual pieces cannot be cancelled. Other sends follow the piece or campaign cancellation rules in the API reference, including the independent-piece rules for legacy API bundle wrappers. Read cancel_by and sent_to_production for the current deadline and production state.

How long until my postcard is printed and mailed?

Pieces approved during the day go to our print partner in the nightly batch at 2am Pacific. Their production turnaround is currently 1–3 business days from that handoff, after which the pieces enter the mailstream. Canada Post delivery time is on top of that and varies by destination and mail class. We do not quote a delivery date: Lettermail carries no per-piece tracking and no delivery guarantee, so any number we gave you would be an estimate we could not stand behind. If you want a read on when a piece landed, the QR code add-on gives you a real scan signal.

What paper stock and finish do you print on?

Postcards print on 100lb stock, digitally, with a choice of glossy or matte finish. There is no UV coating. You choose the finish per piece and postcards default to glossy. If your product depends on a UV-coated or specialty stock, we are not currently a fit — we would rather tell you that before you integrate than after.

Do you send physical samples?

No — we do not send physical samples or sample packs, and the API refuses a physical-sample request (sample_physical: true) with a 400 physical_sample_not_offered error rather than charging for one. There is no emailed digital sample either: sample_email: true is refused with a 400 email_sample_not_offered error. Template campaigns have a proof approval step; unique-PDF mailings require you to review the prepared PDFs and quote before submission, and a test-mode send renders a PDF of the exact card without mailing or charging it. The way to judge our print quality is to place a small real order and receive it yourself, which costs no more than any other send because there is no minimum. Address a few postcards to your own address through the dashboard campaign manager or the API and you will get exactly what your customers would get: same stock, same press, same mail path. That is a better test than a sample pack anyway, because it exercises your artwork rather than ours.

Can I pay for rush or priority production?

No — rush production is not offered. Every piece follows the same schedule: the nightly 2am Pacific batch, then 1–3 business days of production, then Canada Post. There is no premium tier that shortens it, and the API refuses a rush request (schedule_type "rush" or rush: true) with a 400 rush_not_offered error rather than charging for it. If that changes we will say so.

Do you publish a template showing the safe and restricted areas?

Yes. There is a two-page design guide PDF for every size — 4x6, 5x7, 6x9 and 6x11 — in both address layouts, showing trim, bleed, the safe zone, the address box, the 22x40mm postage indicia clear zone and the 22x40mm return address zone. Download them from the help page in your dashboard, or directly at https://api.postally.ca/v1/docs/download/postcard-design-guide-4x6 (swap the size for other formats, and add -classic for the divided-back layout). GET /v1/specs returns the same geometry as numbers if you would rather drive your renderer from data.

Integrating

How do I integrate with Postally?

Three ways. Use the REST API directly — every operation is available and the full reference is published. Use Zapier or Make.com if you would rather not write code: there are five triggers and five actions. Or use the dashboard and skip integration entirely. For the API, sign up, create a key in Settings, and build against test mode for free until you are ready to add credits.

I set up a campaign in test mode and nothing happened. What am I doing wrong?

Probably nothing — test mode is working as designed and the signal you are watching for does not exist. A test piece never enters the print queue, so it stays at status "created" and never advances to printing or dispatched. Webhooks do not fire for test pieces either. What test mode does give you is the fully composed postcard: poll GET /v1/mailpieces/get/:id until has_pdf is true or status is failed, then download it from GET /v1/mailpieces/:id/pdf to see exactly what would print. A test piece moves to "failed" when its render fails our post-render print checks or errors; failure_reason then says why. Give the poll a timeout of a few minutes rather than waiting indefinitely. Nothing is charged and nothing is mailed. When you are ready for real mail, create a key with environment "Live" in Settings, then add credits.

Do you support webhooks?

Yes. Webhooks are HMAC-signed and cover the production lifecycle of a mailpiece — created, dispatched to our print partner, printing, printed and inducted (handed to Canada Post), plus failed and cancelled — and campaign events. The campaign events follow the platform’s own dispatch steps rather than every way a campaign can change: cancelling a campaign sends no webhook, and a pay-per-job campaign dispatched by its payment sends no approval event; the API reference lists exactly when each is sent. There is no delivery event, because Canada Post gives us no per-piece tracking after induction, and no QR-scan event: read scans from the API instead. Deliveries are queued and the first attempt normally arrives within about a minute. A failing endpoint gets at most five attempts, backing off from 1 minute to 2 hours, and a delivery still failing after the fifth is abandoned. Those five attempts span at most about 2 hours 45 minutes from the event, often much less, so do not count on retries to ride out a longer outage. Treat webhooks as a notification you react to and polling as the signal you depend on. The full event list, the signature algorithm and a working verification example are in the API reference.

Account

Login says I need an API key. How do I get one without logging in?

You do not need an API key to sign in. The dashboard uses your email address and password; API keys are only for programmatic access and are created from Settings once you are signed in. If you are being asked for a key at the login screen, you are on the API documentation rather than the dashboard sign-in page.

Can I change the email address on my account?

Yes, from account settings. The change is confirmed by email and your previous address is notified, so it can be recovered if the request was not you.

Where is my data stored, and who else receives it?

In the United States. Postally is operated from British Columbia, Canada, and every piece is printed and mailed in Canada, but the platform is hosted on Amazon Web Services: the application servers and database run in Ohio (us-east-2), and files — artwork, proofs, rendered mail pieces, database backups and audit-log archives — are stored in Amazon S3 in Oregon (us-west-2). Your data and your recipients’ data are stored and processed there and are subject to US law. The data region field on an account or recipient is a label for your records; it does not change where data is stored. Recipient names and addresses also go to our print production partner in Burnaby, British Columbia, which receives each night’s print files and a mailing list, and to Canada Post, which delivers the mail. Delivery and return addresses, without name fields, go to SmartyStreets in the United States for address verification; an address line that itself contains a name, such as a c/o line, is sent as written. Other providers receive only what their part of the service needs: Stripe (your billing email, payment amounts and order descriptions; card numbers go straight to Stripe and never reach us), Anthropic (emails you send to support@ or sales@, with your earlier messages in the same thread and images of their image and PDF attachments — never images for accounts marked as handling health information, or senders at such an account’s email domain — which an AI assistant may answer, with a summary of your account and no recipient details; account-level records, such as company names and the IP addresses of failed sign-ins, and support questions, with identifiers removed where our filter recognises them, for a weekly FAQ review, when our staff run operations tools; and, only if you buy the optional AI Proof Review add-on, your proofs and mail pieces, including recipient names and addresses), Google Workspace (our support and sales mailboxes and some account email), Intuit QuickBooks Online (your account email, company name, amounts and tax) and ip-api.com (the IP address of each QR code scan, sent without encryption, to look up an approximate location). Stripe, Anthropic, Google and Intuit process it in the United States and other countries where they operate; ip-api.com does not state where it is located. The full list is in the privacy policy at https://postally.ca/privacy.

How is my data protected, and how long do you keep it?

Recipient names, company names, job titles, address fields, email addresses and phone numbers are encrypted field by field with AES-256-GCM before they are stored, using encryption keys managed by our application rather than a separate key-management service; recipients marked as PHI use a separate key. Other data is not field-encrypted, including your account email, company name and Settings return address, and recipient countries, the province used for tax billing, tags, metadata and merge variables, so keep personal information out of tags, metadata and merge variables. Files, and the database backups we keep in Amazon S3, are stored with Amazon S3 server-side encryption (AES-256), and our website and API are served over HTTPS using TLS 1.2 or later. The audit log is append-only and is archived daily to write-once (Object Lock) storage. Rendered mail-piece PDFs, and the artwork you send with an individual live piece, are kept until the recipient is erased or your account is closed; they are not deleted on a schedule. Templates and designs you save are not deleted on a schedule either, and closing your account does not delete the template and design files you uploaded. Artwork and rendered PDFs for test-mode pieces are deleted 30 days after the piece is created. Database backups are kept in Amazon S3 for 30 days, and the most recent 3 days are also kept on our application server. POST /v1/gdpr/erasure deletes a recipient’s stored details and the rendered mail-piece PDFs, per-piece artwork and QR scan records made for them. It does not reach, among other copies listed in the privacy policy: copies in database backups until those expire, print files already sent to our print partner, the merge variables, metadata and tags stored with past mail pieces (including our record of why a piece failed its print checks, which can quote the address), API responses saved for Idempotency-Key retries, the audit log, a one-way fingerprint kept if the recipient was permanently suppressed, or a campaign proof, its AI review findings and a proof change request that used the recipient as the proof’s sample when the campaign never mailed them. Deleting a recipient only hides it, and a deleted recipient can no longer be erased through the API, so erase before you delete; a deleted recipient’s data is erased only when your account is erased. To close your account and have it erased, email enrico@postally.ca. Postally is not HIPAA-certified or SOC 2-audited. Details are in the privacy policy at https://postally.ca/privacy.

Does the dashboard have a dark mode?

Yes. The dashboard follows your operating system’s light or dark setting, and you can override it from the theme control in the dashboard.