{
"message": "Invalid request payload",
"details": [
"field X is required"
]
}
{
"message": "Resource not found"
}
{
"message": "Resource not found"
}
{
"message": "Resource not found"
}
Charging Key Orders
Create charging key order
Orders a charging key for the given user. Requires the product to be configured on Plugsurfing side. Therefore, we ask you to reach out to us before using it.
This endpoint allows you to order a charging key for a specific user. To prevent duplicate orders, ordering charging keys for a single user is throttled to 1 order every 5 minutes. This is a safety measure to avoid accidental double-clicks on the order button, preventing the user from being charged twice. If the user exceeds this limit, a 429 - Too Many Requests HTTP response will be returned.
If Stripe payment requires a 3DS authentication, this field will be populated with the clientSecret from Stripe, which should be sent back to client side Stripe SDK for user authentication.
Example:
"pi_1J5J9v3sZvKYlo2C5J9v2eZv"
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Plugsurfing Developer","description":"Learn more about Plugsurfing's integration products, Drive API and Roam OCPI.","colors":{"primary":"#5D52DF","light":"#AFBEFB","dark":"#5D52DF"},"logo":{"light":"https://mintcdn.com/plugsurfing/ay5jxu8M27_-_9fk/images/onwhite.svg?fit=max\u0026auto=format\u0026n=ay5jxu8M27_-_9fk\u0026q=85\u0026s=7ec646a54bf62ff532848b6bddd19e22","dark":"https://mintcdn.com/plugsurfing/ay5jxu8M27_-_9fk/images/onblack.svg?fit=max\u0026auto=format\u0026n=ay5jxu8M27_-_9fk\u0026q=85\u0026s=4824e58d5186723bd365ba31b553e0c9"},"favicon":{"light":"https://mintcdn.com/plugsurfing/G3iCV0mKf6ZjNRoL/images/Favicon.png?fit=max\u0026auto=format\u0026n=G3iCV0mKf6ZjNRoL\u0026q=85\u0026s=52c0701b686a92fbb2858056e2b60b8d","dark":"https://mintcdn.com/plugsurfing/G3iCV0mKf6ZjNRoL/images/Favicon.png?fit=max\u0026auto=format\u0026n=G3iCV0mKf6ZjNRoL\u0026q=85\u0026s=52c0701b686a92fbb2858056e2b60b8d"},"appearance":{"default":"light","strict":true},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"plugsurfing","hasAudioNarration":false,"actualSubdomain":"plugsurfing","customDomains":["developer.plugsurfing.com"],"gitSource":{"type":"github","owner":"plugsurfing","repo":"drive-api-docs-mintlify","deployBranch":"master","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af2e49f7a7ae7749a62197e","clientVersion":"0.0.4117","searchFilterCounts":[{"language":"default","tag":"Drive API","count":88},{"language":"default","tag":"API reference","count":62},{"language":"default","tag":"Guides","count":36},{"language":"default","tag":"EMP mode","count":24},{"language":"default","tag":"Home","count":12},{"language":"default","tag":"Charging","count":12},{"language":"default","tag":"Charging keys","count":12},{"language":"default","tag":"Roam OCPI","count":12},{"language":"default","tag":"Network","count":11},{"language":"default","tag":"Payments","count":10}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[],"googleFontsInlined":false},"customCss":[{"filePath":"styles.css","content":"#content table{border:1px solid #d9dce1!important;border-collapse:collapse!important;width:100%}#content table th,#content table td{border:1px solid #d9dce1!important;padding:0.75rem 1.25rem;text-align:left;vertical-align:top}#content table th{background:#f8f9fb;color:#343a43;font-weight:600}#content p,#content li{font-size:0.95rem;line-height:1.5}#content h1{font-size:2.25rem;line-height:1.15}#content h2{font-size:1.6rem;line-height:1.25}#content h3{font-size:1.3rem;line-height:1.3}#content table,#content table th,#content table td{font-size:0.9rem;line-height:1.4}html[data-current-path=\"/docs/roam-ocpi/module-overview\"] #content table th:nth-child(1),html[data-current-path=\"/docs/roam-ocpi/module-overview\"] #content table td:nth-child(1){white-space:nowrap;width:22%}html[data-current-path=\"/docs/roam-ocpi/module-overview\"] #content table th:nth-child(2),html[data-current-path=\"/docs/roam-ocpi/module-overview\"] #content table td:nth-child(2),html[data-current-path=\"/docs/roam-ocpi/module-overview\"] #content table th:nth-child(3),html[data-current-path=\"/docs/roam-ocpi/module-overview\"] #content table td:nth-child(3){text-align:center;white-space:nowrap;width:10%}html[data-current-path=\"/changelog\"] #content [data-component-part=\"update-content\"] h2:first-child{color:#5d52df;font-size:1.5rem;line-height:1.25;margin:0}html[data-current-path=\"/changelog\"] #content [data-component-part=\"update-content\"] h2:first-child+p,html[data-current-path=\"/changelog\"] #content [data-component-part=\"update-content\"] h2:first-child+span[data-as=\"p\"]{border-bottom:1px solid #d9dce1;color:#68707d;font-size:0.95rem;font-style:normal;margin:0.5rem 0 1.25rem;padding-bottom:0.75rem;text-align:left}html[data-current-path=\"/changelog\"] #content [data-component-part=\"update-content\"] p,html[data-current-path=\"/changelog\"] #content [data-component-part=\"update-content\"] span[data-as=\"p\"]{font-size:1rem;line-height:1.6}#content-side-layout,#sidebar-content{width:16rem}#content-area{padding:0 3rem 0 3rem}#content-container>div:first-of-type{gap:0}#table-of-contents-layout{padding-left:0}.link:not(.nav-tabs-item){position:relative;color:#5d52df!important;font-weight:600;text-decoration:none!important;border-bottom:none!important}.link:not(.nav-tabs-item)::after{content:\"\";position:absolute;right:0;bottom:-3px;left:0;height:1px;background-color:currentColor;transform:scaleX(0);transform-origin:left;transition:transform 180ms ease,\n color 180ms ease}.link:not(.nav-tabs-item):hover{color:#4a40c7!important}.link:not(.nav-tabs-item):hover::after{transform:scaleX(1)}.link:not(.nav-tabs-item):active{color:#3d34ad!important}.link:not(.nav-tabs-item):focus-visible{outline:1px solid rgba(93, 82, 223, 0.35);outline-offset:4px;border-radius:3px}"}],"page":{"pagePath":"reference/createChargingKeyOrder","slug":"/reference/createChargingKeyOrder","pageMetadata":{"title":"Create charging key order","description":"Orders a charging key for the given user. Requires the product to be configured on Plugsurfing side. Therefore, we ask you to reach out to us before using it.","openapi":"reference/openapi.json POST /drive/v1/users/{userId}/charging-keys/orders","href":"/reference/createChargingKeyOrder"},"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: \"Orders a charging key for the given user. Requires the product to be configured on Plugsurfing side. Therefore, we ask you to reach out to us before using it.\"\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}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Create charging key order","description":"Orders a charging key for the given user. Requires the product to be configured on Plugsurfing side. Therefore, we ask you to reach out to us before using it.","openapi":"reference/openapi.json POST /drive/v1/users/{userId}/charging-keys/orders","href":"/reference/createChargingKeyOrder"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Charging Key Orders"],"summary":"Create charging key order","description":"Orders a charging key for the given user. Requires the product to be configured on Plugsurfing side. Therefore, we ask you to reach out to us before using it.","operationId":"createChargingKeyOrder","parameters":["b1286c85-e14d-450f-b9c0-cb7304c05e57"],"requestBody":"9640bd59-d66e-4fee-9d04-702f60ea3b8a","responses":{"200":"d75f870e-b702-4445-bba9-981a2372aba5","400":"10b764de-2331-46a5-9626-3c0936da8ec0","404":"147e69d7-1d9f-459b-a088-dcadcd5cabbc","429":"e25c28ab-5fdf-4982-892a-61e04d8fbcd6","500":"d6e84b80-a5fc-41c9-b7b3-4f65bf8dffa1"},"deprecated":false,"security":["6be6929f-fbcd-4968-9f96-9b99894d0266"],"method":"post","type":"path","servers":["639daa5e-1812-4077-a571-64f6d834a6ad"],"path":"/drive/v1/users/{userId}/charging-keys/orders","baseUrlOptions":["https://{environment}.plugsurfing.com"],"title":"Create charging key order","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"b1286c85-e14d-450f-b9c0-cb7304c05e57":{"name":"userId","in":"path","example":"6f36dc9b-446f-462b-aae0-95c7636d5c6c","required":true,"schema":{"type":"string","isRequired":true,"uniqueKey":"","typeLabel":"string"}}},"requestBody":{"content":{"application/json":{"schema":{"title":"ChargingKeyOrderRequest","description":"This endpoint allows you to order a charging key for a specific user. To prevent duplicate orders, ordering charging keys for a single user is throttled to 1 order every 5 minutes. This is a safety measure to avoid accidental double-clicks on the order button, preventing the user from being charged twice. If the user exceeds this limit, a `429 - Too Many Requests` HTTP response will be returned.","type":"object","required":["address","taxationCountry"],"properties":{"address":{"title":"ChargingKeyOrderAddressRequest","type":"object","required":["addressLine1","postalCode","city","country"],"properties":{"addressLine1":{"type":"string","minLength":1,"maxLength":100,"example":"Automation road 1","description":"Primary street address line.","isRequired":true,"uniqueKey":"address.addressLine1","typeLabel":"string"},"postalCode":{"type":"string","minLength":1,"maxLength":10,"example":"EV1234","description":"Postal or ZIP code.","isRequired":true,"uniqueKey":"address.postalCode","typeLabel":"string"},"city":{"type":"string","minLength":1,"maxLength":50,"example":"Spark City","description":"City name.","isRequired":true,"uniqueKey":"address.city","typeLabel":"string"},"country":{"type":"string","minLength":1,"maxLength":41,"example":"SE","description":"Country code in ISO 3166-1 alpha-2 format.","isRequired":true,"uniqueKey":"address.country","typeLabel":"string"},"companyName":{"type":"string","maxLength":130,"example":"Plugsurfing","description":"Company name for business delivery addresses.","uniqueKey":"address.companyName","typeLabel":"string"},"firstName":{"type":"string","maxLength":130,"example":"John","description":"Recipient first name.","uniqueKey":"address.firstName","typeLabel":"string"},"lastName":{"type":"string","maxLength":130,"example":"Drive","description":"Recipient last name.","uniqueKey":"address.lastName","typeLabel":"string"},"addressLine2":{"type":"string","example":"Park spot 1","description":"Secondary address line such as apartment or suite.","uniqueKey":"address.addressLine2","typeLabel":"string"}},"description":"Shipping address for the ordered charging key.","isRequired":true,"uniqueKey":"address","typeLabel":"ChargingKeyOrderAddressRequest · object"},"taxationCountry":{"type":"string","maxLength":2,"example":"SE","description":"Two-letter taxation country code","isRequired":true,"uniqueKey":"taxationCountry","typeLabel":"string"},"paymentOptionId":{"type":"string","example":"STRIPE-6738556949187507","description":"Stripe payment option id. If not passed, a default one is used.","uniqueKey":"paymentOptionId","typeLabel":"string"}},"example":{"taxationCountry":"SE","paymentOptionId":"STRIPE-6738556949187507","address":{"addressLine1":"Test, don't send","postalCode":"01-111","city":"Test","country":"PL","firstName":"Will","lastName":"Smith","companyName":"Plugsurfing"}},"uniqueKey":"","typeLabel":"ChargingKeyOrderRequest · object"},"example":{"productId":"physical-rfid-key","quantity":1,"address":{"line1":"Kungsgatan 1","line2":"Floor 2","city":"Stockholm","postalCode":"11143","countryCode":"SE","firstName":"Olivier","lastName":"Payen","company":"Plugsurfing"}},"examples":{"Example":{"title":"Example","value":{"productId":"physical-rfid-key","quantity":1,"address":{"line1":"Kungsgatan 1","line2":"Floor 2","city":"Stockholm","postalCode":"11143","countryCode":"SE","firstName":"Olivier","lastName":"Payen","company":"Plugsurfing"}}}},"exampleType":"examples"}},"required":true,"exampleType":"examples"},"responses":{"d75f870e-b702-4445-bba9-981a2372aba5":{"description":"OK","content":{"application/json":{"schema":{"title":"ChargingKeyOrderResponse","type":"object","required":["id","state"],"properties":{"id":{"type":"string","example":"9aE20Rmj0v","description":"Unique identifier of the created charging key order.","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"state":{"type":"string","enum":["ORDER_FILLED","ORDER_CANCELLED","ORDER_PROCESSING","ORDER_WAITING_3DS","ORDER_PAYMENT_FAILED","ORDER_REFUND_FAILED","ORDER_REFUNDED","ORDER_PLACED","ORDER_PAID"],"example":"ORDER_PLACED","description":"Current lifecycle state of the charging key order.","isRequired":true,"uniqueKey":"state","typeLabel":"enum\u003cstring>"},"clientSecret":{"type":"string","example":"pi_1J5J9v3sZvKYlo2C5J9v2eZv","description":"If Stripe payment requires a 3DS authentication, this field will be populated with the clientSecret from Stripe, which should be sent back to client side Stripe SDK for user authentication.","uniqueKey":"clientSecret","typeLabel":"string"}},"description":"Result returned after creating a charging key order.","uniqueKey":"","typeLabel":"ChargingKeyOrderResponse · object"},"example":{"id":"9aE20Rmj0v","state":"ORDER_PLACED","clientSecret":"pi_1J5J9v3sZvKYlo2C5J9v2eZv"},"examples":{"Example":{"title":"Example","value":{"id":"9aE20Rmj0v","state":"ORDER_PLACED","clientSecret":"pi_1J5J9v3sZvKYlo2C5J9v2eZv"}}},"exampleType":"examples"}},"exampleType":"examples"},"10b764de-2331-46a5-9626-3c0936da8ec0":{"description":"The provided query parameters, route parameters or body is invalid.","content":{"application/json":{"schema":{"title":"InvalidRequestErrorResponse","type":"object","required":["message","fields"],"properties":{"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"fields":{"type":"array","items":{"title":"InvalidField","type":"object","required":["name","message","rejectedValue"],"properties":{"name":{"type":"string","isRequired":true,"uniqueKey":"fields.items.[INDEX].name","typeLabel":"string"},"message":{"type":"string","example":"UserId is not correct","isRequired":true,"uniqueKey":"fields.items.[INDEX].message","typeLabel":"string"},"rejectedValue":{"type":"string","isRequired":true,"uniqueKey":"fields.items.[INDEX].rejectedValue","typeLabel":"string"}},"uniqueKey":"fields.items.[INDEX]","typeLabel":"InvalidField · object"},"isRequired":true,"uniqueKey":"fields","typeLabel":"InvalidField · object[]"}},"uniqueKey":"","typeLabel":"InvalidRequestErrorResponse · object"},"example":{"message":"Invalid request payload","details":["field X is required"]},"examples":{"Example":{"title":"Example","value":{"message":"Invalid request payload","details":["field X is required"]}}},"exampleType":"examples"}},"exampleType":"examples"},"147e69d7-1d9f-459b-a088-dcadcd5cabbc":{"description":"User not found","content":{"application/json":{"schema":{"title":"ErrorResponse","type":"object","properties":{"message":{"type":"string","uniqueKey":"message","typeLabel":"string"}},"uniqueKey":"","typeLabel":"ErrorResponse · object"},"example":{"message":"Resource not found"},"examples":{"Example":{"title":"Example","value":{"message":"Resource not found"}}},"exampleType":"examples"}},"exampleType":"examples"},"e25c28ab-5fdf-4982-892a-61e04d8fbcd6":{"description":"Too many requests — a given user can't order more than 1 card every 5 minutes.","content":{"application/json":{"schema":{"title":"ErrorResponse","type":"object","properties":{"message":{"type":"string","uniqueKey":"message","typeLabel":"string"}},"uniqueKey":"","typeLabel":"ErrorResponse · object"},"example":{"message":"Resource not found"},"examples":{"Example":{"title":"Example","value":{"message":"Resource not found"}}},"exampleType":"examples"}},"exampleType":"examples"},"d6e84b80-a5fc-41c9-b7b3-4f65bf8dffa1":{"description":"Internal Server Error","content":{"application/json":{"schema":{"title":"ErrorResponse","type":"object","properties":{"message":{"type":"string","uniqueKey":"message","typeLabel":"string"}},"uniqueKey":"","typeLabel":"ErrorResponse · object"},"example":{"message":"Resource not found"},"examples":{"Example":{"title":"Example","value":{"message":"Resource not found"}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"6be6929f-fbcd-4968-9f96-9b99894d0266":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"X-API-Key","description":"API key for authentication","scopes":[],"schemeName":"ApiKeyAuth"}}},"servers":{"639daa5e-1812-4077-a571-64f6d834a6ad":{"url":"https://{environment}.plugsurfing.com","variables":{"environment":{"enum":["drive-api-stage"],"default":"drive-api-stage","description":"API environment - use drive-api-stage for testing and drive-api for production"}}}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"X-API-Key","description":"API key for authentication","scopes":[],"schemeName":"ApiKeyAuth"},"schema":{"title":"X-API-Key","type":"string","description":"API key for authentication","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"ApiKeyAuth","name":"X-API-Key"}],"title":"ApiKeyAuth"}]},"originalFileLocation":"reference/openapi.json"},"subdomain":"plugsurfing","siteName":"Plugsurfing Developer","title":"Create charging key order - Plugsurfing Developer","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-07-29T12:11:21.139Z","originalFileLocation":"reference/createChargingKeyOrder.md"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"light\";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=\"light\"}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=\"Orders a charging key for the given user. Requires the product to be configured on Plugsurfing side. Therefore, we ask you to reach out to us before using it.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Plugsurfing Developer\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/plugsurfing/8f0OJHg-03LG87aL/_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=\"/mintlify-assets/_mintlify/favicons/plugsurfing/8f0OJHg-03LG87aL/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/plugsurfing/8f0OJHg-03LG87aL/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/plugsurfing/8f0OJHg-03LG87aL/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/plugsurfing/8f0OJHg-03LG87aL/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/plugsurfing/8f0OJHg-03LG87aL/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/plugsurfing/8f0OJHg-03LG87aL/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/plugsurfing/8f0OJHg-03LG87aL/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/plugsurfing/8f0OJHg-03LG87aL/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create charging key order - Plugsurfing Developer\">\u003cmeta data-mint-head property=\"og:description\" content=\"Orders a charging key for the given user. Requires the product to be configured on Plugsurfing side. Therefore, we ask you to reach out to us before using it.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Plugsurfing Developer\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://developer.plugsurfing.com/reference/createChargingKeyOrder\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://plugsurfing.mintlify.site/_mintlify/api/og/v2?division=Charging+Key+Orders\u0026amp;title=Create+charging+key+order\u0026amp;description=Orders+a+charging+key+for+the+given+user.+Requires+the+product+to+be+configured+on+Plugsurfing+side.+Therefore%2C+we+ask+you+to+reach+out+to+us+before+using+it.\u0026amp;theme=e9b2b9ce635785bfd6c52239\u0026amp;signature=d542d701e97fc908c1c59dc1e733ab9fee72a666c54d2b2df2abdb98801ea8e8\">\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=\"Create charging key order - Plugsurfing Developer\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Orders a charging key for the given user. Requires the product to be configured on Plugsurfing side. Therefore, we ask you to reach out to us before using it.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://plugsurfing.mintlify.site/_mintlify/api/og/v2?division=Charging+Key+Orders\u0026amp;title=Create+charging+key+order\u0026amp;description=Orders+a+charging+key+for+the+given+user.+Requires+the+product+to+be+configured+on+Plugsurfing+side.+Therefore%2C+we+ask+you+to+reach+out+to+us+before+using+it.\u0026amp;theme=e9b2b9ce635785bfd6c52239\u0026amp;signature=d542d701e97fc908c1c59dc1e733ab9fee72a666c54d2b2df2abdb98801ea8e8\">\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=\"/mintlify-assets/_mintlify/favicons/plugsurfing/8f0OJHg-03LG87aL/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Plugsurfing Developer\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#5D52DF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://developer.plugsurfing.com/reference/createChargingKeyOrder\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/reference/createChargingKeyOrder.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://developer.plugsurfing.com/#organization\",\"name\":\"Plugsurfing Developer\",\"url\":\"https://developer.plugsurfing.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/plugsurfing/ay5jxu8M27_-_9fk/images/onwhite.svg?fit=max\u0026auto=format\u0026n=ay5jxu8M27_-_9fk\u0026q=85\u0026s=7ec646a54bf62ff532848b6bddd19e22\"}},{\"@type\":\"WebSite\",\"@id\":\"https://developer.plugsurfing.com#website\",\"name\":\"Plugsurfing Developer\",\"url\":\"https://developer.plugsurfing.com\",\"publisher\":{\"@id\":\"https://developer.plugsurfing.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://developer.plugsurfing.com/reference/createChargingKeyOrder#webpage\",\"url\":\"https://developer.plugsurfing.com/reference/createChargingKeyOrder\",\"name\":\"Create charging key order\",\"description\":\"Orders a charging key for the given user. Requires the product to be configured on Plugsurfing side. Therefore, we ask you to reach out to us before using it.\",\"dateModified\":\"2026-07-29T12:11:21.139Z\",\"isPartOf\":{\"@id\":\"https://developer.plugsurfing.com#website\"},\"breadcrumb\":{\"@id\":\"https://developer.plugsurfing.com/reference/createChargingKeyOrder#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://developer.plugsurfing.com/reference/createChargingKeyOrder#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"API reference\",\"item\":\"https://developer.plugsurfing.com/reference/searchLocationsByRectangle\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Charging keys\",\"item\":\"https://developer.plugsurfing.com/reference/activateUserChargingKey\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Create charging key order\",\"item\":\"https://developer.plugsurfing.com/reference/createChargingKeyOrder\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://developer.plugsurfing.com/reference/createChargingKeyOrder#apireference\",\"headline\":\"Create charging key order\",\"name\":\"Create charging key order\",\"description\":\"Orders a charging key for the given user. Requires the product to be configured on Plugsurfing side. Therefore, we ask you to reach out to us before using it.\",\"url\":\"https://developer.plugsurfing.com/reference/createChargingKeyOrder\",\"mainEntityOfPage\":{\"@id\":\"https://developer.plugsurfing.com/reference/createChargingKeyOrder#webpage\"},\"dateModified\":\"2026-07-29T12:11:21.139Z\",\"publisher\":{\"@id\":\"https://developer.plugsurfing.com/#organization\"},\"isPartOf\":{\"@id\":\"https://developer.plugsurfing.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Plugsurfing Developer\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Plugsurfing Developer\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/reference/createChargingKeyOrder.md","siteName":"Plugsurfing Developer","nav":{"global":null,"tabs":[{"tab":"Home","pages":[{"title":"Home","href":"/home"}]},{"tab":"Drive API","groups":[{"group":"Guides","icon":"book-open","pages":[{"title":"About Drive API","href":"/docs/drive-api/about-drive-api"},{"group":"Getting started","pages":[{"title":"Getting started","href":"/docs/drive-api/getting-started-with-drive-api"},{"title":"AI Integration Playbook","deprecated":false,"href":"/docs/drive-api/ai-integration-playbook"},{"title":"API key access \u0026 security","href":"/docs/drive-api/authorization"},{"title":"EMP mode","deprecated":false,"hidden":false,"href":"/docs/drive-api/emp"},{"title":"MCP for AI agents","href":"/docs/drive-api/mcp-for-ai-agents"},{"title":"Verifying HMAC signature","href":"/docs/drive-api/verifying-hmac-signature"},{"title":"Webhooks","deprecated":false,"href":"/docs/drive-api/webhooks"},{"title":"Drive API control panel","href":"/docs/drive-api/drive-api-control-panel"}]},{"group":"Network","pages":[{"title":"Geosearch","href":"/docs/drive-api/geosearch"},{"title":"Integrating geosearch with client maps","deprecated":false,"href":"/docs/drive-api/geosearch-map-integration"},{"title":"Tesla specific requirements","href":"/docs/drive-api/tesla-specific"},{"title":"Mirroring the Plugsurfing network in your system","href":"/untitled-page-2"}]},{"group":"Users","pages":[{"title":"Users","deprecated":false,"href":"/docs/drive-api/user"},{"title":"User groups","href":"/docs/drive-api/user-groups"}]},{"group":"Charging keys","pages":[{"title":"Charging Keys","deprecated":false,"hidden":false,"href":"/docs/drive-api/charging-keys"},{"title":"Plug\u0026Charge","deprecated":false,"hidden":false,"href":"/docs/drive-api/plug-and-charge"}]},{"group":"Payments","pages":[{"title":"Payment integration options","deprecated":false,"href":"/docs/drive-api/payment-integrations"},{"title":"Payments with Plugsurfing's PSP","deprecated":false,"href":"/docs/drive-api/payments"},{"title":"Vouchers","deprecated":false,"href":"/docs/drive-api/vouchers"}]},{"group":"Charging","pages":[{"title":"Sessions","deprecated":false,"hidden":false,"href":"/docs/drive-api/sessions"},{"title":"Session pre-authorization","deprecated":false,"href":"/docs/drive-api/session-pre-authorization"},{"title":"Events","deprecated":false,"href":"/docs/drive-api/events"},{"title":"CDR forwarding","href":"/docs/drive-api/cdr"}]},{"group":"Fleets","pages":[{"title":"Fleet Card Orders","deprecated":false,"hidden":false,"href":"/docs/drive-api/fleet-card-orders"},{"title":"Fleet Management","deprecated":false,"href":"/docs/drive-api/fleet-management"}]}]},{"group":"API reference","icon":"square-terminal","pages":[{"group":"Network","pages":[{"group":"Geosearch","expanded":false,"pages":[{"title":"Rectangle search","openapi":"reference/openapi.json POST /drive/v1/geosearch/rectangle","href":"/reference/searchLocationsByRectangle"},{"title":"Radius search","openapi":"reference/openapi.json POST /drive/v1/geosearch/radius","href":"/reference/searchLocationsByRadius"},{"title":"Route search","openapi":"reference/openapi.json POST /drive/v1/geosearch/route","href":"/reference/searchLocationsByRoute"},{"title":"Get location by id","openapi":"reference/openapi.json GET /drive/v1/locations/{locationId}","href":"/reference/getLocationById"},{"title":"Get location live data","openapi":"reference/openapi.json GET /drive/v1/locations/{locationId}/live-data","href":"/reference/getLocationLiveData"},{"title":"Batch locations","openapi":"reference/openapi.json GET /drive/v1/locations/batch","href":"/reference/getLocationsBatch"},{"title":"Get list of operators","openapi":"reference/openapi.json GET /drive/v1/locations/operators","href":"/reference/listOperators"}]}]},{"group":"Users","expanded":false,"pages":[{"title":"Create user","openapi":"reference/openapi.json POST /drive/v1/users","href":"/reference/createUser"},{"title":"Read user details","openapi":"reference/openapi.json GET /drive/v1/users/{userId}","href":"/reference/getUser"},{"title":"Update user details","openapi":"reference/openapi.json PATCH /drive/v1/users/{userId}","href":"/reference/updateUser"},{"title":"Remove user","openapi":"reference/openapi.json DELETE /drive/v1/users/{userId}","href":"/reference/deleteUser"},{"group":"User Groups","expanded":false,"pages":[{"title":"Add user to user group","openapi":"reference/openapi.json POST /drive/v1/users/{userId}/user-groups/{groupId}","href":"/reference/createUserGroupMembership"},{"title":"Remove user from user group","openapi":"reference/openapi.json DELETE /drive/v1/users/{userId}/user-groups/{groupId}","href":"/reference/deleteUserGroupMembership"}]}]},{"group":"Charging keys","expanded":false,"pages":[{"title":"Activate a charging key","openapi":"reference/openapi.json POST /drive/v1/users/{userId}/charging-keys/{referenceId}/activate","href":"/reference/activateUserChargingKey"},{"title":"Edit a charging key","openapi":"reference/openapi.json PATCH /drive/v1/users/{userId}/charging-keys/{identifier}","href":"/reference/updateUserChargingKey"},{"title":"Get user's charging keys","openapi":"reference/openapi.json GET /drive/v1/users/{userId}/charging-keys","href":"/reference/listUserChargingKeys"},{"title":"Create a charging key","openapi":"reference/openapi.json POST /drive/v1/users/{userId}/charging-keys","href":"/reference/createUserChargingKey"},{"title":"Create a Plug\u0026Charge key","openapi":"reference/openapi.json POST /drive/v1/users/{userId}/charging-keys/plug-and-charge","href":"/reference/createPncChargingKey"},{"title":"Reserve a charging key","description":"Create connection between uid (physical chip id) and visualNumber (called later 'referenceId'), so that the latter can be used for activation.","openapi":"reference/openapi.json POST /drive/v1/charging-keys/reservations","href":"/reference/createChargingKeyReservation"},{"group":"Charging Key Orders","expanded":false,"pages":[{"title":"Create charging key order","openapi":"reference/openapi.json POST /drive/v1/users/{userId}/charging-keys/orders","href":"/reference/createChargingKeyOrder"},{"title":"Get list of charging key orders","description":"Returns the list of ordered charging keys by a given user.","openapi":"reference/openapi.json GET /drive/v1/users/{userId}/charging-keys/orders","href":"/reference/listChargingKeyOrders"},{"title":"Get order receipt URL","openapi":"reference/openapi.json GET /drive/v1/users/{userId}/charging-keys/orders/{orderId}/receipt","href":"/reference/getChargingKeyOrderReceiptUrl"},{"title":"Get pricing information per country","openapi":"reference/openapi.json GET /drive/v1/charging-keys/orders/configuration","href":"/reference/getChargingKeyOrderConfiguration"}]}]},{"group":"Payments","pages":[{"group":"Payment Options","expanded":false,"pages":[{"title":"Get user's payment methods","openapi":"reference/openapi.json GET /drive/v1/users/{userId}/payment-options","href":"/reference/listPaymentOptions"},{"title":"Add a new payment method","openapi":"reference/openapi.json POST /drive/v1/users/{userId}/payment-options","href":"/reference/createPaymentOption"},{"title":"Get Stripe SetupIntent to confirm a payment method","openapi":"reference/openapi.json GET /drive/v1/users/{userId}/payment-options/stripe-setup-intent","href":"/reference/createStripeSetupIntent"},{"title":"Delete user's payment option","openapi":"reference/openapi.json DELETE /drive/v1/users/{userId}/payment-options/{id}","href":"/reference/deletePaymentOption"},{"title":"Get user's prepaid balance","openapi":"reference/openapi.json GET /drive/v1/users/{userId}/prepaid","href":"/reference/listPrepaid"},{"title":"Get Stripe publishable API key","openapi":"reference/openapi.json GET /emp/v1/payment-options/stripe/publishable-api-key","href":"/reference/getStripePublishableApiKey"}]},{"group":"Vouchers","expanded":false,"pages":[{"title":"Redeem a voucher code","openapi":"reference/openapi.json POST /drive/v1/users/{userId}/vouchers/{code}/redeem","href":"/reference/redeem"}]}]},{"group":"Charging","expanded":false,"pages":[{"title":"Get charging session history","openapi":"reference/openapi.json POST /drive/v1/users/{userId}/sessions/history","href":"/reference/listSessions"},{"title":"Get details of a specific charging session","openapi":"reference/openapi.json GET /drive/v1/users/{userId}/sessions/{sessionId}","href":"/reference/getSessionById"},{"title":"Get a session receipt by session id","openapi":"reference/openapi.json GET /drive/v1/users/{userId}/sessions/{sessionId}/receipt","href":"/reference/getSessionReceipt"},{"title":"Retry session payment","openapi":"reference/openapi.json POST /drive/v1/users/{userId}/sessions/{sessionId}/payments/retry","href":"/reference/retrySessionPayment"},{"group":"Remote Charging","expanded":false,"pages":[{"title":"Start a remote charging session","openapi":"reference/openapi.json POST /drive/v1/users/{userId}/sessions/start","href":"/reference/startRemoteSession"},{"title":"Stop a remote charging session","openapi":"reference/openapi.json POST /drive/v1/users/{userId}/sessions/{sessionId}/stop","href":"/reference/stopRemoteSession"}]},{"group":"Session Events","expanded":false,"pages":[{"title":"Receive Session Event","openapi":"reference/openapi.json webhook sessionEventsWebhook","href":"/reference/sessionEventsWebhook"}]},{"group":"CDR Forwarding","expanded":false,"pages":[{"title":"Receive Forwarded CDR","openapi":"reference/openapi.json webhook cdrForwardingWebhook","href":"/reference/cdrForwardingWebhook"}]}]},{"group":"EMP mode","pages":[{"group":"EMP Geosearch","expanded":false,"pages":[{"title":"Search locations around a point","openapi":"reference/openapi.json POST /emp/v1/geosearch/radius","href":"/reference/searchEmpLocationsByRadius"},{"title":"Search locations within a rectangle","openapi":"reference/openapi.json POST /emp/v1/geosearch/rectangle","href":"/reference/searchEmpLocationsByRectangle"},{"title":"Search for locations along a route","openapi":"reference/openapi.json POST /emp/v1/geosearch/route","href":"/reference/searchEmpLocationsByRoute"},{"title":"Get location by id","openapi":"reference/openapi.json GET /emp/v1/locations/{locationId}","href":"/reference/getEmpLocationById"},{"title":"Get location live data","openapi":"reference/openapi.json GET /emp/v1/locations/{locationId}/live-data","href":"/reference/getEmpLocationLiveData"},{"title":"Get batch of locations","openapi":"reference/openapi.json GET /emp/v1/locations/batch","href":"/reference/getEmpLocationsBatch"}]},{"group":"EMP Orders","expanded":false,"pages":[{"title":"List available products","openapi":"reference/openapi.json GET /emp/v1/products","href":"/reference/getEmpProducts"},{"title":"Create a fleet charging key order","openapi":"reference/openapi.json POST /emp/v1/orders","href":"/reference/createEmpChargingKeyOrder"},{"title":"Fetch charging key orders","openapi":"reference/openapi.json GET /emp/v1/orders","href":"/reference/listEmpChargingKeyOrders"},{"title":"Fetch a charging key order","openapi":"reference/openapi.json GET /emp/v1/orders/{orderId}","href":"/reference/getEmpChargingKeyOrder"},{"title":"Mark an order as 'Assigned'","openapi":"reference/openapi.json POST /emp/v1/orders/{orderId}/assign","href":"/reference/assignEmpChargingKeyOrder"}]},{"group":"EMP Fleets","expanded":false,"pages":[{"title":"Create a fleet","openapi":"reference/openapi.json POST /emp/v1/fleets","href":"/reference/createFleet"},{"title":"Rename a fleet","openapi":"reference/openapi.json PUT /emp/v1/fleets/{fleetId}/rename","href":"/reference/renameFleet"},{"title":"Get fleet invitation codes","openapi":"reference/openapi.json GET /emp/v1/fleets/{fleetId}/invitation","href":"/reference/getFleetInvitationCodes"}]},{"group":"EMP Charging Keys","expanded":false,"pages":[{"title":"Get charging keys","openapi":"reference/openapi.json GET /emp/v1/charging-keys","href":"/reference/listEmpChargingKeys"},{"title":"Create a charging key","openapi":"reference/openapi.json POST /emp/v1/charging-keys","href":"/reference/createEmpChargingKey"},{"title":"Rename a charging key","openapi":"reference/openapi.json PUT /emp/v1/charging-keys/{keyIdentifier}/rename","href":"/reference/renameEmpChargingKey"},{"title":"Enable charging key","openapi":"reference/openapi.json PUT /emp/v1/charging-keys/{keyIdentifier}/enable","href":"/reference/enableEmpChargingKey"},{"title":"Disable charging key","openapi":"reference/openapi.json PUT /emp/v1/charging-keys/{keyIdentifier}/disable","href":"/reference/disableEmpChargingKey"},{"title":"Transfer a charging key","openapi":"reference/openapi.json PUT /emp/v1/charging-keys/{keyIdentifier}/transfer","href":"/reference/transferEmpChargingKey"}]},{"group":"EMP Sessions","expanded":false,"pages":[{"title":"Start a remote session","openapi":"reference/openapi.json POST /emp/v1/sessions/start","href":"/reference/startRemoteSessionEmp"},{"title":"Stop a remote session","openapi":"reference/openapi.json POST /emp/v1/sessions/{sessionId}/stop","href":"/reference/stopRemoteSessionEmp"},{"title":"Get a session receipt by session id","openapi":"reference/openapi.json GET /emp/v1/sessions/{sessionId}/receipt","href":"/reference/getSessionReceiptEmp"},{"title":"Get session by id","openapi":"reference/openapi.json GET /emp/v1/sessions/{sessionId}","href":"/reference/getSessionByIdEmp"}]}]}]}]},{"tab":"Roam OCPI","pages":[{"title":"Roam OCPI","href":"/docs/roam-ocpi/about-roam-ocpi"}]}]},"basePath":"","title":"Create charging key order - Plugsurfing Developer","buildId":"dpl_41S5Z2jG9QnfDRwN1KZrLdBwj7DM","deploymentId":"dpl_41S5Z2jG9QnfDRwN1KZrLdBwj7DM","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-DDP9JXtj.js","utils-8yQyvEtx.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-CBCFR8Sn.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-rQaXkUHa.js","snippetPresets-J5KpBTgV.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-BVxVH4Cj.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BxdQ2vIi.js","shallow-BjV2tFiD.js","getApiPlaygroundDisplay-C_55tL4O.js","CodeSnippet-C0JpiCOC.js","CodeSnippets-w9Ps7djG.js","Page-DTNSD-0M.js","getPastedJson-BDfB-H8d.js","icon-g-kUkkO9.js","MethodPill-v4l6fq0h.js","DuplicateIcon-CvLo-CfU.js","createIcon-165clrrV.js","DynamicMarkdown-D3RQ-fEj.js","SectionHeading-vvo-3yLf.js","axios-vUo_bRtp.js","Markdown-CMT1uFWQ.js","clsx-C8f2yC9R.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CI2D8R2Y.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-k78Wrw_e.js"]}