Invoicing
Generate every invoice your billing system emits — from a templated HTML page to a PDF attached to the customer's receipt.
SelectPdf is a battle-tested HTML to PDF toolkit shipping in two shapes: a .NET Library you embed — a perpetual HTML to PDF converter for .NET Framework, .NET Core and .NET 5–10 (free trial, plus a Community Edition) — and an HTML to PDF API you call from any language. Pick the one that matches your runtime — your invoices look the same either way.
The PDF library for .NET. Runs in-process, no per-page fees.
One endpoint. Any language. Free trial, no credit card.
Same engine. Same output. Same options. The .NET Library and the Online API are bit-for-bit equivalent — pick whichever matches your runtime.
using SelectPdf;
var converter = new HtmlToPdf();
converter.Options.PdfPageSize = PdfPageSize.A4;
converter.Options.MarginLeft = 20;
PdfDocument doc = converter.ConvertUrl(
"https://yourapp.com/invoice/4821"
);
doc.Save("invoice-4821.pdf");
doc.Close();
curl -X POST https://selectpdf.com/api2/convert/ \ -d "key=$SELECTPDF_KEY" \ -d "url=https://yourapp.com/invoice/4821" \ -d "page_size=A4" \ --output invoice-4821.pdf
const selectpdf = require("selectpdf");
const client = new selectpdf.HtmlToPdfClient(
process.env.SELECTPDF_KEY
);
client.setPageSize("A4");
client.convertUrlToFile(
"https://yourapp.com/invoice/4821",
"invoice-4821.pdf",
function (err, fileName) {
if (err) return console.error(err);
console.log("Saved", fileName);
}
);
import selectpdf
client = selectpdf.HtmlToPdfClient("YOUR_API_KEY")
client.setPageSize(selectpdf.PageSize.A4)
client.convertUrlToFile(
"https://yourapp.com/invoice/4821",
"invoice-4821.pdf",
)
print("Pages:", client.getNumberOfPages())
<?php
require("SelectPdf.Api.php");
$client = new SelectPdf\Api\HtmlToPdfClient("YOUR_API_KEY");
$client->setPageSize(SelectPdf\Api\PageSize::A4);
$client->convertUrlToFile(
"https://yourapp.com/invoice/4821",
"invoice-4821.pdf"
);
require "selectpdf"
client = SelectPdf::HtmlToPdfClient.new("YOUR_API_KEY")
client.page_size = SelectPdf::PageSize::A4
client.convert_url_to_file(
"https://yourapp.com/invoice/4821",
"invoice-4821.pdf"
)
Real conversion through our watermarked demo — no signup, no key. We render the page, return a real PDF, and tell you exactly how long it took.
A short list of the things developers reach for SelectPdf to build. Same engine handles all of them — pick the runtime, write the template, ship.
Generate every invoice your billing system emits — from a templated HTML page to a PDF attached to the customer's receipt.
Convert dashboards, charts and tables into archive-ready PDFs. Keep page breaks where they belong, headers on every page.
Render legal documents from form data, then sign them. The .NET Library handles PDF/A and digital signatures in-process.
Boarding passes, event tickets, gift cards. Embed barcodes and QR codes natively. Render at 300dpi for print, smaller for mobile.
Starting today (May 27, 2026), every new SelectPdf API key is created with Chromium set as its default rendering engine. Existing keys are not affected — they keep behavi…
Read →We’ve just rolled out a wave of improvements to the SelectPdf HTML to PDF Online REST API — a faster modern rendering engine, a no-signup demo endpoint, smarter response…
Read →A practical guide for developers and businesses that need affordable HTML to PDF conversion. Converting HTML to PDF is a common requirement for modern websites and busine…
Read →