Skip to main content
Every subscription business eventually drowns in the same requests: “Where’s my invoice?”, “Cancel my plan”, “I need my license key again.” The Customer Portal hands all of that back to the customer. It’s a hosted, self-serve space where buyers can review what they’ve paid for, download receipts, update their billing, and unlock the benefits they’re entitled to — without ever reaching your inbox. Because Macropay is the Merchant of Record, the receipts and invoices your customers pull from the portal are tax-compliant out of the box: VAT and sales tax are calculated, collected, and remitted by us, and our name is the seller of record on their statement. You ship the product; the portal handles the paperwork.

What customers can do

Review orders & subscriptions

Full purchase history, current plan status, and renewal dates in one view.

Download tax-compliant receipts

Invoices and receipts reflect the VAT/sales tax we remit on your behalf as Merchant of Record.

Manage billing

Update payment details, switch plans, or cancel — securely, without touching card data you’d have to protect.

Claim benefits

Retrieve license keys, file downloads, Discord and GitHub access, and any custom entitlements tied to a product.

Two ways in

There are two paths to the portal: a public URL your customers sign in to, and a pre-authenticated link you mint from the API and drop into your own app.

1. The hosted sign-in URL

The portal lives at a fixed address tied to your organization:
Customers authenticate by entering the email address they used at checkout. We send a verification code, and they’re in — no password to set or remember. This is the zero-integration option: link to it from your footer, your welcome email, or a “Manage billing” menu item and you’re done. If your users are already logged into your product, sending them through an email-code flow is friction you don’t need. Create a customer session instead: it returns a one-time, pre-authenticated URL that drops the customer straight into their portal. Call customerSessions.create with the customer’s ID, then redirect to the customerPortalUrl on the response.
The returned link is short-lived and scoped to a single customer. Generate it on demand — right when the user clicks through — rather than storing it.

A note on security

The portal lets customers update payment methods, but your servers never see raw card numbers. Card details are captured and stored in our PCI DSS Level 1 compliant vault, so the sensitive surface stays off your infrastructure and out of your compliance scope.
Disputes and chargebacks initiated against a payment are also handled by us as Merchant of Record — another support burden the portal and our MoR model keep off your plate.

Where it fits

The Customer Portal is the self-serve counterpart to checkout: hosted checkout gets customers in, and the portal keeps them happy afterward. For agent- and usage-based products, the same portal surfaces metered orders and prepaid credit balances, so customers can see exactly what their usage cost — fully reconciled against the events and meters you bill on.