By default, every PayBridgeNP checkout session opens atDocumentation Index
Fetch the complete documentation index at: https://docs.paybridgenp.com/llms.txt
Use this file to discover all available pages before exploring further.
https://checkout.paybridgenp.com/checkout/cs_.... With a custom domain, you can route those URLs through a subdomain you control - https://pay.yourstore.com/checkout/cs_... - so your customers never leave your brand.
Custom domains are a Premium feature. Free merchants stay on
checkout.paybridgenp.com.What changes, what stays
Changes: the host portion of every checkout URL the API returns - inPOST /v1/checkout responses, payment-link emails, payment-button auto-config, dashboard previews. Provider redirects after payment land back on your custom domain.
Stays the same:
- The hosted-checkout HTML, themes, PB ID flow, SMS receipts - identical experience to canonical.
- Provider callback URLs (eSewa, Khalti, Fonepay return URLs) stay on
checkout.paybridgenp.com. Each provider only knows one return URL per merchant; we redirect the customer back to your custom domain after the provider hop, so the visible URL switch is brief (about a second). - Your dashboard, API base URL, payment-link short URLs (
/pay/lnk_...), and embed scripts stay on PayBridgeNP. Custom domains are checkout-only.
What you can use
- Any subdomain you own (
pay.yourstore.com,checkout.yourstore.com.np,pay.staging.yourstore.com). - One hostname per project. Multi-brand merchants can run multiple PayBridgeNP projects, each with its own domain -
pay.brandA.comon project A,pay.brandB.comon project B. Sessions created with project A’s API key emitpay.brandA.com/checkout/cs_...; project B’s emitpay.brandB.com/.... Sibling projects can’t borrow each other’s domains (a session URL hand-crafted onto the wrong project’s host returns 404).
What you can’t use
- Apex domains (
yourstore.comdirectly). Use a subdomain. paybridgenp.comand any of its subdomains.- An IP address.
Setting it up
Add the domain in the dashboard
Go to Settings → Custom domain in your dashboard. The page lists all your projects - click Add domain on the project you want to attach a domain to. Type your subdomain (
pay.yourstore.com) and confirm.Add two DNS records at your DNS provider
The dashboard shows two records:
The CNAME routes checkout traffic to PayBridgeNP. The TXT proves you own the domain.
| Type | Name | Value |
|---|---|---|
CNAME | pay.yourstore.com | cname.paybridgenp.com |
TXT | _paybridge-verify.pay.yourstore.com | pbv_xxxxxxxxxxxxxxxxxxxxxxxx |
cname.paybridgenp.com is a dedicated routing hostname, separate from the public checkout URL.Click Verify DNS
PayBridgeNP looks up the TXT record. On match, the status pill flips to “Issuing certificate” while a TLS certificate is provisioned for your hostname.
DNS changes can take a few minutes to propagate after you save them at your DNS provider. If verification fails, give it 2-3 minutes and click Verify DNS again.
DNS provider notes
Most DNS providers (Cloudflare, Route 53, Google Cloud DNS, GoDaddy, Namecheap) accept the records exactly as shown. A few quirks worth knowing:- Cloudflare proxy: If your DNS is on Cloudflare, set the CNAME to DNS only (grey cloud). The orange-cloud proxy will block PayBridgeNP from reaching your hostname.
- TXT record name: Some providers want just the prefix (
_paybridge-verify.pay) instead of the full FQDN (_paybridge-verify.pay.yourstore.com). Both are correct - use whichever your provider expects. - CNAME on apex: Some providers don’t allow CNAME records at the apex of a zone. That’s fine - we don’t support apex domains anyway. Always use a subdomain.
Lifecycle
Your domain moves through a small state machine:| Status | Meaning |
|---|---|
| Awaiting DNS | The TXT record hasn’t been verified yet. Click Verify DNS after you’ve added it. |
| Issuing certificate | TXT verified; a TLS certificate is being provisioned. Usually 1-5 minutes. |
| Active | Live. New checkout URLs use your custom domain. |
| Error | Something failed (cert issuance blocked, hostname revoked upstream). The dashboard shows the underlying error. Remove the domain to start over. |
Removing a custom domain
Click Remove in the dashboard. New checkout sessions immediately switch back tocheckout.paybridgenp.com. Sessions already issued on the custom domain keep working until they expire (about 30 minutes), then the URL stops resolving.
What about my existing CNAME?
Once your domain is active, leave the CNAME in place forever. Removing it stops traffic the next time DNS caches clear. The TXT record can be removed after activation (we only check it during verification), but most merchants leave both in place.Plan changes
Custom domains are bundled with Premium. If you downgrade to Free:- Your custom domain is removed from PayBridgeNP within seconds (eager revoke).
- New checkout URLs go back to
checkout.paybridgenp.com. - The custom hostname is removed, so
https://pay.yourstore.comstops resolving shortly after.
FAQ
Can I use my apex domain (yourstore.com) directly?
Can I use my apex domain (yourstore.com) directly?
Not in v1. We require a subdomain (
pay.yourstore.com, checkout.yourstore.com).Will my customers ever see checkout.paybridgenp.com?
Will my customers ever see checkout.paybridgenp.com?
Briefly - about one second during the provider redirect. After the provider (eSewa, Khalti, Fonepay) processes the payment, they redirect to
checkout.paybridgenp.com/v1/callbacks/..., and our API immediately redirects the customer back to https://pay.yourstore.com/checkout/cs_xxx/.... The flash is unavoidable while the same merchant has one provider return URL on file.Does this work with payment links and payment buttons?
Does this work with payment links and payment buttons?
What about the dashboard or API?
What about the dashboard or API?
Custom domains are checkout-only in v1. Your dashboard stays on
dashboard.paybridgenp.com, the API on api.paybridgenp.com. Email “from” addresses are handled separately - see email branding for those settings.What if my customer loads a checkout that's already paid?
What if my customer loads a checkout that's already paid?
The success page renders on your custom domain too. Same for failed, cancelled, and expired sessions. Provider callbacks always come back to canonical, but the customer-facing render is on your domain throughout.
Is there a per-domain fee?
Is there a per-domain fee?
No. Custom domains are included in Premium.
My DNS is correct but verification keeps failing
My DNS is correct but verification keeps failing
Check three things:
- The TXT record value matches exactly - copy it from the dashboard, no extra quotes.
- If you’re on Cloudflare, the CNAME and TXT records are set to DNS only (grey cloud), not proxied.
- Give it 2-3 minutes. DNS changes can take time to propagate, especially for first-time records.
What traffic uses my custom domain?
What traffic uses my custom domain?
Hosted checkout pages, success pages, failed pages, cancelled pages, and expired-session pages render on your custom domain. Your dashboard and API traffic stay on PayBridgeNP domains.
Related
- Payment Buttons - embeddable checkout widgets that pick up your custom domain automatically.
- Payment Links - share a one-off pay URL; the destination renders on your custom domain.
- PayBridgeNP ID - one-tap autofill for returning buyers, works seamlessly across canonical and custom-domain checkouts.