Skip to content
2E0JWR
PBNPorkbun for WHMCS

FAQ

Short answers to the common questions: reseller pricing, multi-year terms, premium domains, WHOIS privacy, EPP codes, idempotency and running alongside another registrar.

Does Porkbun have reseller pricing?

No. Porkbun has no reseller tier. You register at Porkbun’s normal published prices in your own account and set your own margin in WHMCS. What you get is a low cost base, not a wholesale one — which for most TLDs still lands below what a small-volume reseller account elsewhere would cost.

Can I sell multi-year registrations?

Not reliably. The API registers and renews the registry-minimum term — usually one year — per call. A three-year order registers one year and writes a note to the module log.

The pricing sync defaults to switching years 2–10 off in WHMCS so the longer terms cannot be sold. You can turn that off if you would rather handle the extra years by hand.

Can I sell premium domains?

Not through the API. Porkbun cannot register, renew or transfer premium names programmatically. Availability lookups show them as unavailable, and registration and transfer refuse them before the customer is charged. Sell them from the Porkbun dashboard and invoice manually.

Does it handle WHOIS privacy?

Porkbun provides free WHOIS privacy on TLDs that support it, enabled automatically on new registrations. There is no API toggle to change it afterwards, so WHMCS’s ID Protection switch cannot control it. The account-level default is under Account Security Settings at porkbun.com.

Can customers get their EPP code to transfer away?

Not automatically. Porkbun has no API for retrieving auth codes. Fetch it from Domain Management → the domain → Get Authorization Code in the dashboard and pass it on. It is regenerated each time you view it.

Can I toggle the registrar lock?

No. The Porkbun API does not expose it.

What happens if WHMCS retries a registration after a timeout?

Nothing is charged twice. Registrations, renewals and transfers send an idempotency key, and Porkbun replays the original response for 24 hours rather than performing the action again.

One consequence worth knowing: two deliberate renewals of the same domain on the same day collapse into a single charge. That is the safer way round to be wrong.

What stops a pricing mismatch charging the wrong amount?

Porkbun rejects any register, renew or transfer whose stated cost does not match its current price. A mismatch fails loudly rather than quietly charging something unexpected.

Do I need a test environment?

You can have one for free. A sandbox API key (pk1_sb_…) runs the whole API against an isolated environment with fake credit — same host, same endpoints, no real actions, no real charges. Signed webhooks are delivered in sandbox too, so the full flow can be tested end to end.

Does the pricing sync work if my API key is rotated?

The price list endpoint needs no authentication, so cost prices keep arriving. Everything else — registrations, renewals, DNS — stops until the new key is saved.

Will the pricing sync overwrite settings I have configured?

Only prices. ID protection, DNS management, email forwarding, display order and groups are left alone. The only exception is a TLD the sync introduces to WHMCS for the first time, where it also sets the registrar to Porkbun and marks an EPP code as required for transfers.

Will it take a TLD away from another registrar?

No. A TLD already assigned to a different registrar is skipped and reported in the output, whatever scope you choose.

What are Handshake TLDs and why are they excluded?

Around 270 of Porkbun’s ~910 extensions are Handshake blockchain names — .0z, .420247, .aotearoa. They resolve only behind a Handshake resolver, are not ICANN TLDs, and a normal visitor cannot reach a site on one. They are excluded from pricing unless you tick Include Handshake TLDs.

Can I run it alongside my existing registrar?

Yes. It is assigned per-TLD in Domain Pricing, so you can move .com across and leave everything else where it is. Existing domains stay with whichever registrar registered them.

Does it need Composer or any external libraries?

No. The module is self-contained.

Is the source available?

Yes, MIT licensed.