How Razorpay Curlec’s SSL certificates are managed, what your integration must support, and what to do if your systems pin or whitelist certificates.
Available in🇮🇳 India🇲🇾 Malaysia🇸🇬 Singapore🇺🇸 United States
Your integration connects to Razorpay Curlec over HTTPS. Razorpay Curlec’s SSL certificate proves that you are connected to Razorpay Curlec’s services and keeps the traffic private. This page explains what your integration must support, why you should not pin our certificate, and what to do if your security policy requires pinning.
Upcoming SSL certificate renewal: October 05, 2026, 10:00 PM ISTIf your integration pins or whitelists Razorpay Curlec’s certificate, review the guidance on this page and complete the required changes before this date.
Before proceeding, determine if your application uses:
SSL certificate pinning
Certificate whitelisting
Custom certificate trust stores
No action is required if your systems have never been configured to use, trust, or manually install a specific Razorpay Curlec SSL certificate, including through SSL pinning or certificate whitelisting. This includes any configurations previously made by your team. Your systems will automatically trust the renewed certificate.
No Action Needed for Third-Party Platform UsersIf you use a third-party platform such as WooCommerce, Magento, CS Cart, OpenCart, Shopify, WHMCS, Arastta, Prestashop, WordPress, Easy Digital Downloads, WIX, BigCommerce or Drupal Commerce, you are not required to take any action. The platform handles SSL management. Read FAQ #3 and FAQ #4 for more details.The same applies if you use Razorpay Curlec-hosted products such as Payment Links, Payment Pages, Payment Buttons or Invoices.
Razorpay Curlec does not recommend certificate pinning.If you use certificate pinning, your system only accepts the certificate that you pinned for Razorpay Curlec. When we renew our SSL certificate and present a different one during the TLS handshake, your application refuses to connect to Razorpay Curlec, even though the new certificate is issued by a trusted certificate authority (CA).Why Razorpay Curlec does not support certificate pinning of any kind:
Outside of Razorpay Curlec’s control: your system handles certificate pinning. We do not know whether you pin, or which certificates you pin.
Risk of failing connections: when we renew our certificate and your system still expects the previous one, your connection to Razorpay Curlec breaks. Our certificate is now renewed every few months.
Watch Out!If you have pinned or whitelisted a Razorpay Curlec certificate, remove it and rely on standard SSL validation. Pinning adds no practical protection for your integration and can stop your payments at every renewal.
If your security policy requires certificate pinning, do the following to reduce the risk of broken connections.Only pin the root certificates: instead of pinning the leaf certificate or the entire certificate chain, you must pin all of the following root certificates. Razorpay Curlec no longer publishes per-certificate files (X*.pem):
Fingerprints and serial numbers (for verification)
Root certificate
Details
DigiCert Global Root G2
Valid until: 15/Jan/2038 Serial #: 03:3A:F1:E6:A7:11:A9:A0:BB:28:64:B1:1D:09:FA:E5 SHA-1: DF:3C:24:F9:BF:D6:66:76:1B:26:80:73:FE:06:D1:CC:8D:4F:82:A4 SHA-256: CB:3C:CB:B7:60:31:E5:E0:13:8F:8D:D3:9A:23:F9:DE:47:FF:C3:5E:43:C1:14:4C:EA:27:D4:6A:5A:B1:CB:5F
DigiCert Global Root CA
Valid until: 10/Nov/2031 Serial #: 08:3B:E0:56:90:42:46:B1:A1:75:6A:C9:59:91:C7:4A SHA-1: A8:98:5D:3A:65:E5:E5:C4:B2:D7:D6:6D:40:C6:DD:2F:B1:9C:54:36 SHA-256: 43:48:A0:E9:44:4C:78:CB:26:5E:05:8D:5E:89:44:B4:D8:4F:96:62:BD:26:DB:25:7F:89:34:A4:43:C7:01:61
DigiCert Global Root G3
Valid until: 15/Jan/2038 Serial #: 05:55:56:BC:F2:5E:A4:35:35:C3:A4:0F:D5:AB:45:72 SHA-1: 7E:04:DE:89:6A:3E:66:6D:00:E6:87:D3:3F:FA:D9:3B:E8:3D:34:9E SHA-256: 31:AD:66:48:F8:10:41:38:C7:38:F3:9E:A4:32:01:33:39:3E:3A:18:CC:02:29:6E:F9:7C:2A:C9:EF:67:31:D0
DigiCert TLS RSA4096 Root G5
Valid until: 14/Jan/2046 Serial #: 08:F9:B4:78:A8:FA:7E:DA:6A:33:37:89:DE:7C:CF:8A SHA-1: A7:88:49:DC:5D:7C:75:8C:8C:DE:39:98:56:B3:AA:D0:B2:A5:71:35 SHA-256: 37:1A:00:DC:05:33:B3:72:1A:7E:EB:40:E8:41:9E:70:79:9D:2B:0A:0F:2C:1D:80:69:31:65:F7:CE:C4:AD:75
DigiCert TLS ECC P384 Root G5
Valid until: 14/Jan/2046 Serial #: 09:E0:93:65:AC:F7:D9:C8:B9:3E:1C:0B:04:2A:2E:F3 SHA-1: 17:F3:DE:5E:9F:0F:19:E9:8E:F6:1F:32:26:6E:20:C4:07:AE:30:EE SHA-256: 01:8E:13:F0:77:25:32:CF:80:9B:D1:B1:72:81:86:72:83:FC:48:C6:E1:3B:E9:C6:98:12:85:4A:49:0C:1B:05
Amazon Root CA 1
Valid until: 17/Jan/2038 Serial #: 06:6C:9F:CF:99:BF:8C:0A:39:E2:F0:78:8A:43:E6:96:36:5B:CA SHA-1: 8D:A7:F9:65:EC:5E:FC:37:91:0F:1C:6E:59:FD:C1:CC:6A:6E:DE:16 SHA-256: 8E:CD:E6:88:4F:3D:87:B1:12:5B:A3:1A:C3:FC:B1:3D:70:16:DE:7F:57:CC:90:4F:E1:CB:97:C6:AE:98:19:6E
Amazon Root CA 2
Valid until: 26/May/2040 Serial #: 06:6C:9F:D2:96:35:86:9F:0A:0F:E5:86:78:F8:5B:26:BB:8A:37 SHA-1: 5A:8C:EF:45:D7:A6:98:59:76:7A:8C:8B:44:96:B5:78:CF:47:4B:1A SHA-256: 1B:A5:B2:AA:8C:65:40:1A:82:96:01:18:F8:0B:EC:4F:62:30:4D:83:CE:C4:71:3A:19:C3:9C:01:1E:A4:6D:B4
Amazon Root CA 3
Valid until: 26/May/2040 Serial #: 06:6C:9F:D5:74:97:36:66:3F:3B:0B:9A:D9:E8:9E:76:03:F2:4A SHA-1: 0D:44:DD:8C:3C:8C:1A:1A:58:75:64:81:E9:0F:2E:2A:FF:B3:D2:6E SHA-256: 18:CE:6C:FE:7B:F1:4E:60:B2:E3:47:B8:DF:E8:68:CB:31:D0:2E:BB:3A:DA:27:15:69:F5:03:43:B4:6D:B3:A4
Amazon Root CA 4
Valid until: 26/May/2040 Serial #: 06:6C:9F:D7:C1:BB:10:4C:29:43:E5:71:7B:7B:2C:C8:1A:C1:0E SHA-1: F6:10:84:07:D6:F8:BB:67:98:0C:C2:E2:44:C2:EB:AE:1C:EF:63:BE SHA-256: E3:5D:28:41:9E:D0:20:25:CF:A6:90:38:CD:62:39:62:45:8D:A5:C6:95:FB:DE:A3:C2:2B:0B:FB:25:89:70:92
Starfield Services Root CA - G2
Valid until: 31/Dec/2037 Serial #: 00 SHA-1: 92:5A:8F:8D:2C:6D:04:E0:66:5F:59:6A:FF:22:D8:63:E8:25:6F:3F SHA-256: 56:8D:69:05:A2:C8:87:08:A4:B3:02:51:90:ED:CF:ED:B1:97:4A:60:6A:13:C6:E5:29:0F:CB:2A:E6:3E:DA:B5
Download the root certificates only from the CAs’ official repositories: DigiCert · Amazon Trust Services. Verify each download against the fingerprints above:
Keep track of root certificate updates: even if you pin all the root certificates, Razorpay Curlec may add a new root certificate to this list in future.
Regular business practice: we publish the new root on this page at least 30 days before our servers start using it.
Emergency cases: the notice period can be shorter before we make the change.
It is your responsibility to ensure your applications (for example, web or mobile) can handle any certificate changes.
Never pin the leaf certificate, the intermediate certificate, or the certificate chainRazorpay Curlec updates these certificates routinely and without notice. Any integration that pins them will break at the next rotation.
If you have a certificate trust store in your server environment that is not configured to update automatically, you must ensure that it contains all the root certificates listed above. Refer to this manual to learn how to update trust stores in different environments.
I have received an email about a certificate change, or I am a new Razorpay Curlec user. Do I need to take action?
Not unless you have manually pinned or installed a Razorpay Curlec certificate in your applications or servers. Otherwise your systems validate our certificate through the standard trust store of your operating system or platform, and the change is invisible to you. If you have pinned one, remove it or pin all the root certificates listed on this page.
I previously downloaded the X9 or X10 certificate files. What should I do now?
Remove the pinned or installed Razorpay Curlec certificate and let your system use standard SSL validation. If your security policy requires pinning, replace the old files with all the root certificates listed on this page. Per-certificate files (X*.pem and chain files) are no longer published.
How do I check whether I am using a third-party platform?
Third-party platforms are services such as WooCommerce, Magento, CS Cart, OpenCart, Shopify, WHMCS, Arastta, Prestashop, WordPress, Easy Digital Downloads, WIX, BigCommerce and Drupal Commerce. If you are unsure, check whether you use an admin panel provided by one of these platforms to add stock, offers or perform other tasks. If yes, you are using a third-party platform.
If I am using a third-party platform, do I need to take action?
No. The platform manages the connection to Razorpay Curlec and handles SSL validation for you. See the list of platforms in the box near the top of this page.
What are leaf, intermediate and root certificates?
When you connect to Razorpay Curlec, our server sends three certificates in a chain. The leaf is our own certificate, and it changes every few months. The intermediate belongs to the certificate authority, and it can change at any time. The root is built into your operating system or browser and stays the same for many years. That is why only root certificates are safe to pin. See TLS certificates for more.
Why can I no longer pin Razorpay Curlec's certificate?
Industry rules now limit how long any SSL certificate may be valid, so Razorpay Curlec’s certificate will be renewed every few months instead of once a year. A pin on the certificate or its intermediate breaks at every renewal. Root certificates stay valid for many years, which is why only root pinning is supported.
What do I gain by removing certificate pinning instead of pinning the root certificates?
Nothing to maintain, ever. With pinning removed, your system trusts Razorpay Curlec the same way it trusts every other website: through the certificate authorities built into your operating system or platform. Certificate renewals, a change of certificate authority, even a change to the root list need no action from you.No risk of an outage from a stale pin. Every pinned integration is one missed update away from failed payments. Root pinning reduces that risk but does not remove it: the root list can still change, and someone has to act within the notice period.No loss of security. Standard validation already checks that the certificate is issued for razorpay.com by a trusted authority and has not expired or been revoked. Pinning adds protection only against a certificate wrongly issued by a trusted authority, a risk the industry now covers through Certificate Transparency logs and CAA records rather than client-side pins. This is why Razorpay Curlec, like other major payment providers and certificate authorities, advises against pinning.
Which root certificate should I pin? Only the one used today?
We strongly recommend that you do not pin at all; standard certificate validation is enough and needs no maintenance.If your security policy requires pinning, pin all the root certificates listed on this page, not only the one in today’s chain. Razorpay Curlec may issue certificates under any of them, and any change to this list will be announced on this page at least 30 days in advance.
My server keeps its own certificate trust store. What do I need to do?
Make sure your trust store has all the root certificates listed on this page. This matters most on servers that do not update automatically, such as locked-down Windows servers. If you maintain your own bundle manually, start from the Mozilla CA bundle published by curl and add any of the roots above that it does not include. See Certificate trust store updates for how to update it.
Do I need to update my Razorpay Curlec SDK?
We recommend that everyone uses the latest version of the Razorpay Curlec SDK for their platform. Current SDKs use an up-to-date trusted certificate list, either from your operating system or language runtime or bundled with the SDK, that already contains the root certificates on this page, so certificate renewals need no change on your side.You can find the latest versions of our SDKs and plugins at razorpay.com/integrations.
How can I make sure my services remain uninterrupted after a renewal?
Test before the renewal date. Connect to https://api-ssl-test.razorpay.com from your system. If it connects without an SSL or certificate error, you are ready. See Verify your setup for the exact commands.
Last modified on October 8, 2026
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Razorpay","colors":{"primary":"#3395FF","light":"#66B2FF","dark":"#0B62C4"},"logo":{"light":"https://mintcdn.com/doc-test-my/ZVMbrxgGis8rvt2g/logo/light.svg?fit=max\u0026auto=format\u0026n=ZVMbrxgGis8rvt2g\u0026q=85\u0026s=6aab4f40abeef4b048527ba9f05deda3","dark":"https://mintcdn.com/doc-test-my/ZVMbrxgGis8rvt2g/logo/dark.svg?fit=max\u0026auto=format\u0026n=ZVMbrxgGis8rvt2g\u0026q=85\u0026s=46ee6143cb631297999f217bc077aded","href":"/home"},"favicon":"https://mintcdn.com/doc-test-my/ocuE3cGe6n9R22co/favicon.png?fit=max\u0026auto=format\u0026n=ocuE3cGe6n9R22co\u0026q=85\u0026s=923547044b089abf7dc4fc129ef43e00","api":{"playground":{"display":"interactive"},"mdx":{"auth":{"method":"basic"},"server":"https://api.razorpay.com"}},"navbar":{"links":[{"href":"https://curlec.com/support","label":"Support"},{"href":"https://curlec.com/blog","label":"Blog"}],"primary":{"type":"button","label":"Dashboard","href":"https://dashboard.curlec.com/"}},"footer":{"socials":{"x":"https://x.com/Razorpay","linkedin":"https://www.linkedin.com/company/razorpay","github":"https://github.com/razorpay","youtube":"https://www.youtube.com/razorpay"},"links":[{"header":"Products","items":[{"label":"Payment Gateway","href":"https://curlec.com/payment-gateway"},{"label":"Payment Links","href":"https://curlec.com/payment-links"}]},{"header":"Resources","items":[{"label":"Documentation","href":"https://curlec.com/docs"},{"label":"API Reference","href":"https://curlec.com/docs/api"},{"label":"Support","href":"https://curlec.com/support"},{"label":"Blog","href":"https://curlec.com/blog"}]},{"header":"Company","items":[{"label":"About Us","href":"https://curlec.com/about"},{"label":"Careers","href":"https://curlec.com/careers"},{"label":"Pricing","href":"https://curlec.com/pricing"}]}]},"seo":{"metatags":{"canonical":"https://curlec.com/docs"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"metadata":{"timestamp":true},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"doc-test-my","hasAudioNarration":false,"actualSubdomain":"doc-test-my","customDomains":["curlec.com"],"gitSource":{"type":"github","owner":"razorpay-vendor-integrations","repo":"docs-my","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aedb92bf09614e584b7db85","clientVersion":"0.0.4094","searchFilterCounts":[{"language":"default","tag":"Payments","count":428},{"language":"default","tag":"API Reference","count":113},{"language":"default","tag":"Payment Gateway","count":97},{"language":"default","tag":"Dashboard","count":73},{"language":"default","tag":"Route","count":44},{"language":"default","tag":"Subscriptions","count":44},{"language":"default","tag":"Ecommerce Plugins","count":41},{"language":"default","tag":"Invoices","count":34},{"language":"default","tag":"Payment Links","count":34},{"language":"default","tag":"Developer Tools","count":24}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"/docs","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"#navbar ul.sidebar-group.mt-6,ul.sidebar-group.mt-6{margin-top:1rem}[data-component-part=\"callout-content\"]>[data-as=\"p\"]:first-child>strong,[data-component-part=\"callout-content\"]>[data-as=\"p\"]:first-child strong,[data-component-part=\"callout-content\"]>strong:first-child{font-size:1.125rem!important;font-weight:700!important;line-height:1.4!important}.error-code-cards [data-component-part=\"card-title\"]{display:inline-block!important;font-family:ui-monospace, \"SF Mono\", SFMono-Regular, Menlo, Consolas,\n \"Liberation Mono\", monospace!important;font-size:0.875rem!important;font-weight:600!important;line-height:1.3!important;padding:0.25rem 0.75rem!important;border-radius:9999px!important;background:rgba(107, 114, 128, 0.10)!important;border:1px solid rgba(107, 114, 128, 0.25)!important}.dark .error-code-cards [data-component-part=\"card-title\"]{background:rgba(255, 255, 255, 0.06)!important;border-color:rgba(255, 255, 255, 0.15)!important}[data-http-method]{font-weight:700!important;border-color:transparent!important}[data-http-method=\"get\"]{color:#15803d!important;background:rgba(74, 222, 128, 0.2)!important}[data-http-method=\"post\"]{color:#1d4ed8!important;background:rgba(96, 165, 250, 0.2)!important}[data-http-method=\"put\"]{color:#a16207!important;background:rgba(250, 204, 21, 0.2)!important}[data-http-method=\"patch\"]{color:#c2410c!important;background:rgba(251, 146, 60, 0.2)!important}[data-http-method=\"delete\"]{color:#b91c1c!important;background:rgba(248, 113, 113, 0.2)!important}.dark [data-http-method=\"get\"]{color:#4ade80!important}.dark [data-http-method=\"post\"]{color:#60a5fa!important}.dark [data-http-method=\"put\"]{color:#facc15!important}.dark [data-http-method=\"patch\"]{color:#fb923c!important}.dark [data-http-method=\"delete\"]{color:#f87171!important}ul.sidebar-group.mt-6{margin-top:5px}"},{"filePath":"static/docs-home/styles.css","href":"/docs/_mintlify/custom/doc-test-my/8e676b2fb670224d/static/docs-home/styles.css"},{"filePath":"static/nav-more.css","content":"#navbar .nav-tabs{min-width:0;column-gap:1rem}#navbar .nav-tabs:not(.rzpn-more) .nav-tabs-item{display:block;flex:0 1 auto;min-width:3.5rem;min-width:calc-size(max-content, min(size, 5.25rem));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:3rem}#navbar .nav-tabs:not(.rzpn-more) .nav-tabs-item>svg{display:inline-block;vertical-align:middle;margin:-2px 8px 0 0}#navbar .nav-tabs.rzpn-more .nav-tabs-item{flex:none;white-space:nowrap}#navbar .nav-tabs-item[data-rzpn-hidden]{display:none}#navbar .rzpn-more-wrap{position:relative;flex:none}#navbar .rzpn-more-wrap:not([hidden]){display:flex}#navbar .rzpn-more-menu:not([hidden]){display:flex;flex-direction:column}#navbar .rzpn-more-btn{background:none;border:0;padding:0;cursor:pointer;white-space:nowrap}#navbar .rzpn-more-menu{position:absolute;top:calc(100% - 4px);right:0;z-index:50;min-width:12rem;padding:6px;border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,.12)}#navbar .rzpn-more-menu a{display:flex;align-items:center;gap:8px;padding:8px 10px;border-radius:8px;white-space:nowrap}#navbar .rzpn-more-menu a:hover,#navbar .rzpn-more-menu a:focus-visible{background:rgba(127,127,127,.12)}"}],"page":{"pagePath":"security/whitelists/guidelines-ssl-cert-rotation","slug":"/security/whitelists/guidelines-ssl-cert-rotation","pageMetadata":{"title":"Guidelines for SSL Certificate Rotation","sidebarTitle":"Certificate Rotation Guidelines","description":"How Razorpay Curlec's SSL certificates are managed, what your integration must support, and what to do if your systems pin or whitelist certificates.","href":"/security/whitelists/guidelines-ssl-cert-rotation"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"How Razorpay Curlec’s SSL certificates are managed, what your integration must support, and what to do if your systems pin or whitelist certificates.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Accordion,AccordionGroup,CodeBlock,Heading,Info,Table,Warning}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!AccordionGroup)_missingMdxReference(`AccordionGroup`,true);if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(`div`,{style:{display:`flex`,flexWrap:`wrap`,alignItems:`center`,gap:`0.35rem 0.9rem`,border:`1px solid rgba(128,128,128,0.28)`,borderRadius:`0.5rem`,padding:`0.45rem 0.75rem`,margin:`0 0 1.25rem`,fontSize:`0.875rem`},children:[_jsx(`span`,{style:{fontWeight:600},children:`Available in`}),_jsx(`span`,{children:`🇮🇳 India`}),_jsx(`span`,{children:`🇲🇾 Malaysia`}),_jsx(`span`,{children:`🇸🇬 Singapore`}),_jsx(`span`,{children:`🇺🇸 United States`})]}),`\n`,_jsx(_components.p,{children:`Your integration connects to Razorpay Curlec over HTTPS. Razorpay Curlec’s SSL certificate proves that you are connected to Razorpay Curlec’s services and keeps the traffic private. This page explains what your integration must support, why you should not pin our certificate, and what to do if your security policy requires pinning.`}),`\n`,_jsxs(Info,{children:[_jsx(_components.p,{children:_jsx(_components.strong,{children:`Upcoming SSL certificate renewal: October 05, 2026, 10:00 PM IST`})}),_jsx(_components.p,{children:`If your integration pins or whitelists Razorpay Curlec’s certificate, review the guidance on this page and complete the required changes before this date.`})]}),`\n`,_jsx(Heading,{level:`2`,id:`prerequisites`,children:`Prerequisites`}),`\n`,_jsx(_components.p,{children:`Before proceeding, determine if your application uses:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`SSL certificate pinning`}),`\n`,_jsx(_components.li,{children:`Certificate whitelisting`}),`\n`,_jsx(_components.li,{children:`Custom certificate trust stores`}),`\n`]}),`\n`,_jsx(_components.p,{children:`No action is required if your systems have never been configured to use, trust, or manually install a specific Razorpay Curlec SSL certificate, including through SSL pinning or certificate whitelisting. This includes any configurations previously made by your team. Your systems will automatically trust the renewed certificate.`}),`\n`,_jsxs(Info,{children:[_jsx(_components.p,{children:_jsx(_components.strong,{children:`No Action Needed for Third-Party Platform Users`})}),_jsxs(_components.p,{children:[`If you use a third-party platform such as WooCommerce, Magento, CS Cart, OpenCart, Shopify, WHMCS, Arastta, Prestashop, WordPress, Easy Digital Downloads, WIX, BigCommerce or Drupal Commerce, you are not required to take any action. The platform handles SSL management. Read `,_jsx(_components.a,{href:`#faqs`,children:`FAQ #3`}),` and `,_jsx(_components.a,{href:`#faqs`,children:`FAQ #4`}),` for more details.`]}),_jsx(_components.p,{children:`The same applies if you use Razorpay Curlec-hosted products such as Payment Links, Payment Pages, Payment Buttons or Invoices.`})]}),`\n`,_jsx(Heading,{level:`2`,id:`requirements`,children:`Requirements`}),`\n`,_jsx(_components.p,{children:`Your systems must support TLS 1.2 or higher. TLS 1.3 is preferred.`}),`\n`,_jsx(Heading,{level:`2`,id:`tls-certificates`,children:`TLS certificates`}),`\n`,_jsx(_components.p,{children:`When you connect, our server presents a chain of certificates. Your client checks that the chain ends at a root it already trusts.`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Leaf certificate:`}),` Razorpay Curlec’s own certificate for `,_jsx(_components.code,{children:`*.razorpay.com`}),`. It is renewed every few months.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Intermediate certificate:`}),` issued by the certificate authority; it signs the leaf and can change without notice.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Root certificate:`}),` the long-lived trust anchor built into operating systems and browsers. Roots stay valid for many years.`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`For a fuller explanation, see `,_jsx(_components.a,{href:`https://knowledge.digicert.com/solution/how-certificate-chains-work`,children:`DigiCert: how certificate chains work`}),` and `,_jsx(_components.a,{href:`https://letsencrypt.org/certificates/`,children:`Let’s Encrypt: chain of trust`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`certificate-pinning`,children:`Certificate pinning`}),`\n`,_jsxs(_components.p,{children:[`Razorpay Curlec does not recommend `,_jsx(_components.a,{href:`https://www.ssl.com/blogs/what-is-certificate-pinning`,children:`certificate pinning`}),`.`]}),`\n`,_jsx(_components.p,{children:`If you use certificate pinning, your system only accepts the certificate that you pinned for Razorpay Curlec. When we renew our SSL certificate and present a different one during the TLS handshake, your application refuses to connect to Razorpay Curlec, even though the new certificate is issued by a trusted certificate authority (CA).`}),`\n`,_jsx(_components.p,{children:`Why Razorpay Curlec does not support certificate pinning of any kind:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Outside of Razorpay Curlec’s control:`}),` your system handles certificate pinning. We do not know whether you pin, or which certificates you pin.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Risk of failing connections:`}),` when we renew our certificate and your system still expects the previous one, your connection to Razorpay Curlec breaks. Our certificate is now renewed every few months.`]}),`\n`]}),`\n`,_jsxs(Warning,{children:[_jsx(_components.p,{children:_jsx(_components.strong,{children:`Watch Out!`})}),_jsx(_components.p,{children:`If you have pinned or whitelisted a Razorpay Curlec certificate, remove it and rely on standard SSL validation. Pinning adds no practical protection for your integration and can stop your payments at every renewal.`})]}),`\n`,_jsx(Heading,{level:`2`,id:`certificate-changes`,children:`Certificate changes`}),`\n`,_jsx(_components.p,{children:`If your security policy requires certificate pinning, do the following to reduce the risk of broken connections.`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Only pin the root certificates:`}),` instead of pinning the leaf certificate or the entire certificate chain, you must pin all of the following root certificates. Razorpay Curlec no longer publishes per-certificate files (X*.pem):`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Root certificate`}),_jsx(_components.th,{children:`Key type`}),_jsx(_components.th,{children:`Valid until`}),_jsx(_components.th,{children:`Download`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`DigiCert Global Root G2`}),_jsx(_components.td,{children:`RSA`}),_jsx(_components.td,{children:`Jan 2038`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`https://cacerts.digicert.com/DigiCertGlobalRootG2.crt.pem`,children:`.pem`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`DigiCert Global Root CA`}),_jsx(_components.td,{children:`RSA`}),_jsx(_components.td,{children:`Nov 2031`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`https://cacerts.digicert.com/DigiCertGlobalRootCA.crt.pem`,children:`.pem`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`DigiCert Global Root G3`}),_jsx(_components.td,{children:`ECDSA`}),_jsx(_components.td,{children:`Jan 2038`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`https://cacerts.digicert.com/DigiCertGlobalRootG3.crt.pem`,children:`.pem`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`DigiCert TLS RSA4096 Root G5`}),_jsx(_components.td,{children:`RSA`}),_jsx(_components.td,{children:`Jan 2046`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`https://cacerts.digicert.com/DigiCertTLSRSA4096RootG5.crt.pem`,children:`.pem`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`DigiCert TLS ECC P384 Root G5`}),_jsx(_components.td,{children:`ECDSA`}),_jsx(_components.td,{children:`Jan 2046`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`https://cacerts.digicert.com/DigiCertTLSECCP384RootG5.crt.pem`,children:`.pem`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Amazon Root CA 1`}),_jsx(_components.td,{children:`RSA`}),_jsx(_components.td,{children:`Jan 2038`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`https://www.amazontrust.com/repository/AmazonRootCA1.pem`,children:`.pem`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Amazon Root CA 2`}),_jsx(_components.td,{children:`RSA`}),_jsx(_components.td,{children:`May 2040`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`https://www.amazontrust.com/repository/AmazonRootCA2.pem`,children:`.pem`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Amazon Root CA 3`}),_jsx(_components.td,{children:`ECDSA`}),_jsx(_components.td,{children:`May 2040`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`https://www.amazontrust.com/repository/AmazonRootCA3.pem`,children:`.pem`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Amazon Root CA 4`}),_jsx(_components.td,{children:`ECDSA`}),_jsx(_components.td,{children:`May 2040`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`https://www.amazontrust.com/repository/AmazonRootCA4.pem`,children:`.pem`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Starfield Services Root CA - G2`}),_jsx(_components.td,{children:`RSA`}),_jsx(_components.td,{children:`Dec 2037`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`https://www.amazontrust.com/repository/SFSRootCAG2.pem`,children:`.pem`})})]})]})]}),`\n`,_jsx(Accordion,{title:`Fingerprints and serial numbers (for verification)`,id:`fingerprints-and-serial-numbers-for-verification`,children:_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Root certificate`}),_jsx(_components.th,{children:`Details`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`DigiCert Global Root G2`}),_jsxs(_components.td,{children:[`Valid until: 15/Jan/2038`,_jsx(`br`,{}),`Serial #: 03:3A:F1:E6:A7:11:A9:A0:BB:28:64:B1:1D:09:FA:E5`,_jsx(`br`,{}),`SHA-1: DF:3C:24:F9:BF:D6:66:76:1B:26:80:73:FE:06:D1:CC:8D:4F:82:A4`,_jsx(`br`,{}),`SHA-256: CB:3C:CB:B7:60:31:E5:E0:13:8F:8D:D3:9A:23:F9:DE:47:FF:C3:5E:43:C1:14:4C:EA:27:D4:6A:5A:B1:CB:5F`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`DigiCert Global Root CA`}),_jsxs(_components.td,{children:[`Valid until: 10/Nov/2031`,_jsx(`br`,{}),`Serial #: 08:3B:E0:56:90:42:46:B1:A1:75:6A:C9:59:91:C7:4A`,_jsx(`br`,{}),`SHA-1: A8:98:5D:3A:65:E5:E5:C4:B2:D7:D6:6D:40:C6:DD:2F:B1:9C:54:36`,_jsx(`br`,{}),`SHA-256: 43:48:A0:E9:44:4C:78:CB:26:5E:05:8D:5E:89:44:B4:D8:4F:96:62:BD:26:DB:25:7F:89:34:A4:43:C7:01:61`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`DigiCert Global Root G3`}),_jsxs(_components.td,{children:[`Valid until: 15/Jan/2038`,_jsx(`br`,{}),`Serial #: 05:55:56:BC:F2:5E:A4:35:35:C3:A4:0F:D5:AB:45:72`,_jsx(`br`,{}),`SHA-1: 7E:04:DE:89:6A:3E:66:6D:00:E6:87:D3:3F:FA:D9:3B:E8:3D:34:9E`,_jsx(`br`,{}),`SHA-256: 31:AD:66:48:F8:10:41:38:C7:38:F3:9E:A4:32:01:33:39:3E:3A:18:CC:02:29:6E:F9:7C:2A:C9:EF:67:31:D0`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`DigiCert TLS RSA4096 Root G5`}),_jsxs(_components.td,{children:[`Valid until: 14/Jan/2046`,_jsx(`br`,{}),`Serial #: 08:F9:B4:78:A8:FA:7E:DA:6A:33:37:89:DE:7C:CF:8A`,_jsx(`br`,{}),`SHA-1: A7:88:49:DC:5D:7C:75:8C:8C:DE:39:98:56:B3:AA:D0:B2:A5:71:35`,_jsx(`br`,{}),`SHA-256: 37:1A:00:DC:05:33:B3:72:1A:7E:EB:40:E8:41:9E:70:79:9D:2B:0A:0F:2C:1D:80:69:31:65:F7:CE:C4:AD:75`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`DigiCert TLS ECC P384 Root G5`}),_jsxs(_components.td,{children:[`Valid until: 14/Jan/2046`,_jsx(`br`,{}),`Serial #: 09:E0:93:65:AC:F7:D9:C8:B9:3E:1C:0B:04:2A:2E:F3`,_jsx(`br`,{}),`SHA-1: 17:F3:DE:5E:9F:0F:19:E9:8E:F6:1F:32:26:6E:20:C4:07:AE:30:EE`,_jsx(`br`,{}),`SHA-256: 01:8E:13:F0:77:25:32:CF:80:9B:D1:B1:72:81:86:72:83:FC:48:C6:E1:3B:E9:C6:98:12:85:4A:49:0C:1B:05`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Amazon Root CA 1`}),_jsxs(_components.td,{children:[`Valid until: 17/Jan/2038`,_jsx(`br`,{}),`Serial #: 06:6C:9F:CF:99:BF:8C:0A:39:E2:F0:78:8A:43:E6:96:36:5B:CA`,_jsx(`br`,{}),`SHA-1: 8D:A7:F9:65:EC:5E:FC:37:91:0F:1C:6E:59:FD:C1:CC:6A:6E:DE:16`,_jsx(`br`,{}),`SHA-256: 8E:CD:E6:88:4F:3D:87:B1:12:5B:A3:1A:C3:FC:B1:3D:70:16:DE:7F:57:CC:90:4F:E1:CB:97:C6:AE:98:19:6E`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Amazon Root CA 2`}),_jsxs(_components.td,{children:[`Valid until: 26/May/2040`,_jsx(`br`,{}),`Serial #: 06:6C:9F:D2:96:35:86:9F:0A:0F:E5:86:78:F8:5B:26:BB:8A:37`,_jsx(`br`,{}),`SHA-1: 5A:8C:EF:45:D7:A6:98:59:76:7A:8C:8B:44:96:B5:78:CF:47:4B:1A`,_jsx(`br`,{}),`SHA-256: 1B:A5:B2:AA:8C:65:40:1A:82:96:01:18:F8:0B:EC:4F:62:30:4D:83:CE:C4:71:3A:19:C3:9C:01:1E:A4:6D:B4`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Amazon Root CA 3`}),_jsxs(_components.td,{children:[`Valid until: 26/May/2040`,_jsx(`br`,{}),`Serial #: 06:6C:9F:D5:74:97:36:66:3F:3B:0B:9A:D9:E8:9E:76:03:F2:4A`,_jsx(`br`,{}),`SHA-1: 0D:44:DD:8C:3C:8C:1A:1A:58:75:64:81:E9:0F:2E:2A:FF:B3:D2:6E`,_jsx(`br`,{}),`SHA-256: 18:CE:6C:FE:7B:F1:4E:60:B2:E3:47:B8:DF:E8:68:CB:31:D0:2E:BB:3A:DA:27:15:69:F5:03:43:B4:6D:B3:A4`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Amazon Root CA 4`}),_jsxs(_components.td,{children:[`Valid until: 26/May/2040`,_jsx(`br`,{}),`Serial #: 06:6C:9F:D7:C1:BB:10:4C:29:43:E5:71:7B:7B:2C:C8:1A:C1:0E`,_jsx(`br`,{}),`SHA-1: F6:10:84:07:D6:F8:BB:67:98:0C:C2:E2:44:C2:EB:AE:1C:EF:63:BE`,_jsx(`br`,{}),`SHA-256: E3:5D:28:41:9E:D0:20:25:CF:A6:90:38:CD:62:39:62:45:8D:A5:C6:95:FB:DE:A3:C2:2B:0B:FB:25:89:70:92`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Starfield Services Root CA - G2`}),_jsxs(_components.td,{children:[`Valid until: 31/Dec/2037`,_jsx(`br`,{}),`Serial #: 00`,_jsx(`br`,{}),`SHA-1: 92:5A:8F:8D:2C:6D:04:E0:66:5F:59:6A:FF:22:D8:63:E8:25:6F:3F`,_jsx(`br`,{}),`SHA-256: 56:8D:69:05:A2:C8:87:08:A4:B3:02:51:90:ED:CF:ED:B1:97:4A:60:6A:13:C6:E5:29:0F:CB:2A:E6:3E:DA:B5`]})]})]})]})}),`\n`,_jsxs(Info,{children:[_jsxs(_components.p,{children:[`Download the root certificates only from the CAs’ official repositories: `,_jsx(_components.a,{href:`https://knowledge.digicert.com/general-information/digicert-trusted-root-authority-certificates`,children:`DigiCert`}),` · `,_jsx(_components.a,{href:`https://www.amazontrust.com/repository/`,children:`Amazon Trust Services`}),`. Verify each download against the fingerprints above:`]}),_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`openssl`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` x509`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -in`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` \u003c`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`root.pe`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`m`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`>`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -noout`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -subject`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -fingerprint`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -sha256`})]}),`\n`]})})})]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Keep track of root certificate updates:`}),` even if you pin all the root certificates, Razorpay Curlec may add a new root certificate to this list in future.`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Regular business practice:`}),` we publish the new root on this page at least 30 days before our servers start using it.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Emergency cases:`}),` the notice period can be shorter before we make the change.`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`It is your responsibility to ensure your applications (for example, web or mobile) can handle any certificate changes.`}),`\n`,_jsxs(Warning,{children:[_jsx(_components.p,{children:_jsx(_components.strong,{children:`Never pin the leaf certificate, the intermediate certificate, or the certificate chain`})}),_jsx(_components.p,{children:`Razorpay Curlec updates these certificates routinely and without notice. Any integration that pins them will break at the next rotation.`})]}),`\n`,_jsx(Heading,{level:`3`,id:`certificate-trust-store-updates`,children:`Certificate trust store updates`}),`\n`,_jsxs(_components.p,{children:[`If you have a certificate trust store in your server environment that is not configured to update automatically, you must ensure that it contains all the root certificates listed above. Refer to this `,_jsx(_components.a,{href:`https://manuals.gfi.com/en/kerio/connect/content/server-configuration/ssl-certificates/adding-trusted-root-certificates-to-the-server-1605.html`,children:`manual`}),` to learn how to update trust stores in different environments.`]}),`\n`,_jsx(Heading,{level:`2`,id:`verify-your-setup`,children:`Verify your setup`}),`\n`,_jsx(_components.p,{children:`Before each announced change, the upcoming certificate is served on a test endpoint ahead of production. Connect to it to confirm your setup:`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`5`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`5`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -v`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://api-ssl-test.razorpay.com`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# or inspect the certificate directly:`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`openssl`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` s_client`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -connect`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` api-ssl-test.razorpay.com:443`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -servername`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` api-ssl-test.razorpay.com`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` \u003c`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`/dev/null`})]}),`\n`]})})}),`\n`,_jsx(_components.p,{children:`If the connection succeeds without an SSL or certificate error, your system is ready for the renewal.`}),`\n`,_jsxs(Warning,{children:[_jsx(_components.p,{children:_jsx(_components.strong,{children:`Watch Out!`})}),_jsxs(_components.p,{children:[`This is only a test domain (`,_jsx(_components.code,{children:`api-ssl-test.razorpay.com`}),`) and should not be used in production environments.`]})]}),`\n`,_jsx(Heading,{level:`2`,id:`additional-support`,children:`Additional Support`}),`\n`,_jsx(_components.p,{children:`If you encounter any difficulties during the process, our support team is here to help:`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsx(_components.li,{children:`Log in to the Dashboard.`}),`\n`,_jsxs(_components.li,{children:[`Navigate to the `,_jsx(_components.strong,{children:`Help \u0026 Support`}),` section at the bottom right.`]}),`\n`,_jsxs(_components.li,{children:[`Raise a ticket under the `,_jsx(_components.strong,{children:`Technical Assistance`}),` category to contact our tech support team.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`faqs`,children:`FAQs`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`I have received an email about a certificate change, or I am a new Razorpay Curlec user. Do I need to take action?`,id:`i-have-received-an-email-about-a-certificate-change-or-i-am-a-new-razorpay-curlec-user-do-i-need-to-take-action`,children:_jsx(_components.p,{children:`Not unless you have manually pinned or installed a Razorpay Curlec certificate in your applications or servers. Otherwise your systems validate our certificate through the standard trust store of your operating system or platform, and the change is invisible to you. If you have pinned one, remove it or pin all the root certificates listed on this page.`})}),_jsx(Accordion,{title:`I previously downloaded the X9 or X10 certificate files. What should I do now?`,id:`i-previously-downloaded-the-x9-or-x10-certificate-files-what-should-i-do-now`,children:_jsx(_components.p,{children:`Remove the pinned or installed Razorpay Curlec certificate and let your system use standard SSL validation. If your security policy requires pinning, replace the old files with all the root certificates listed on this page. Per-certificate files (X*.pem and chain files) are no longer published.`})}),_jsx(Accordion,{title:`How do I check whether I am using a third-party platform?`,id:`how-do-i-check-whether-i-am-using-a-third-party-platform`,children:_jsx(_components.p,{children:`Third-party platforms are services such as WooCommerce, Magento, CS Cart, OpenCart, Shopify, WHMCS, Arastta, Prestashop, WordPress, Easy Digital Downloads, WIX, BigCommerce and Drupal Commerce. If you are unsure, check whether you use an admin panel provided by one of these platforms to add stock, offers or perform other tasks. If yes, you are using a third-party platform.`})}),_jsx(Accordion,{title:`If I am using a third-party platform, do I need to take action?`,id:`if-i-am-using-a-third-party-platform-do-i-need-to-take-action`,children:_jsx(_components.p,{children:`No. The platform manages the connection to Razorpay Curlec and handles SSL validation for you. See the list of platforms in the box near the top of this page.`})}),_jsx(Accordion,{title:`What are leaf, intermediate and root certificates?`,id:`what-are-leaf-intermediate-and-root-certificates`,children:_jsxs(_components.p,{children:[`When you connect to Razorpay Curlec, our server sends three certificates in a chain. The leaf is our own certificate, and it changes every few months. The intermediate belongs to the certificate authority, and it can change at any time. The root is built into your operating system or browser and stays the same for many years. That is why only root certificates are safe to pin. See `,_jsx(_components.a,{href:`#tls-certificates`,children:`TLS certificates`}),` for more.`]})}),_jsx(Accordion,{title:`Why can I no longer pin Razorpay Curlec's certificate?`,id:`why-can-i-no-longer-pin-razorpay-curlecs-certificate`,children:_jsx(_components.p,{children:`Industry rules now limit how long any SSL certificate may be valid, so Razorpay Curlec’s certificate will be renewed every few months instead of once a year. A pin on the certificate or its intermediate breaks at every renewal. Root certificates stay valid for many years, which is why only root pinning is supported.`})}),_jsxs(Accordion,{title:`What do I gain by removing certificate pinning instead of pinning the root certificates?`,id:`what-do-i-gain-by-removing-certificate-pinning-instead-of-pinning-the-root-certificates`,children:[_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Nothing to maintain, ever.`}),` With pinning removed, your system trusts Razorpay Curlec the same way it trusts every other website: through the certificate authorities built into your operating system or platform. Certificate renewals, a change of certificate authority, even a change to the root list need no action from you.`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`No risk of an outage from a stale pin.`}),` Every pinned integration is one missed update away from failed payments. Root pinning reduces that risk but does not remove it: the root list can still change, and someone has to act within the notice period.`]}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`No loss of security.`}),` Standard validation already checks that the certificate is issued for razorpay.com by a trusted authority and has not expired or been revoked. Pinning adds protection only against a certificate wrongly issued by a trusted authority, a risk the industry now covers through Certificate Transparency logs and CAA records rather than client-side pins. This is why Razorpay Curlec, like other major payment providers and certificate authorities, advises against pinning.`]})]}),_jsxs(Accordion,{title:`Which root certificate should I pin? Only the one used today?`,id:`which-root-certificate-should-i-pin-only-the-one-used-today`,children:[_jsx(_components.p,{children:`We strongly recommend that you do not pin at all; standard certificate validation is enough and needs no maintenance.`}),_jsx(_components.p,{children:`If your security policy requires pinning, pin all the root certificates listed on this page, not only the one in today’s chain. Razorpay Curlec may issue certificates under any of them, and any change to this list will be announced on this page at least 30 days in advance.`})]}),_jsx(Accordion,{title:`My server keeps its own certificate trust store. What do I need to do?`,id:`my-server-keeps-its-own-certificate-trust-store-what-do-i-need-to-do`,children:_jsxs(_components.p,{children:[`Make sure your trust store has all the root certificates listed on this page. This matters most on servers that do not update automatically, such as locked-down Windows servers. If you maintain your own bundle manually, start from the `,_jsx(_components.a,{href:`https://curl.se/docs/caextract.html`,children:`Mozilla CA bundle published by curl`}),` and add any of the roots above that it does not include. See `,_jsx(_components.a,{href:`#certificate-trust-store-updates`,children:`Certificate trust store updates`}),` for how to update it.`]})}),_jsxs(Accordion,{title:`Do I need to update my Razorpay Curlec SDK?`,id:`do-i-need-to-update-my-razorpay-curlec-sdk`,children:[_jsx(_components.p,{children:`We recommend that everyone uses the latest version of the Razorpay Curlec SDK for their platform. Current SDKs use an up-to-date trusted certificate list, either from your operating system or language runtime or bundled with the SDK, that already contains the root certificates on this page, so certificate renewals need no change on your side.`}),_jsx(_components.p,{children:`You can find the latest versions of our SDKs and plugins at razorpay.com/integrations.`})]}),_jsx(Accordion,{title:`How can I make sure my services remain uninterrupted after a renewal?`,id:`how-can-i-make-sure-my-services-remain-uninterrupted-after-a-renewal`,children:_jsxs(_components.p,{children:[`Test before the renewal date. Connect to `,_jsx(_components.code,{children:`https://api-ssl-test.razorpay.com`}),` from your system. If it connects without an SSL or certificate error, you are ready. See `,_jsx(_components.a,{href:`#verify-your-setup`,children:`Verify your setup`}),` for the exact commands.`]})})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Guidelines for SSL Certificate Rotation","sidebarTitle":"Certificate Rotation Guidelines","description":"How Razorpay Curlec's SSL certificates are managed, what your integration must support, and what to do if your systems pin or whitelist certificates.","href":"/security/whitelists/guidelines-ssl-cert-rotation"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Prerequisites","slug":"prerequisites","depth":2,"children":[]},{"title":"Requirements","slug":"requirements","depth":2,"children":[]},{"title":"TLS certificates","slug":"tls-certificates","depth":2,"children":[]},{"title":"Certificate pinning","slug":"certificate-pinning","depth":2,"children":[]},{"title":"Certificate changes","slug":"certificate-changes","depth":2,"children":[{"title":"Certificate trust store updates","slug":"certificate-trust-store-updates","depth":3,"children":[]}]},{"title":"Verify your setup","slug":"verify-your-setup","depth":2,"children":[]},{"title":"Additional Support","slug":"additional-support","depth":2,"children":[]},{"title":"FAQs","slug":"faqs","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/docs/_mintlify/custom/doc-test-my/feb5e1f4e9db0a05/country-switcher.js","/docs/_mintlify/custom/doc-test-my/d04f2910efb9afc8/static/docs-home/script.js","/docs/_mintlify/custom/doc-test-my/297d7fb9a0227345/ga4.js","/docs/_mintlify/custom/doc-test-my/0ccbc66d726b02ea/static/nav-more.js","/docs/_mintlify/custom/doc-test-my/fe07c43033bf9a19/hreflang.js"],"subdomain":"doc-test-my","siteName":"Razorpay","title":"Guidelines for SSL Certificate Rotation - Razorpay","navMaps":{"firstHrefInVersion":{"Malaysia":{"href":"/security/whitelists/guidelines-ssl-cert-rotation","matchLevel":0}},"firstHrefInLanguage":{}},"lastModified":"2026-10-08T10:36:09.294Z","gitLastModified":"2026-10-08T10:35:34.000Z","originalFileLocation":"security/whitelists/guidelines-ssl-cert-rotation.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"How Razorpay Curlec\u0026#x27;s SSL certificates are managed, what your integration must support, and what to do if your systems pin or whitelist certificates.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Razorpay\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/doc-test-my/oB0ktXq5JWJeSh8A/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/docs/mintlify-assets/_mintlify/favicons/doc-test-my/oB0ktXq5JWJeSh8A/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/doc-test-my/oB0ktXq5JWJeSh8A/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/doc-test-my/oB0ktXq5JWJeSh8A/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/doc-test-my/oB0ktXq5JWJeSh8A/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/doc-test-my/oB0ktXq5JWJeSh8A/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/doc-test-my/oB0ktXq5JWJeSh8A/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/doc-test-my/oB0ktXq5JWJeSh8A/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/doc-test-my/oB0ktXq5JWJeSh8A/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Guidelines for SSL Certificate Rotation - Razorpay\">\u003cmeta data-mint-head property=\"og:description\" content=\"How Razorpay Curlec\u0026#x27;s SSL certificates are managed, what your integration must support, and what to do if your systems pin or whitelist certificates.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Razorpay\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://curlec.com/docs/security/whitelists/guidelines-ssl-cert-rotation\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://doc-test-my.mintlify.site/docs/_mintlify/api/og/v2?division=Whitelists\u0026amp;title=Guidelines+for+SSL+Certificate+Rotation\u0026amp;description=How+Razorpay+Curlec%27s+SSL+certificates+are+managed%2C+what+your+integration+must+support%2C+and+what+to+do+if+your+systems+pin+or+whitelist+certificates.\u0026amp;theme=5bc23f2a92582ee811e41948\u0026amp;signature=1ca151805d7d8930ec3e169189837edd0961ddbfc0018b93c1c653c06cff1762\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Guidelines for SSL Certificate Rotation - Razorpay\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"How Razorpay Curlec\u0026#x27;s SSL certificates are managed, what your integration must support, and what to do if your systems pin or whitelist certificates.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://doc-test-my.mintlify.site/docs/_mintlify/api/og/v2?division=Whitelists\u0026amp;title=Guidelines+for+SSL+Certificate+Rotation\u0026amp;description=How+Razorpay+Curlec%27s+SSL+certificates+are+managed%2C+what+your+integration+must+support%2C+and+what+to+do+if+your+systems+pin+or+whitelist+certificates.\u0026amp;theme=5bc23f2a92582ee811e41948\u0026amp;signature=1ca151805d7d8930ec3e169189837edd0961ddbfc0018b93c1c653c06cff1762\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/docs/mintlify-assets/_mintlify/favicons/doc-test-my/oB0ktXq5JWJeSh8A/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Razorpay\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#3395FF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://curlec.com/docs/security/whitelists/guidelines-ssl-cert-rotation\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/docs/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/security/whitelists/guidelines-ssl-cert-rotation.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://curlec.com/#organization\",\"name\":\"Razorpay\",\"url\":\"https://curlec.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/doc-test-my/ZVMbrxgGis8rvt2g/logo/light.svg?fit=max\u0026auto=format\u0026n=ZVMbrxgGis8rvt2g\u0026q=85\u0026s=6aab4f40abeef4b048527ba9f05deda3\"}},{\"@type\":\"WebSite\",\"@id\":\"https://curlec.com/docs#website\",\"name\":\"Razorpay\",\"url\":\"https://curlec.com/docs\",\"publisher\":{\"@id\":\"https://curlec.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://curlec.com/docs/security/whitelists/guidelines-ssl-cert-rotation#webpage\",\"url\":\"https://curlec.com/docs/security/whitelists/guidelines-ssl-cert-rotation\",\"name\":\"Guidelines for SSL Certificate Rotation\",\"description\":\"How Razorpay Curlec's SSL certificates are managed, what your integration must support, and what to do if your systems pin or whitelist certificates.\",\"dateModified\":\"2026-10-08T10:35:34.000Z\",\"isPartOf\":{\"@id\":\"https://curlec.com/docs#website\"},\"breadcrumb\":{\"@id\":\"https://curlec.com/docs/security/whitelists/guidelines-ssl-cert-rotation#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://curlec.com/docs/security/whitelists/guidelines-ssl-cert-rotation#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Security\",\"item\":\"https://curlec.com/docs/security\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Whitelists\",\"item\":\"https://curlec.com/docs/security/whitelists\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Guidelines for SSL Certificate Rotation\",\"item\":\"https://curlec.com/docs/security/whitelists/guidelines-ssl-cert-rotation\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://curlec.com/docs/security/whitelists/guidelines-ssl-cert-rotation#article\",\"headline\":\"Guidelines for SSL Certificate Rotation\",\"name\":\"Guidelines for SSL Certificate Rotation\",\"description\":\"How Razorpay Curlec's SSL certificates are managed, what your integration must support, and what to do if your systems pin or whitelist certificates.\",\"url\":\"https://curlec.com/docs/security/whitelists/guidelines-ssl-cert-rotation\",\"mainEntityOfPage\":{\"@id\":\"https://curlec.com/docs/security/whitelists/guidelines-ssl-cert-rotation#webpage\"},\"dateModified\":\"2026-10-08T10:35:34.000Z\",\"publisher\":{\"@id\":\"https://curlec.com/#organization\"},\"isPartOf\":{\"@id\":\"https://curlec.com/docs#website\"}}]}\u003c/script>","siteName":"Razorpay","nav":{"global":null,"versions":[{"version":"Malaysia","default":true,"tabs":[{"tab":"Home","icon":"house","pages":[{"title":"Home","href":"/home"}]},{"tab":"Payments","icon":"credit-card","pages":[{"title":"Payments","href":"/payments"}]},{"tab":"API Reference","icon":"code","pages":[{"title":"API Reference","href":"/api"}]},{"tab":"Developer Tools","icon":"screwdriver-wrench","pages":[{"title":"Developer Tools","href":"/developer-tools"},{"group":"Razorpay CLI","root":{"title":"About CLI","href":"/cli"},"pages":[{"title":"Install the Razorpay Curlec CLI","sidebarTitle":"Installation","href":"/cli/install-cli"}]},{"group":"Errors","root":{"title":"About Errors","href":"/errors"},"pages":[{"title":"Common Errors","href":"/errors/common"},{"group":"Payments","pages":[{"title":"List of Errors","href":"/errors/payments/list"},{"title":"Cards Error Codes","href":"/errors/payments/cards"},{"title":"Payment Method Error Parameters","sidebarTitle":"Error Parameters","href":"/errors/payments/payment-methods-error-parameters"}]}]},{"group":"Webhooks","root":{"title":"About Webhooks","href":"/webhooks"},"pages":[{"group":"Set Up and Edit Webhooks","pages":[{"title":"Set Up and Edit Payments Webhooks","sidebarTitle":"Payments","href":"/webhooks/setup-edit-payments"}]},{"title":"Best Practices","href":"/webhooks/best-practices"},{"title":"Validate and Test Webhooks","href":"/webhooks/validate-test"},{"group":"List of Webhook Events","pages":[{"title":"All Webhook Events","sidebarTitle":"All","href":"/webhooks/all"},{"title":"Orders Webhook Events","sidebarTitle":"Orders","href":"/webhooks/orders"},{"title":"Payments Webhook Events","sidebarTitle":"Payments","href":"/webhooks/payments"},{"title":"Refunds Webhook Events","sidebarTitle":"Refunds","href":"/webhooks/refunds"},{"title":"Invoices Webhook Events","sidebarTitle":"Invoices","href":"/webhooks/invoices"},{"title":"Subscriptions Webhook Events","sidebarTitle":"Subscriptions","href":"/webhooks/subscriptions"},{"title":"Route Webhook Events","sidebarTitle":"Route","href":"/webhooks/route"},{"title":"Settlements Webhook Events","sidebarTitle":"Settlements","href":"/webhooks/settlements"},{"title":"Payment Links Webhook Events","sidebarTitle":"Payment Links","href":"/webhooks/payment-links"}]},{"title":"Frequently Asked Questions (FAQs)","sidebarTitle":"FAQs","href":"/webhooks/faqs"}]},{"group":"Security","root":{"title":"About Razorpay Curlec Security","href":"/security"},"pages":[{"title":"Business Security Checklist","href":"/security/checklist"},{"title":"Shared Responsibility Model","href":"/security/shared-responsibility-model"},{"group":"Whitelists","pages":[{"title":"Razorpay Curlec IPs and Certificates","sidebarTitle":"IPs and Certificates","description":"Download Razorpay Curlec SSL certificates and whitelist our API and Webhooks IP addresses.","href":"/security/whitelists"},{"title":"Guidelines for SSL Certificate Rotation","sidebarTitle":"Certificate Rotation Guidelines","href":"/security/whitelists/guidelines-ssl-cert-rotation"}]},{"title":"Security For Customers","description":"Know how Razorpay Curlec handles customer security, saved cards and frauds.","href":"/security/customers"}]}]}]},{"version":"India","href":"https://razorpay.com/docs"},{"version":"Singapore","href":"https://razorpay.com/docs/sg"},{"version":"United States","href":"https://razorpay.com/docs/us"}]},"basePath":"","title":"Guidelines for SSL Certificate Rotation - Razorpay","buildId":"dpl_3pZeXn3XukjzFRgAX73A7GNDfRJ1","deploymentId":"dpl_3pZeXn3XukjzFRgAX73A7GNDfRJ1","dynamics":[],"chunks":[]}