NNotion

Receipts as rows,
in your Notion.

Drop receipts in, watch them land as rows in your Notion database. Items as a related sub-database. Confidence per field. Pair with the delete-on-confirm retention mode and your Notion becomes the system of record.

Why this integration

The parts that make
Notion feel native.

JSON matches the schema

Standard receipt JSON arrives via webhook. Map fields straight to Notion properties: merchant, total, currency, payment, summary, confidence.

Items as a sub-database

The items array maps to a related Notion database. One sub-row per line item. Filter, group, and aggregate the way Notion handles relations.

Webhook-gated retention

Set retention to "delete after webhook confirms". Once your Notion integration acknowledges receipt, we delete the original on our side. Notion holds the system of record.

How it connects

  1. 01
    Receipt arrives
    Dashboard or API
  2. 02
    Webhook fires
    POST to your handler
  3. 03
    Create Notion page
    Via Notion API
  4. 04
    Confirm receipt
    200 OK acks delivery
notion.tsTS
// Your webhook handler
import { Client } from "@notionhq/client";
const notion = new Client({ auth: process.env.NOTION_TOKEN });

export async function POST(req) {
  if (!verifyReceiptSignature(req)) return new Response("bad sig", { status: 401 });
  const { receipt } = await req.json();

  await notion.pages.create({
    parent: { database_id: process.env.RECEIPTS_DB! },
    properties: {
      Merchant: { title: [{ text: { content: receipt.merchant.name } }] },
      Total:    { number: receipt.total },
      Currency: { rich_text: [{ text: { content: receipt.currency } }] },
      Status:   { select: { name: receipt.status } },
    },
  });

  return new Response("ok");
}

FAQ

About the
Notion integration.

Do I need a Notion integration token?
Yes. Create one in Notion settings, share your target database with it, and store the token in your webhook handler. We never see your Notion credentials.
Can I push to multiple databases?
Yes. Your webhook handler decides where each receipt goes. Branch on category, merchant, or workspace to route to the right database.
What about images and PDFs in Notion?
Optional. You can attach the original file as a Notion file property if you want it embedded. We surface a download URL in the webhook payload for that.
Is there a no-code Notion integration?
Not yet — current path is webhook + your code (or a Zapier zap). A native no-code Notion connector is on the roadmap.

Drop the receipt in.
Land it in Notion.