You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs: surface both sandbox and production product codes in configuration tables
Previously the SSL/TLS table in docsource/configuration.md (and the mirrored
table in README.md) only listed sandbox codes (842–851), with production codes
mentioned only incidentally in development.md's draft-order coverage matrix.
Anyone reading the canonical config doc would have no idea what code to plug
in for a production deployment.
Changes:
- SSL/TLS table now has separate "Sandbox Code" and "Production Code"
columns. Production codes (838–847) come from the live draft-order
coverage in development.md against the India production instance.
- Private PKI table similarly split — Sandbox `149` next to Production
`100` / `104` so operators can map across environments at a glance.
- S/MIME and Document Signing collapsed into a single "Sandbox / Production"
column with an explicit note that those codes match in the snapshots we
have but are not guaranteed by CERTInext to stay aligned.
- ProductCode template-parameter example updated to show both values:
"DV SSL: 842 (sandbox) or 838 (production)" with a back-link to the
Product Codes section.
- Added a coincidence note: SSL/TLS codes are offset by 4 between US sandbox
and Production India in our snapshots, but that is not a contract — eMudhra
controls per-account mapping. The instruction remains "always confirm via
GetProductDetails".
README.md was kept in sync (it was previously hand-mirrored from docsource).
Copy file name to clipboardExpand all lines: README.md
+29-22Lines changed: 29 additions & 22 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -158,7 +158,7 @@ CERTInext operates three separate environments. Use the sandbox environment for
158
158
159
159
| Parameter | Required / Optional | Type | Description | Example / Default |
160
160
|---|---|---|---|---|
161
-
| `ProductCode` | Optional | String | Override the numeric CERTInext product code for this template. Product codes are provisioned per account by eMudhra — obtain the correct code from `GetProductDetails` for your account. Set this explicitly when targeting the sandbox environment or when the connector `DefaultProductCode` should not apply to this template. | `842` (sandbox DV SSL, account-specific) |
161
+
| `ProductCode` | Optional | String | Override the numeric CERTInext product code for this template. Product codes are provisioned per account by eMudhra — obtain the correct code from `GetProductDetails` for your account. Set this explicitly when targeting the sandbox environment or when the connector `DefaultProductCode` should not apply to this template. See the [Product Codes](#product-codes) section for the sandbox/production lookup table. | DV SSL: `842` (sandbox) or `838` (production) |
162
162
| `ProfileId` | Deprecated | String | Legacy alias for `ProductCode`. Accepted for backward compatibility — if `ProductCode` is not set, `ProfileId` is used in its place. New templates should use `ProductCode`. | `838` |
163
163
| `ValidityYears` | Optional | Number | Subscription validity period in years: `1`, `2`, or `3`. Default: `1`. CERTInext certificates are issued within a subscription term at up to 390 days per certificate, with free renewals within the term. | `1` |
164
164
| `ValidityDays` | Deprecated | Number | Legacy validity field. If set, the value is divided by 365 and rounded up to derive a year count. New templates should use `ValidityYears`. | `365` |
@@ -294,36 +294,43 @@ To retrieve the exact codes available to your account, call the `GetProductDetai
294
294
295
295
### SSL/TLS
296
296
297
-
The product codes in this table were observed on the US sandbox account (`accountNumber=9374221333`) in April 2026. Your account will likely have different codes. Always call `GetProductDetails` to confirm the codes provisioned for your account.
297
+
The product codes in this table were observed on:
298
+
- the US sandbox account (`accountNumber=9374221333`, April 2026; reconfirmed on the replacement sandbox `4873378853` in May 2026 — same SSL/TLS codes)
299
+
- the Production India instance (`api.certinext.io`) via the live draft-order coverage matrix in `docsource/development.md`
298
300
299
-
| Product | Sandbox Code (account 9374221333, April 2026) | Required fields beyond base (`domainName`, `csr`, `requestorInformation`, `subscriptionDetails`, `agreementDetails`) |
300
-
|---|---|---|
301
-
| DV (Domain Validated) | `842` | None. `domainName` is derived from the CSR CN if omitted on the template. |
302
-
| DV Wildcard | `843` | CSR CN must use wildcard format (e.g. `*.example.com`). `domainName` in the order must also use the wildcard format. |
303
-
| DV UCC (Multi-domain) | `844` | `certificateInformation.additionalDomains` — array of additional SAN values beyond the primary `domainName`. |
304
-
| DV Wildcard UCC (Multi-domain Wildcard) | `845` | Combines wildcard and multi-domain requirements. CSR CN and `domainName` must use wildcard format; `certificateInformation.additionalDomains` required. |
305
-
| OV (Organization Validated) | `846` | `organizationDetails.organizationNumber` (your CERTInext org ID); `certificateInformation.locality`, `postalCode`, and full organization address fields (`streetAddress`, `city`, `state`, `country`). |
306
-
| OV Wildcard | `847` | Same as OV (846). CSR CN and `domainName` must use wildcard format. |
307
-
| OV UCC (Multi-domain) | `848` | Same as OV (846) plus `certificateInformation.additionalDomains`. |
308
-
| OV Wildcard UCC (Multi-domain Wildcard) | `849` | Combines OV, wildcard, and multi-domain requirements. Same as OV (846) plus wildcard CN/domainName and `certificateInformation.additionalDomains`. |
309
-
| EV (Extended Validation) | `850` | All OV fields plus: `contractSignerInfo` object (`name`, `email`, `isdCode`, `mobileNumber`, `designation`, `employeeID`); `certificateApproverInfo` object (same fields); `certificateInformation.companyRegistrationNumber`; `streetAddress2` must be non-empty. |
310
-
| EV UCC (Multi-domain EV) | `851` | Same as EV (850) plus `certificateInformation.additionalDomains`. |
301
+
**Your account may still have different codes.** Always call `GetProductDetails` against your target environment before going live.
302
+
303
+
| Product | Sandbox Code | Production Code | Required fields beyond base (`domainName`, `csr`, `requestorInformation`, `subscriptionDetails`, `agreementDetails`) |
304
+
|---|---|---|---|
305
+
| DV (Domain Validated) | `842` | `838` | None. `domainName` is derived from the CSR CN if omitted on the template. |
306
+
| DV Wildcard | `843` | `839` | CSR CN must use wildcard format (e.g. `*.example.com`). `domainName` in the order must also use the wildcard format. |
307
+
| DV UCC (Multi-domain) | `844` | `840` | `certificateInformation.additionalDomains` — array of additional SAN values beyond the primary `domainName`. |
308
+
| DV Wildcard UCC (Multi-domain Wildcard) | `845` | `841` | Combines wildcard and multi-domain requirements. CSR CN and `domainName` must use wildcard format; `certificateInformation.additionalDomains` required. |
309
+
| OV (Organization Validated) | `846` | `842` | `organizationDetails.organizationNumber` (your CERTInext org ID); `certificateInformation.locality`, `postalCode`, and full organization address fields (`streetAddress`, `city`, `state`, `country`). |
310
+
| OV Wildcard | `847` | `843` | Same as OV. CSR CN and `domainName` must use wildcard format. |
311
+
| OV UCC (Multi-domain) | `848` | `844` | Same as OV plus `certificateInformation.additionalDomains`. |
312
+
| OV Wildcard UCC (Multi-domain Wildcard) | `849` | `845` | Combines OV, wildcard, and multi-domain requirements. Same as OV plus wildcard CN/domainName and `certificateInformation.additionalDomains`. |
313
+
| EV (Extended Validation) | `850` | `846` | All OV fields plus: `contractSignerInfo` object (`name`, `email`, `isdCode`, `mobileNumber`, `designation`, `employeeID`); `certificateApproverInfo` object (same fields); `certificateInformation.companyRegistrationNumber`; `streetAddress2` must be non-empty. |
314
+
| EV UCC (Multi-domain EV) | `851` | `847` | Same as EV plus `certificateInformation.additionalDomains`. |
315
+
316
+
> Note: SSL/TLS codes appear to be offset by 4 between the US sandbox and Production India in the snapshots we've observed — but treat that as a coincidence, not a guarantee. eMudhra controls the per-account mapping and may use different numeric codes for any new account. Always confirm via `GetProductDetails`.
311
317
312
318
> Note: The CERTInext portal may display additional short-validity products (e.g. **DV SSL Certificate 1 Month**, **DV SSL Certificate Wildcard 1 Month**) that do not appear in the `GetProductDetails` API response and have no published product code. These products are not accessible via the API and are therefore **not supported by this plugin**. Contact eMudhra to determine whether API ordering is available for these products on your account.
313
319
314
320
### Private PKI
315
321
316
-
| Product | Example Code | Availability |
317
-
|---|---|---|
318
-
| Sandbox emSign Intranet SSL 1 year | `149` (sandbox account 9374221333, April 2026) | Requires special provisioning by eMudhra. Not available on standard production accounts. |
319
-
| emSign Intranet SSL 1 year (production) | `100` | Requires special provisioning by eMudhra. Not orderable on standard accounts. |
320
-
| IGTF Host 1 year | `104` | Requires special provisioning by eMudhra. Not orderable on standard accounts. |
| emSign Intranet SSL 1 year |`149`|`100`| Requires special provisioning by eMudhra. Not orderable on standard accounts. |
325
+
| IGTF Host 1 year | (not observed) |`104`| Requires special provisioning by eMudhra. Not orderable on standard accounts. |
321
326
322
-
> Note: Private PKI products are not available for ordering on standard CERTInext accounts. Attempting to place an order will return EMS-1162 (product not provisioned). The sandbox Private PKI code (`149` on account 9374221333) also returns EMS-1162 because the product is not provisioned even though it appears in the `GetProductDetails` list. Contact eMudhra to have these products enabled on your account.
327
+
> Note: Private PKI products are not available forordering on standard CERTInext accounts. Attempting to place an order will return EMS-1162 (product not provisioned). The sandbox Private PKI code (`149`) also returns EMS-1162 on standard sandbox accounts even though it appearsin the `GetProductDetails` list. Contact eMudhra to have these products enabled on your account.
323
328
324
329
### S/MIME and Document Signing
325
330
326
-
| Product | Product Code | Availability |
331
+
The same numeric product codes have been observed forS/MIME and document-signing products on both the US sandbox and Production Indiain the snapshots we have. **Treat that as an empirical observation, not a contract** — eMudhra is free to assign different codes per account. Always confirm via `GetProductDetails`.
332
+
333
+
| Product | Sandbox / Production Code | Availability |
327
334
|---|---|---|
328
335
| S/MIME |`894`| Requires a separate S/MIME entitlement on the account. Not available on standard SSL accounts. |
329
336
| Natural Person Doc Signer (tier 1) |`825`| Requires document signing entitlement. Not orderable on standard accounts. |
@@ -340,7 +347,7 @@ The product codes in this table were observed on the US sandbox account (`accoun
340
347
341
348
To retrieve the full list of product codes available to your account, call the `GetProductDetails` endpoint against your target environment. The sandbox and production APIs each return their own set of codes.
342
349
343
-
> Note: SSL/TLS products (codes 838–846) are supported on standard accounts. Private PKI (100, 104), S/MIME (894), and document-signing products (819–827) require special provisioning by eMudhra and are not available on standard SSL/TLS accounts — ordering them returns EMS-1162.
350
+
> Note: SSL/TLS products are supported on standard accounts (Production codes `838`–`847`, Sandbox codes `842`–`851`in the snapshots we've seen). Private PKI (Production `100`, `104` / Sandbox `149`), S/MIME (`894`), and document-signing products (`819`–`827`) require special provisioning by eMudhra and are not available on standard SSL/TLS accounts — ordering them returns EMS-1162.
0 commit comments