Returns the Ed25519 PUBLIC keys the NF525 fiscal signature chain is sealed with, so an auditor can verify that chain OFFLINE with no secret: take a record’s key id, fetch the matching publicKeyPem here, recompute the link’s canonical body and check the signature. Unauthenticated on purpose — a public key is not a secret, and publishing it is what makes the signature meaningful.
This is a NARROW, auditor-facing read, not a fiscal reporting endpoint: it carries no sales, totals or journal entries. For the Z/X reports, the fiscal journal and the server-side chain verification, use the pos.finance.view-gated /v1/fiscal/* operations instead. Reach for this only when you are verifying signatures yourself and need the key material.
An EMPTY keys array is a normal, successful answer, not a fault: it means the deployment is signing with symmetric HMAC keys, which have no public half to publish. In that case offline verification is simply not available and there is nothing to retry. keyId is the join key — it matches the #<keyId> suffix stamped on every record the key sealed, and a rotated deployment lists several keys at once so an old record still resolves to the key that signed it. The response never contains private material.
GET
/
v1
/
fiscal-keys
Error
A valid request URL is required to generate request examples
{ "keys": [ { "keyId": "ed-1", "algorithm": "ed25519-v3", "publicKeyPem": "-----BEGIN PUBLIC KEY-----\nMCowBQYDK2VwAyEA…\n-----END PUBLIC KEY-----\n" } ]}
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Solya POS Docs","description":"Documentation for Solya POS — the Centrale back-office, the Caisse point-of-sale, and the REST API.","colors":{"primary":"#7367F0","light":"#8F85F3","dark":"#675DD8"},"logo":{"light":"https://mintcdn.com/solya-pos/-jF44ACKJ9wNNMCD/images/logo-light.png?fit=max\u0026auto=format\u0026n=-jF44ACKJ9wNNMCD\u0026q=85\u0026s=f4e34e81952858b22c95479dc4bcb8b4","dark":"https://mintcdn.com/solya-pos/-jF44ACKJ9wNNMCD/images/logo-dark.png?fit=max\u0026auto=format\u0026n=-jF44ACKJ9wNNMCD\u0026q=85\u0026s=2e3a7ec3c63e54c6ff549a1afa1a25a0"},"favicon":"https://mintcdn.com/solya-pos/-jF44ACKJ9wNNMCD/images/favicon.svg?fit=max\u0026auto=format\u0026n=-jF44ACKJ9wNNMCD\u0026q=85\u0026s=2bc0fe5039f661a3dc8617855cf55406","navbar":{"links":[{"href":"https://caisse.solya.app","label":"Caisse"},{"href":"https://centrale.solya.app","label":"Centrale"}]},"footer":{"socials":{"website":"https://www.solya.app"}},"styling":{"latex":false},"navigation":{"languages":[{"language":"en","href":"en"},{"language":"fr","href":"fr"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"solya-pos","hasAudioNarration":false,"actualSubdomain":"solya-pos","customDomains":["docs-pos.solya.app"],"gitSource":{"type":"github","owner":"solya-app","repo":"solya-pos","deployBranch":"main","contentDirectory":"docs-site","isPrivate":true,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6a7c0afdf4dde05d267c56a1","collectionId":"3317598b-fb95-4bd6-b828-15039783c77c","liveDeploymentHistoryId":"6a7c0afdf4dde05d267c56a1","schemaVersion":"v3"},"entitlements":{},"buildId":"6a7c0afdf4dde05d267c56a1:success","clientVersion":"0.0.3990","searchFilterCounts":[{"language":"default","tag":"API Reference","count":309},{"language":"default","tag":"Catalogue \u0026 stock","count":124},{"language":"default","tag":"Ventes \u0026 encaissement","count":59},{"language":"default","tag":"Finance","count":52},{"language":"en","tag":"Guides","count":48},{"language":"fr","tag":"Guides","count":48},{"language":"default","tag":"Catalog","count":42},{"language":"default","tag":"Checkout","count":35},{"language":"default","tag":"Système","count":30},{"language":"default","tag":"Network","count":27},{"language":"default","tag":"Procurement","count":26},{"language":"en","tag":"Centrale","count":23},{"language":"fr","tag":"Centrale","count":23},{"language":"default","tag":"Clients \u0026 fidélité","count":21},{"language":"en","tag":"Caisse","count":18},{"language":"fr","tag":"Caisse","count":18},{"language":"en","tag":"Developers","count":10},{"language":"fr","tag":"Développeurs","count":10},{"language":"en","tag":"Get started","count":7},{"language":"fr","tag":"Prise en main","count":7}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"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":"editor-v7-file-tree","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":"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":"pause-universal-search-reconcile","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":"per-site-search-delta","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":"editor-private-page-search","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":"editor-nav-generations","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":"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":"byok-sep-25","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":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","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":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/fiscal/list-the-published-fiscal-verification-keys","slug":"/api-reference/fiscal/list-the-published-fiscal-verification-keys","pageMetadata":{"title":"List the published fiscal verification keys","description":"Returns the Ed25519 PUBLIC keys the NF525 fiscal signature chain is sealed with, so an auditor can verify that chain OFFLINE with no secret: take a record's key id, fetch the matching `publicKeyPem` here, recompute the link's canonical body and check the signature. Unauthenticated on purpose — a public key is not a secret, and publishing it is what makes the signature meaningful.\n\nThis is a NARROW, auditor-facing read, not a fiscal reporting endpoint: it carries no sales, totals or journal entries. For the Z/X reports, the fiscal journal and the server-side chain verification, use the `pos.finance.view`-gated `/v1/fiscal/*` operations instead. Reach for this only when you are verifying signatures yourself and need the key material.\n\nAn EMPTY `keys` array is a normal, successful answer, not a fault: it means the deployment is signing with symmetric HMAC keys, which have no public half to publish. In that case offline verification is simply not available and there is nothing to retry. `keyId` is the join key — it matches the `#\u003ckeyId>` suffix stamped on every record the key sealed, and a rotated deployment lists several keys at once so an old record still resolves to the key that signed it. The response never contains private material.","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal-keys","href":"/api-reference/fiscal/list-the-published-fiscal-verification-keys","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsxs(_components.p, {\n children: [\"Returns the Ed25519 PUBLIC keys the NF525 fiscal signature chain is sealed with, so an auditor can verify that chain OFFLINE with no secret: take a record’s key id, fetch the matching \", _jsx(_components.code, {\n children: \"publicKeyPem\"\n }), \" here, recompute the link’s canonical body and check the signature. Unauthenticated on purpose — a public key is not a secret, and publishing it is what makes the signature meaningful.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"This is a NARROW, auditor-facing read, not a fiscal reporting endpoint: it carries no sales, totals or journal entries. For the Z/X reports, the fiscal journal and the server-side chain verification, use the \", _jsx(_components.code, {\n children: \"pos.finance.view\"\n }), \"-gated \", _jsx(_components.code, {\n children: \"/v1/fiscal/*\"\n }), \" operations instead. Reach for this only when you are verifying signatures yourself and need the key material.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"An EMPTY \", _jsx(_components.code, {\n children: \"keys\"\n }), \" array is a normal, successful answer, not a fault: it means the deployment is signing with symmetric HMAC keys, which have no public half to publish. In that case offline verification is simply not available and there is nothing to retry. \", _jsx(_components.code, {\n children: \"keyId\"\n }), \" is the join key — it matches the \", _jsx(_components.code, {\n children: \"#\u003ckeyId>\"\n }), \" suffix stamped on every record the key sealed, and a rotated deployment lists several keys at once so an old record still resolves to the key that signed it. The response never contains private material.\"]\n })]\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":"List the published fiscal verification keys","description":"Returns the Ed25519 PUBLIC keys the NF525 fiscal signature chain is sealed with, so an auditor can verify that chain OFFLINE with no secret: take a record's key id, fetch the matching `publicKeyPem` here, recompute the link's canonical body and check the signature. Unauthenticated on purpose — a public key is not a secret, and publishing it is what makes the signature meaningful.\n\nThis is a NARROW, auditor-facing read, not a fiscal reporting endpoint: it carries no sales, totals or journal entries. For the Z/X reports, the fiscal journal and the server-side chain verification, use the `pos.finance.view`-gated `/v1/fiscal/*` operations instead. Reach for this only when you are verifying signatures yourself and need the key material.\n\nAn EMPTY `keys` array is a normal, successful answer, not a fault: it means the deployment is signing with symmetric HMAC keys, which have no public half to publish. In that case offline verification is simply not available and there is nothing to retry. `keyId` is the join key — it matches the `#\u003ckeyId>` suffix stamped on every record the key sealed, and a rotated deployment lists several keys at once so an old record still resolves to the key that signed it. The response never contains private material.","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal-keys","href":"/api-reference/fiscal/list-the-published-fiscal-verification-keys","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"listFiscalPublicKeys","summary":"List the published fiscal verification keys","tags":["Fiscal"],"description":"Returns the Ed25519 PUBLIC keys the NF525 fiscal signature chain is sealed with, so an auditor can verify that chain OFFLINE with no secret: take a record's key id, fetch the matching `publicKeyPem` here, recompute the link's canonical body and check the signature. Unauthenticated on purpose — a public key is not a secret, and publishing it is what makes the signature meaningful.\n\nThis is a NARROW, auditor-facing read, not a fiscal reporting endpoint: it carries no sales, totals or journal entries. For the Z/X reports, the fiscal journal and the server-side chain verification, use the `pos.finance.view`-gated `/v1/fiscal/*` operations instead. Reach for this only when you are verifying signatures yourself and need the key material.\n\nAn EMPTY `keys` array is a normal, successful answer, not a fault: it means the deployment is signing with symmetric HMAC keys, which have no public half to publish. In that case offline verification is simply not available and there is nothing to retry. `keyId` is the join key — it matches the `#\u003ckeyId>` suffix stamped on every record the key sealed, and a rotated deployment lists several keys at once so an old record still resolves to the key that signed it. The response never contains private material.","x-agent-tier":"supported","x-required-permissions":[],"responses":{"200":"6d27d0a6-961b-43fb-8573-f16c7999dc30","400":"0a8fbe55-ef70-4407-8392-5d253cf4dddf","500":"1478c7af-7bde-4b99-81ce-394e682abed1"},"method":"get","type":"path","servers":["e916e6f6-9ac8-4670-9030-c73027795f70"],"security":[],"path":"/v1/fiscal-keys","baseUrlOptions":["/"],"title":"List the published fiscal verification keys","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"responses":{"6d27d0a6-961b-43fb-8573-f16c7999dc30":{"description":"The published verification keys; empty when only HMAC keys are configured.","content":{"application/json":{"schema":{"type":"object","properties":{"keys":{"type":"array","items":{"type":"object","properties":{"keyId":{"type":"string","description":"Matches the `#\u003ckeyId>` suffix in the records this key sealed.","isRequired":true,"uniqueKey":"keys.items.[INDEX].keyId","typeLabel":"string"},"algorithm":{"type":"string","description":"The signature scheme label, e.g. `ed25519-v3`.","isRequired":true,"uniqueKey":"keys.items.[INDEX].algorithm","typeLabel":"string"},"publicKeyPem":{"type":"string","description":"The SPKI public-key PEM used to verify a signature.","isRequired":true,"uniqueKey":"keys.items.[INDEX].publicKeyPem","typeLabel":"string"}},"required":["keyId","algorithm","publicKeyPem"],"additionalProperties":false,"uniqueKey":"keys.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"keys","typeLabel":"object[]"}},"required":["keys"],"additionalProperties":false,"description":"The published verification keys; empty when only HMAC keys are configured.","example":{"keys":[{"keyId":"ed-1","algorithm":"ed25519-v3","publicKeyPem":"-----BEGIN PUBLIC KEY-----\nMCowBQYDK2VwAyEA…\n-----END PUBLIC KEY-----\n"}]},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"keys":[{"keyId":"ed-1","algorithm":"ed25519-v3","publicKeyPem":"-----BEGIN PUBLIC KEY-----\nMCowBQYDK2VwAyEA…\n-----END PUBLIC KEY-----\n"}]}}},"exampleType":"generated"}},"exampleType":"generated"},"0a8fbe55-ef70-4407-8392-5d253cf4dddf":{"description":"The request failed schema validation; `error.fieldErrors` lists the fields.","content":{"application/json":{"schema":{"type":"object","required":["error"],"additionalProperties":false,"description":"A `VALIDATION_FAILED` envelope carrying the offending fields in `fieldErrors`.","properties":{"error":{"type":"object","required":["code","message","statusCode"],"additionalProperties":false,"properties":{"code":{"type":"string","enum":["VALIDATION_FAILED"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"statusCode":{"type":"integer","isRequired":true,"uniqueKey":"error.statusCode","typeLabel":"integer"},"fieldErrors":{"type":"array","description":"One entry per rejected field: the field path and why it was rejected.","items":{"type":"object","required":["field","message"],"additionalProperties":false,"properties":{"field":{"type":"string","description":"Dot-path of the offending field.","isRequired":true,"uniqueKey":"error.fieldErrors.items.[INDEX].field","typeLabel":"string"},"message":{"type":"string","description":"Why the field was rejected.","isRequired":true,"uniqueKey":"error.fieldErrors.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"error.fieldErrors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"error.fieldErrors","typeLabel":"object[]"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"VALIDATION_FAILED","message":"\u003cstring>","statusCode":123,"fieldErrors":[{"field":"\u003cstring>","message":"\u003cstring>"}]}}}},"exampleType":"generated"}},"exampleType":"generated"},"1478c7af-7bde-4b99-81ce-394e682abed1":{"description":"An unexpected server error — safe to retry idempotent requests.","content":{"application/json":{"schema":{"type":"object","required":["error"],"additionalProperties":false,"description":"The uniform failure envelope every non-2xx response returns.","properties":{"error":{"type":"object","required":["code","message","statusCode"],"additionalProperties":false,"properties":{"code":{"type":"string","enum":["VALIDATION_FAILED","UNAUTHORIZED","FORBIDDEN","NOT_FOUND","CONFLICT","BUSINESS_RULE_VIOLATION","INTERNAL_ERROR"],"description":"Machine-readable kernel `ResultCode` — branch on this, not on `message`.","isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"Human-readable explanation. Safe to surface; never leaks server internals.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"statusCode":{"type":"integer","description":"The HTTP status, mirrored into the body so a client need not read headers.","isRequired":true,"uniqueKey":"error.statusCode","typeLabel":"integer"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"VALIDATION_FAILED","message":"\u003cstring>","statusCode":123}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{},"servers":{"e916e6f6-9ac8-4670-9030-c73027795f70":{"url":"/","description":"The backend, relative to its deployed origin."}}},"originalFileLocation":"openapi.json"},"subdomain":"solya-pos","siteName":"Solya POS Docs","title":"List the published fiscal verification keys - Solya POS Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/api-reference/fiscal/list-the-published-fiscal-verification-keys","matchLevel":0},"fr":{"href":"/api-reference/fiscal/list-the-published-fiscal-verification-keys","matchLevel":0}}},"lastModified":"2026-08-12T05:56:31.786Z","originalFileLocation":"api-reference/fiscal/list-the-published-fiscal-verification-keys.mdx","locale":"en"},"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=\"Returns the Ed25519 PUBLIC keys the NF525 fiscal signature chain is sealed with, so an auditor can verify that chain OFFLINE with no secret: take a record\u0026#x27;s key id, fetch the matching publicKeyPem here, recompute the link\u0026#x27;s canonical body and check the signature. Unauthenticated on purpose — a public key is not a secret, and publishing it is what makes the signature meaningful. This is a NARROW, auditor-facing read, not a fiscal reporting endpoint: it carries no sales, totals or journal entries. For the Z/X reports, the fiscal journal and the server-side chain verification, use the pos.finance.view-gated /v1/fiscal/* operations instead. Reach for this only when you are verifying signatures yourself and need the key material. An EMPTY keys array is a normal, successful answer, not a fault: it means the deployment is signing with symmetric HMAC keys, which have no public half to publish. In that case offline verification is simply not available and there is nothing to retry. keyId is the join key — it matches the # suffix stamped on every record the key sealed, and a rotated deployment lists several keys at once so an old record still resolves to the key that signed it. The response never contains private material.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Solya POS Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/solya-pos/bjR54-UDpBaR8quu/_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/solya-pos/bjR54-UDpBaR8quu/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/solya-pos/bjR54-UDpBaR8quu/_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/solya-pos/bjR54-UDpBaR8quu/_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/solya-pos/bjR54-UDpBaR8quu/_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/solya-pos/bjR54-UDpBaR8quu/_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/solya-pos/bjR54-UDpBaR8quu/_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/solya-pos/bjR54-UDpBaR8quu/_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/solya-pos/bjR54-UDpBaR8quu/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"List the published fiscal verification keys - Solya POS Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Returns the Ed25519 PUBLIC keys the NF525 fiscal signature chain is sealed with, so an auditor can verify that chain OFFLINE with no secret: take a record\u0026#x27;s key id, fetch the matching publicKeyPem here, recompute the link\u0026#x27;s canonical body and check the signature. Unauthenticated on purpose — a public key is not a secret, and publishing it is what makes the signature meaningful. This is a NARROW, auditor-facing read, not a fiscal reporting endpoint: it carries no sales, totals or journal entries. For the Z/X reports, the fiscal journal and the server-side chain verification, use the pos.finance.view-gated /v1/fiscal/* operations instead. Reach for this only when you are verifying signatures yourself and need the key material. An EMPTY keys array is a normal, successful answer, not a fault: it means the deployment is signing with symmetric HMAC keys, which have no public half to publish. In that case offline verification is simply not available and there is nothing to retry. keyId is the join key — it matches the # suffix stamped on every record the key sealed, and a rotated deployment lists several keys at once so an old record still resolves to the key that signed it. The response never contains private material.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Solya POS Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs-pos.solya.app/api-reference/fiscal/list-the-published-fiscal-verification-keys\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://solya-pos.mintlify.app/_mintlify/api/og/v2?division=Fiscal\u0026amp;title=List+the+published+fiscal+verification+keys\u0026amp;description=Returns+the+Ed25519+PUBLIC+keys+the+NF525+fiscal+signature+chain+is+sealed+with%2C+so+an+auditor+can+verify+that+chain+OFFLINE+with+no+secret%3A+take+a+record%27s+key\u0026amp;theme=d38e9e894d2efabe74a4c74f\u0026amp;signature=3441f64f18b509d41b976563f5bcd31e7e3619b0bb4338b44fd2babdceab38c2\">\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=\"List the published fiscal verification keys - Solya POS Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Returns the Ed25519 PUBLIC keys the NF525 fiscal signature chain is sealed with, so an auditor can verify that chain OFFLINE with no secret: take a record\u0026#x27;s key id, fetch the matching publicKeyPem here, recompute the link\u0026#x27;s canonical body and check the signature. Unauthenticated on purpose — a public key is not a secret, and publishing it is what makes the signature meaningful. This is a NARROW, auditor-facing read, not a fiscal reporting endpoint: it carries no sales, totals or journal entries. For the Z/X reports, the fiscal journal and the server-side chain verification, use the pos.finance.view-gated /v1/fiscal/* operations instead. Reach for this only when you are verifying signatures yourself and need the key material. An EMPTY keys array is a normal, successful answer, not a fault: it means the deployment is signing with symmetric HMAC keys, which have no public half to publish. In that case offline verification is simply not available and there is nothing to retry. keyId is the join key — it matches the # suffix stamped on every record the key sealed, and a rotated deployment lists several keys at once so an old record still resolves to the key that signed it. The response never contains private material.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://solya-pos.mintlify.app/_mintlify/api/og/v2?division=Fiscal\u0026amp;title=List+the+published+fiscal+verification+keys\u0026amp;description=Returns+the+Ed25519+PUBLIC+keys+the+NF525+fiscal+signature+chain+is+sealed+with%2C+so+an+auditor+can+verify+that+chain+OFFLINE+with+no+secret%3A+take+a+record%27s+key\u0026amp;theme=d38e9e894d2efabe74a4c74f\u0026amp;signature=3441f64f18b509d41b976563f5bcd31e7e3619b0bb4338b44fd2babdceab38c2\">\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/solya-pos/bjR54-UDpBaR8quu/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Solya POS Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#7367F0\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs-pos.solya.app/api-reference/fiscal/list-the-published-fiscal-verification-keys\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/fiscal/list-the-published-fiscal-verification-keys.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs-pos.solya.app/#organization\",\"name\":\"Solya POS Docs\",\"url\":\"https://docs-pos.solya.app\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/solya-pos/-jF44ACKJ9wNNMCD/images/logo-light.png?fit=max\u0026auto=format\u0026n=-jF44ACKJ9wNNMCD\u0026q=85\u0026s=f4e34e81952858b22c95479dc4bcb8b4\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs-pos.solya.app#website\",\"name\":\"Solya POS Docs\",\"url\":\"https://docs-pos.solya.app\",\"publisher\":{\"@id\":\"https://docs-pos.solya.app/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs-pos.solya.app/api-reference/fiscal/list-the-published-fiscal-verification-keys#webpage\",\"url\":\"https://docs-pos.solya.app/api-reference/fiscal/list-the-published-fiscal-verification-keys\",\"name\":\"List the published fiscal verification keys\",\"description\":\"Returns the Ed25519 PUBLIC keys the NF525 fiscal signature chain is sealed with, so an auditor can verify that chain OFFLINE with no secret: take a record's key id, fetch the matching publicKeyPem here, recompute the link's canonical body and check the signature. Unauthenticated on purpose — a public key is not a secret, and publishing it is what makes the signature meaningful. This is a NARROW, auditor-facing read, not a fiscal reporting endpoint: it carries no sales, totals or journal entries. For the Z/X reports, the fiscal journal and the server-side chain verification, use the pos.finance.view-gated /v1/fiscal/* operations instead. Reach for this only when you are verifying signatures yourself and need the key material. An EMPTY keys array is a normal, successful answer, not a fault: it means the deployment is signing with symmetric HMAC keys, which have no public half to publish. In that case offline verification is simply not available and there is nothing to retry. keyId is the join key — it matches the # suffix stamped on every record the key sealed, and a rotated deployment lists several keys at once so an old record still resolves to the key that signed it. The response never contains private material.\",\"dateModified\":\"2026-08-12T05:56:31.786Z\",\"isPartOf\":{\"@id\":\"https://docs-pos.solya.app#website\"},\"breadcrumb\":{\"@id\":\"https://docs-pos.solya.app/api-reference/fiscal/list-the-published-fiscal-verification-keys#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs-pos.solya.app/api-reference/fiscal/list-the-published-fiscal-verification-keys#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Ventes \u0026 encaissement\",\"item\":\"https://docs-pos.solya.app/api-reference/checkout/list-appointments-rdv\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"List the published fiscal verification keys\",\"item\":\"https://docs-pos.solya.app/api-reference/fiscal/list-the-published-fiscal-verification-keys\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs-pos.solya.app/api-reference/fiscal/list-the-published-fiscal-verification-keys#apireference\",\"headline\":\"List the published fiscal verification keys\",\"name\":\"List the published fiscal verification keys\",\"description\":\"Returns the Ed25519 PUBLIC keys the NF525 fiscal signature chain is sealed with, so an auditor can verify that chain OFFLINE with no secret: take a record's key id, fetch the matching publicKeyPem here, recompute the link's canonical body and check the signature. Unauthenticated on purpose — a public key is not a secret, and publishing it is what makes the signature meaningful. This is a NARROW, auditor-facing read, not a fiscal reporting endpoint: it carries no sales, totals or journal entries. For the Z/X reports, the fiscal journal and the server-side chain verification, use the pos.finance.view-gated /v1/fiscal/* operations instead. Reach for this only when you are verifying signatures yourself and need the key material. An EMPTY keys array is a normal, successful answer, not a fault: it means the deployment is signing with symmetric HMAC keys, which have no public half to publish. In that case offline verification is simply not available and there is nothing to retry. keyId is the join key — it matches the # suffix stamped on every record the key sealed, and a rotated deployment lists several keys at once so an old record still resolves to the key that signed it. The response never contains private material.\",\"url\":\"https://docs-pos.solya.app/api-reference/fiscal/list-the-published-fiscal-verification-keys\",\"mainEntityOfPage\":{\"@id\":\"https://docs-pos.solya.app/api-reference/fiscal/list-the-published-fiscal-verification-keys#webpage\"},\"dateModified\":\"2026-08-12T05:56:31.786Z\",\"publisher\":{\"@id\":\"https://docs-pos.solya.app/#organization\"},\"isPartOf\":{\"@id\":\"https://docs-pos.solya.app#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Solya POS Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Solya POS Docs","nav":{"global":null,"languages":[{"language":"en","tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":"/en"}]},{"tab":"Developers","pages":[{"title":"Developers","href":"/en/developers/overview"}]},{"tab":"API Reference","groups":[{"group":"Ventes \u0026 encaissement","pages":[{"group":"Checkout","pages":[{"title":"List appointments (RDV)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/appointments","href":"/api-reference/checkout/list-appointments-rdv"},{"title":"Book an appointment (RDV)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/appointments","href":"/api-reference/checkout/book-an-appointment-rdv"},{"title":"Get an appointment (RDV) by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/appointments/{appointmentId}","href":"/api-reference/checkout/get-an-appointment-rdv-by-id"},{"title":"Cancel an appointment (RDV)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/appointments/{appointmentId}/cancel","href":"/api-reference/checkout/cancel-an-appointment-rdv"},{"title":"Complete an appointment (RDV)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/appointments/{appointmentId}/complete","href":"/api-reference/checkout/complete-an-appointment-rdv"},{"title":"Confirm an appointment (RDV)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/appointments/{appointmentId}/confirm","href":"/api-reference/checkout/confirm-an-appointment-rdv"},{"title":"Mark an appointment (RDV) as a no-show","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/appointments/{appointmentId}/no-show","href":"/api-reference/checkout/mark-an-appointment-rdv-as-a-no-show"},{"title":"Reschedule an appointment (RDV)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/appointments/{appointmentId}/reschedule","href":"/api-reference/checkout/reschedule-an-appointment-rdv"},{"title":"Finalize a settled sale (encaissement)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/checkout/finalize","href":"/api-reference/checkout/finalize-a-settled-sale-encaissement"},{"title":"List deposits (acomptes)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/deposits","href":"/api-reference/checkout/list-deposits-acomptes"},{"title":"Open a deposit (acompte)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/deposits","href":"/api-reference/checkout/open-a-deposit-acompte"},{"title":"Get a deposit (acompte) by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/deposits/{depositId}","href":"/api-reference/checkout/get-a-deposit-acompte-by-id"},{"title":"Record a deposit payment (versement)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/deposits/{depositId}/payments","href":"/api-reference/checkout/record-a-deposit-payment-versement"},{"title":"Settle a deposit (acompte)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/deposits/{depositId}/settle","href":"/api-reference/checkout/settle-a-deposit-acompte"},{"title":"List open parked sales","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/parked","href":"/api-reference/checkout/list-open-parked-sales"},{"title":"Park a cart","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/parked","href":"/api-reference/checkout/park-a-cart"},{"title":"Get a parked sale by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/parked/{parkedSaleId}","href":"/api-reference/checkout/get-a-parked-sale-by-id"},{"title":"Drop a parked sale","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/parked/{parkedSaleId}","href":"/api-reference/checkout/drop-a-parked-sale"},{"title":"Resume a parked sale","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/parked/{parkedSaleId}/resume","href":"/api-reference/checkout/resume-a-parked-sale"},{"title":"List quotes","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/quotes","href":"/api-reference/checkout/list-quotes"},{"title":"Create a quote (devis)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/quotes","href":"/api-reference/checkout/create-a-quote-devis"},{"title":"Get a quote by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/quotes/{quoteId}","href":"/api-reference/checkout/get-a-quote-by-id"},{"title":"Update a quote","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/quotes/{quoteId}","href":"/api-reference/checkout/update-a-quote"},{"title":"Accept a quote","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/quotes/{quoteId}/accept","href":"/api-reference/checkout/accept-a-quote"},{"title":"Cancel a quote","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/quotes/{quoteId}/cancel","href":"/api-reference/checkout/cancel-a-quote"},{"title":"Send a quote","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/quotes/{quoteId}/send","href":"/api-reference/checkout/send-a-quote"},{"title":"List in-store holds","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/reservations","href":"/api-reference/checkout/list-in-store-holds"},{"title":"Place an in-store hold (réservation)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/reservations","href":"/api-reference/checkout/place-an-in-store-hold-réservation"},{"title":"Get a reservation by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/reservations/{reservationId}","href":"/api-reference/checkout/get-a-reservation-by-id"},{"title":"Cancel a hold","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/reservations/{reservationId}/cancel","href":"/api-reference/checkout/cancel-a-hold"},{"title":"Fulfil a hold","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/reservations/{reservationId}/fulfil","href":"/api-reference/checkout/fulfil-a-hold"},{"title":"Open a register session (session de caisse)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/sessions","href":"/api-reference/checkout/open-a-register-session-session-de-caisse"},{"title":"Get a register session (session de caisse) by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/sessions/{sessionId}","href":"/api-reference/checkout/get-a-register-session-session-de-caisse-by-id"},{"title":"Close a register session (clôture de caisse)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/sessions/{sessionId}/close","href":"/api-reference/checkout/close-a-register-session-clôture-de-caisse"},{"title":"Record a cash movement (mouvement de caisse) on a session","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/sessions/{sessionId}/movements","href":"/api-reference/checkout/record-a-cash-movement-mouvement-de-caisse-on-a-session"}]},{"group":"Orders","pages":[{"title":"List orders (commandes)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/orders","href":"/api-reference/orders/list-orders-commandes"},{"title":"Capture an order (commande)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/orders","href":"/api-reference/orders/capture-an-order-commande"},{"title":"Get an order by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/orders/{id}","href":"/api-reference/orders/get-an-order-by-id"},{"title":"Advance an order","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/orders/{id}/advance","href":"/api-reference/orders/advance-an-order"},{"title":"Revert an order one step","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/orders/{id}/revert","href":"/api-reference/orders/revert-an-order-one-step"},{"title":"Route a captured order","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/orders/{id}/route","href":"/api-reference/orders/route-a-captured-order"}]},{"group":"Returns","pages":[{"title":"How much is still refundable on an acompte / caution","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/refunds/refundable/{subjectKind}/{subjectId}","href":"/api-reference/returns/how-much-is-still-refundable-on-an-acompte-caution"},{"title":"Refund an acompte / caution as store credit (avoir)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/refunds/store-credit","href":"/api-reference/returns/refund-an-acompte-caution-as-store-credit-avoir"},{"title":"Get a store-credit refund by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/refunds/{refundId}","href":"/api-reference/returns/get-a-store-credit-refund-by-id"},{"title":"List processed returns (retours)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/returns","href":"/api-reference/returns/list-processed-returns-retours"},{"title":"Process a return (retour / avoir)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/returns","href":"/api-reference/returns/process-a-return-retour-avoir"},{"title":"Get a processed return by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/returns/{id}","href":"/api-reference/returns/get-a-processed-return-by-id"},{"title":"Get a return's cash-drawer pay-out","description":"Resolves the signed cash-drawer pay-out a processed return produced — a NEGATIVE integer-cent movement for a cash refund, or `null` for a non-cash / zero-valued one. This is the figure the back-office reconciles the register against. 404s when no return carries the given id.","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/returns/{id}/cash-movement","href":"/api-reference/returns/get-a-returns-cash-drawer-pay-out"}]},{"group":"Fiscal","pages":[{"title":"List the published fiscal verification keys","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal-keys","href":"/api-reference/fiscal/list-the-published-fiscal-verification-keys"},{"title":"Export the period retention archive","description":"Exports the period-sealed NF525 retention archive (JET, G4): the `[from, to]` window's ticket signatures + closures anchored to the pre-window chain, plus the algorithm manifest and published public keys so an auditor re-verifies it OFFLINE. `store` (the chain id) and the `?from=`/`?to=` UTC-day window (`YYYY-MM-DD`) are REQUIRED — a missing store or a missing/inverted window 400s.","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal/archive","href":"/api-reference/fiscal/export-the-period-retention-archive"},{"title":"Get one sealed closure by period","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal/closure","href":"/api-reference/fiscal/get-one-sealed-closure-by-period"},{"title":"List a store's sealed closures","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal/closures","href":"/api-reference/fiscal/list-a-stores-sealed-closures"},{"title":"Seal a mandatory fiscal closure","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/fiscal/closures","href":"/api-reference/fiscal/seal-a-mandatory-fiscal-closure"},{"title":"Export the signed fiscal journal","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal/journal","href":"/api-reference/fiscal/export-the-signed-fiscal-journal"},{"title":"Verify the fiscal chain integrity","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal/verify","href":"/api-reference/fiscal/verify-the-fiscal-chain-integrity"},{"title":"Fiscal X (mid-shift read)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal/x","href":"/api-reference/fiscal/fiscal-x-mid-shift-read"},{"title":"Fiscal Z (closing report)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal/z","href":"/api-reference/fiscal/fiscal-z-closing-report"}]},{"group":"Compliance","pages":[{"title":"List age-verification attestations","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/age-attestations","href":"/api-reference/compliance/list-age-verification-attestations"},{"title":"Record an age-verification attestation","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/age-attestations","href":"/api-reference/compliance/record-an-age-verification-attestation"}]}]},{"group":"Catalogue \u0026 stock","pages":[{"group":"Catalog","pages":[{"title":"List catalog brands (marques)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/brands","href":"/api-reference/catalog/list-catalog-brands-marques"},{"title":"Create a brand (marque)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/brands","href":"/api-reference/catalog/create-a-brand-marque"},{"title":"Get a brand (marque) by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/brands/{brandId}","href":"/api-reference/catalog/get-a-brand-marque-by-id"},{"title":"Update a brand (marque)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/brands/{brandId}","href":"/api-reference/catalog/update-a-brand-marque"},{"title":"Deactivate (archive) a brand (marque)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/brands/{brandId}/deactivate","href":"/api-reference/catalog/deactivate-archive-a-brand-marque"},{"title":"List a brand's suppliers (fournisseurs)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/brands/{brandId}/suppliers","href":"/api-reference/catalog/list-a-brands-suppliers-fournisseurs"},{"title":"Replace a brand's supplier (fournisseur) set","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/brands/{brandId}/suppliers","href":"/api-reference/catalog/replace-a-brands-supplier-fournisseur-set"},{"title":"Enrich a single brand or product synchronously","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/catalog/enrich","href":"/api-reference/catalog/enrich-a-single-brand-or-product-synchronously"},{"title":"Upload a supplier PDF catalogue for extraction","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/catalog/imports","href":"/api-reference/catalog/upload-a-supplier-pdf-catalogue-for-extraction"},{"title":"Poll a catalogue-import job's status and proposed products","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/catalog/imports/{jobId}","href":"/api-reference/catalog/poll-a-catalogue-import-jobs-status-and-proposed-products"},{"title":"List catalog kits (coffrets, nomenclatures)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/kits","href":"/api-reference/catalog/list-catalog-kits-coffrets-nomenclatures"},{"title":"Create a kit (coffret / nomenclature / BOM)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/kits","href":"/api-reference/catalog/create-a-kit-coffret-nomenclature-bom"},{"title":"Update a kit (coffret / nomenclature)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/kits/{id}","href":"/api-reference/catalog/update-a-kit-coffret-nomenclature"},{"title":"Deactivate (archive) a kit (coffret)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/kits/{id}/deactivate","href":"/api-reference/catalog/deactivate-archive-a-kit-coffret"},{"title":"Resolve a kit's price and explosion (nomenclature)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/kits/{id}/resolve","href":"/api-reference/catalog/resolve-a-kits-price-and-explosion-nomenclature"},{"title":"List markdown schedules (démarques / soldes)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/markdowns","href":"/api-reference/catalog/list-markdown-schedules-démarques-soldes"},{"title":"Set a product's markdown schedule (démarque programmée)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/markdowns","href":"/api-reference/catalog/set-a-products-markdown-schedule-démarque-programmée"},{"title":"Resolve a product's markdown price (prix démarqué)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/markdowns/{productId}","href":"/api-reference/catalog/resolve-a-products-markdown-price-prix-démarqué"},{"title":"Deactivate a product's markdown schedule (fin de démarque)","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/markdowns/{productId}","href":"/api-reference/catalog/deactivate-a-products-markdown-schedule-fin-de-démarque"},{"title":"List / search catalog products (produits, articles)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/products","href":"/api-reference/catalog/list-search-catalog-products-produits-articles"},{"title":"Create a product (produit)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/products","href":"/api-reference/catalog/create-a-product-produit"},{"title":"Bulk-import products","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/products/import","href":"/api-reference/catalog/bulk-import-products"},{"title":"List the sellable catalogue (produits + prix de vente TTC)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/products/sellable","href":"/api-reference/catalog/list-the-sellable-catalogue-produits-+-prix-de-vente-ttc"},{"title":"Get a product (produit) by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/products/{id}","href":"/api-reference/catalog/get-a-product-produit-by-id"},{"title":"Update a product (produit)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/products/{id}","href":"/api-reference/catalog/update-a-product-produit"},{"title":"Get a product's priced sellable units (prix de vente TTC)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/products/{id}/units","href":"/api-reference/catalog/get-a-products-priced-sellable-units-prix-de-vente-ttc"},{"title":"Global cross-entity search (recherche globale)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/search","href":"/api-reference/catalog/global-cross-entity-search-recherche-globale"},{"title":"List price overrides (prix magasin) by store or by product","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/store-prices","href":"/api-reference/catalog/list-price-overrides-prix-magasin-by-store-or-by-product"},{"title":"Set a store price override (prix magasin / surcharge)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/store-prices","href":"/api-reference/catalog/set-a-store-price-override-prix-magasin-surcharge"},{"title":"Clear a store price override","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/store-prices","href":"/api-reference/catalog/clear-a-store-price-override"},{"title":"List taxonomy axes (classification, familles)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/taxonomy","href":"/api-reference/catalog/list-taxonomy-axes-classification-familles"},{"title":"Create a taxonomy axis (axe de classification)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/taxonomy","href":"/api-reference/catalog/create-a-taxonomy-axis-axe-de-classification"},{"title":"List the importable taxonomy presets (librairie d'axes)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/taxonomy/presets","href":"/api-reference/catalog/list-the-importable-taxonomy-presets-librairie-daxes"},{"title":"Save the current taxonomy as an internal preset","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/taxonomy/presets","href":"/api-reference/catalog/save-the-current-taxonomy-as-an-internal-preset"},{"title":"Delete an internal taxonomy preset","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/taxonomy/presets/{presetId}","href":"/api-reference/catalog/delete-an-internal-taxonomy-preset"},{"title":"Import a taxonomy preset (importer une librairie d'axes)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/taxonomy/presets/{presetId}/import","href":"/api-reference/catalog/import-a-taxonomy-preset-importer-une-librairie-daxes"},{"title":"Preview a taxonomy preset import (dry run)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/taxonomy/presets/{presetId}/preview","href":"/api-reference/catalog/preview-a-taxonomy-preset-import-dry-run"},{"title":"Get a taxonomy axis (axe de classification) by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/taxonomy/{axisId}","href":"/api-reference/catalog/get-a-taxonomy-axis-axe-de-classification-by-id"},{"title":"Update a taxonomy axis (axe de classification)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/taxonomy/{axisId}","href":"/api-reference/catalog/update-a-taxonomy-axis-axe-de-classification"},{"title":"Delete a taxonomy axis (supprimer un axe)","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/taxonomy/{axisId}","href":"/api-reference/catalog/delete-a-taxonomy-axis-supprimer-un-axe"},{"title":"Deactivate (archive) a taxonomy axis (axe de classification)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/taxonomy/{axisId}/deactivate","href":"/api-reference/catalog/deactivate-archive-a-taxonomy-axis-axe-de-classification"},{"title":"Reparent a taxonomy node (déplacer un nœud)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/taxonomy/{axisId}/nodes/{nodeId}/move","href":"/api-reference/catalog/reparent-a-taxonomy-node-déplacer-un-nœud"}]},{"group":"Inventory","pages":[{"title":"List cadence configs (cadence de comptage tournant)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/cycle-counts/cadences","href":"/api-reference/inventory/list-cadence-configs-cadence-de-comptage-tournant"},{"title":"Upsert a store's cadence config","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/cycle-counts/cadences","href":"/api-reference/inventory/upsert-a-stores-cadence-config"},{"title":"Plan a store's due cycle counts (comptage tournant)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/cycle-counts/plan","href":"/api-reference/inventory/plan-a-stores-due-cycle-counts-comptage-tournant"},{"title":"Set a SKU's count policy","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/cycle-counts/policies","href":"/api-reference/inventory/set-a-skus-count-policy"},{"title":"Complete a count task","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/cycle-counts/tasks/{skuId}/complete","href":"/api-reference/inventory/complete-a-count-task"},{"title":"Skip a count task","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/cycle-counts/tasks/{skuId}/skip","href":"/api-reference/inventory/skip-a-count-task"},{"title":"List stock items (stock / inventaire)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/inventory","href":"/api-reference/inventory/list-stock-items-stock-inventaire"},{"title":"List count sessions (comptages / inventaires physiques)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/inventory/counts","href":"/api-reference/inventory/list-count-sessions-comptages-inventaires-physiques"},{"title":"Open a count session (comptage / inventaire physique)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/inventory/counts","href":"/api-reference/inventory/open-a-count-session-comptage-inventaire-physique"},{"title":"Get a count session by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/inventory/counts/{sessionId}","href":"/api-reference/inventory/get-a-count-session-by-id"},{"title":"Close a count session","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/inventory/counts/{sessionId}/close","href":"/api-reference/inventory/close-a-count-session"},{"title":"Record a counted line","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/inventory/counts/{sessionId}/lines","href":"/api-reference/inventory/record-a-counted-line"},{"title":"Get a count session's valued variance","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/inventory/counts/{sessionId}/variance","href":"/api-reference/inventory/get-a-count-sessions-valued-variance"},{"title":"List stock in transit between stores","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/inventory/in-transit","href":"/api-reference/inventory/list-stock-in-transit-between-stores"},{"title":"List stock write-offs (démarque)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/inventory/write-offs","href":"/api-reference/inventory/list-stock-write-offs-démarque"},{"title":"Record a stock write-off (démarque)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/inventory/write-offs","href":"/api-reference/inventory/record-a-stock-write-off-démarque"},{"title":"Approve a stock write-off","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/inventory/write-offs/{id}/approve","href":"/api-reference/inventory/approve-a-stock-write-off"},{"title":"Reject a stock write-off","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/inventory/write-offs/{id}/reject","href":"/api-reference/inventory/reject-a-stock-write-off"},{"title":"Get a stock item by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/inventory/{id}","href":"/api-reference/inventory/get-a-stock-item-by-id"}]},{"group":"Replenishment","pages":[{"title":"List reorder policies (seuils de réapprovisionnement)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/reorder-policies","href":"/api-reference/replenishment/list-reorder-policies-seuils-de-réapprovisionnement"},{"title":"Set a reorder policy (seuil min/max) for one SKU × store","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/reorder-policies","href":"/api-reference/replenishment/set-a-reorder-policy-seuil-minmax-for-one-sku-×-store"},{"title":"Generate replenishment suggestions (suggestions de réapprovisionnement) for a store","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/reorder-policies/suggestions","href":"/api-reference/replenishment/generate-replenishment-suggestions-suggestions-de-réapprovisionnement-for-a-store"}]},{"group":"Transfer","pages":[{"title":"List transfers","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/transfers","href":"/api-reference/transfer/list-transfers"},{"title":"Request a transfer","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/transfers","href":"/api-reference/transfer/request-a-transfer"},{"title":"Get a transfer by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/transfers/{transferId}","href":"/api-reference/transfer/get-a-transfer-by-id"},{"title":"Cancel a transfer","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/transfers/{transferId}/cancel","href":"/api-reference/transfer/cancel-a-transfer"},{"title":"Get a transfer's receipt discrepancy","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/transfers/{transferId}/discrepancy","href":"/api-reference/transfer/get-a-transfers-receipt-discrepancy"},{"title":"Receive a transfer","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/transfers/{transferId}/receive","href":"/api-reference/transfer/receive-a-transfer"},{"title":"Ship a transfer","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/transfers/{transferId}/ship","href":"/api-reference/transfer/ship-a-transfer"}]},{"group":"Procurement","pages":[{"title":"List the network's plans","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/plans","href":"/api-reference/procurement/list-the-networks-plans"},{"title":"Open a plan","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/plans","href":"/api-reference/procurement/open-a-plan"},{"title":"Get one plan","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/plans/{planId}","href":"/api-reference/procurement/get-one-plan"},{"title":"Edit a draft plan","deprecated":null,"version":null,"openapi":"/openapi.json patch /v1/plans/{planId}","href":"/api-reference/procurement/edit-a-draft-plan"},{"title":"Cancel a draft plan","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/plans/{planId}/cancel","href":"/api-reference/procurement/cancel-a-draft-plan"},{"title":"List the lines of one plan","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/plans/{planId}/items","href":"/api-reference/procurement/list-the-lines-of-one-plan"},{"title":"Add a line to a draft plan","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/plans/{planId}/items","href":"/api-reference/procurement/add-a-line-to-a-draft-plan"},{"title":"Remove a line from a draft plan","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/plans/{planId}/items/{itemId}","href":"/api-reference/procurement/remove-a-line-from-a-draft-plan"},{"title":"Judge a plan against the network's rules","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/plans/{planId}/rules","href":"/api-reference/procurement/judge-a-plan-against-the-networks-rules"},{"title":"Move a plan one step along its lifecycle","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/plans/{planId}/transitions","href":"/api-reference/procurement/move-a-plan-one-step-along-its-lifecycle"},{"title":"List purchase orders (commandes fournisseur)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/purchase-orders","href":"/api-reference/procurement/list-purchase-orders-commandes-fournisseur"},{"title":"Create a purchase order (commande fournisseur / bon de commande)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/purchase-orders","href":"/api-reference/procurement/create-a-purchase-order-commande-fournisseur-bon-de-commande"},{"title":"Get a purchase order by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/purchase-orders/{orderId}","href":"/api-reference/procurement/get-a-purchase-order-by-id"},{"title":"Receive against a purchase order (réception de marchandise)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/purchase-orders/{orderId}/receive","href":"/api-reference/procurement/receive-against-a-purchase-order-réception-de-marchandise"},{"title":"Get a purchase order's received-vs-ordered variance (écart de réception)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/purchase-orders/{orderId}/variance","href":"/api-reference/procurement/get-a-purchase-orders-received-vs-ordered-variance-écart-de-réception"},{"title":"List returns-to-vendor (retours fournisseur)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/return-to-vendors","href":"/api-reference/procurement/list-returns-to-vendor-retours-fournisseur"},{"title":"Raise a return-to-vendor (retour fournisseur)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/return-to-vendors","href":"/api-reference/procurement/raise-a-return-to-vendor-retour-fournisseur"},{"title":"Get a return-to-vendor by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/return-to-vendors/{rtvId}","href":"/api-reference/procurement/get-a-return-to-vendor-by-id"},{"title":"Cancel a return-to-vendor","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/return-to-vendors/{rtvId}/cancel","href":"/api-reference/procurement/cancel-a-return-to-vendor"},{"title":"Credit a return-to-vendor","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/return-to-vendors/{rtvId}/credit","href":"/api-reference/procurement/credit-a-return-to-vendor"},{"title":"Ship a return-to-vendor","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/return-to-vendors/{rtvId}/ship","href":"/api-reference/procurement/ship-a-return-to-vendor"},{"title":"List suppliers (fournisseurs)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/suppliers","href":"/api-reference/procurement/list-suppliers-fournisseurs"},{"title":"Create a supplier","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/suppliers","href":"/api-reference/procurement/create-a-supplier"},{"title":"Get a supplier by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/suppliers/{supplierId}","href":"/api-reference/procurement/get-a-supplier-by-id"},{"title":"Update a supplier (fournisseur)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/suppliers/{supplierId}","href":"/api-reference/procurement/update-a-supplier-fournisseur"},{"title":"Deactivate a supplier","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/suppliers/{supplierId}/deactivate","href":"/api-reference/procurement/deactivate-a-supplier"}]},{"group":"Network","pages":[{"title":"List the companies (sociétés) the network trades under","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/companies","href":"/api-reference/network/list-the-companies-sociétés-the-network-trades-under"},{"title":"Create a company (société)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/companies","href":"/api-reference/network/create-a-company-société"},{"title":"Attach a store to a company and set its establishment number","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/companies/stores/{storeId}","href":"/api-reference/network/attach-a-store-to-a-company-and-set-its-establishment-number"},{"title":"Get a company with its identity history","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/companies/{companyId}","href":"/api-reference/network/get-a-company-with-its-identity-history"},{"title":"Edit a company's fiscal identity (appends a version)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/companies/{companyId}/identity","href":"/api-reference/network/edit-a-companys-fiscal-identity-appends-a-version"},{"title":"Resolve the fiscal header a store's documents print","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal-identity/stores/{storeId}","href":"/api-reference/network/resolve-the-fiscal-header-a-stores-documents-print"},{"title":"List the paired register peripherals","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fleet","href":"/api-reference/network/list-the-paired-register-peripherals"},{"title":"Pair a device onto a register","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/fleet","href":"/api-reference/network/pair-a-device-onto-a-register"},{"title":"Get a paired device by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fleet/{deviceId}","href":"/api-reference/network/get-a-paired-device-by-id"},{"title":"Update a paired device","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/fleet/{deviceId}","href":"/api-reference/network/update-a-paired-device"},{"title":"Retire (unpair) a paired device","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/fleet/{deviceId}/retire","href":"/api-reference/network/retire-unpair-a-paired-device"},{"title":"List the network's regions","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/regions","href":"/api-reference/network/list-the-networks-regions"},{"title":"Create a region","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/regions","href":"/api-reference/network/create-a-region"},{"title":"Get a region by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/regions/{regionId}","href":"/api-reference/network/get-a-region-by-id"},{"title":"Update a region","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/regions/{regionId}","href":"/api-reference/network/update-a-region"},{"title":"Deactivate (archive) a region","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/regions/{regionId}/deactivate","href":"/api-reference/network/deactivate-archive-a-region"},{"title":"List the network's stores","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/stores","href":"/api-reference/network/list-the-networks-stores"},{"title":"Provision a store","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/stores","href":"/api-reference/network/provision-a-store"},{"title":"Get a store by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/stores/{storeId}","href":"/api-reference/network/get-a-store-by-id"},{"title":"Update a store","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/stores/{storeId}","href":"/api-reference/network/update-a-store"},{"title":"Deactivate (close) a store","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/stores/{storeId}/deactivate","href":"/api-reference/network/deactivate-close-a-store"},{"title":"Reactivate (reopen) a store","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/stores/{storeId}/reactivate","href":"/api-reference/network/reactivate-reopen-a-store"},{"title":"List the network's VAT / tax codes","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/tax-codes","href":"/api-reference/network/list-the-networks-vat-tax-codes"},{"title":"Create a VAT / tax code","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/tax-codes","href":"/api-reference/network/create-a-vat-tax-code"},{"title":"Get a tax code by its code","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/tax-codes/{code}","href":"/api-reference/network/get-a-tax-code-by-its-code"},{"title":"Update a VAT / tax code","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/tax-codes/{code}","href":"/api-reference/network/update-a-vat-tax-code"},{"title":"Deactivate (archive) a VAT / tax code","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/tax-codes/{code}/deactivate","href":"/api-reference/network/deactivate-archive-a-vat-tax-code"}]}]},{"group":"Finance","pages":[{"group":"Finance","pages":[{"title":"List finance entries","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance","href":"/api-reference/finance/list-finance-entries"},{"title":"Export a generic accounting file (journal entries / configurable CSV)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance/accounting-export","href":"/api-reference/finance/export-a-generic-accounting-file-journal-entries-configurable-csv"},{"title":"Report cash discrepancies for a period","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance/cash-discrepancy","href":"/api-reference/finance/report-cash-discrepancies-for-a-period"},{"title":"Get one session's cash discrepancy","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance/cash-discrepancy/{sessionId}","href":"/api-reference/finance/get-one-sessions-cash-discrepancy"},{"title":"List deposit batches","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance/deposits","href":"/api-reference/finance/list-deposit-batches"},{"title":"Open a deposit batch","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/finance/deposits","href":"/api-reference/finance/open-a-deposit-batch"},{"title":"Deposit trend (declared vs settled per day)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance/deposits/trend","href":"/api-reference/finance/deposit-trend-declared-vs-settled-per-day"},{"title":"Get a deposit batch by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance/deposits/{batchId}","href":"/api-reference/finance/get-a-deposit-batch-by-id"},{"title":"Settle a deposit line","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/finance/deposits/{batchId}/lines/settle","href":"/api-reference/finance/settle-a-deposit-line"},{"title":"Reconcile a deposit batch","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/finance/deposits/{batchId}/reconcile","href":"/api-reference/finance/reconcile-a-deposit-batch"},{"title":"Export the FEC accounting file","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance/fec","href":"/api-reference/finance/export-the-fec-accounting-file"},{"title":"Report the period close","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance/period-close","href":"/api-reference/finance/report-the-period-close"},{"title":"Close (lock) a fiscal period","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/finance/period-close","href":"/api-reference/finance/close-lock-a-fiscal-period"},{"title":"Get a finance entry by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance/{entryId}","href":"/api-reference/finance/get-a-finance-entry-by-id"},{"title":"Windowed sales analytics report","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/reports/sales","href":"/api-reference/finance/windowed-sales-analytics-report"},{"title":"List finalized sale tickets","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/sales","href":"/api-reference/finance/list-finalized-sale-tickets"},{"title":"Tally one salesperson's day","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/sales/seller-day","href":"/api-reference/finance/tally-one-salespersons-day"},{"title":"Summarise sales into dashboard KPIs","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/sales/summary","href":"/api-reference/finance/summarise-sales-into-dashboard-kpis"},{"title":"Get a sale ticket by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/sales/{id}","href":"/api-reference/finance/get-a-sale-ticket-by-id"}]},{"group":"Billing","pages":[{"title":"Read the billing catalogue and current plan","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/credits/billing","href":"/api-reference/billing/read-the-billing-catalogue-and-current-plan"},{"title":"Grant SMS credits to the account wallet (crédit)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/credits/grant","href":"/api-reference/billing/grant-sms-credits-to-the-account-wallet-crédit"},{"title":"Read the credit wallet, ledger and usage (crédit, recharge)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/credits/overview","href":"/api-reference/billing/read-the-credit-wallet-ledger-and-usage-crédit-recharge"},{"title":"Open a Stripe Checkout session for a monthly plan","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/credits/plan","href":"/api-reference/billing/open-a-stripe-checkout-session-for-a-monthly-plan"},{"title":"Open a Stripe Checkout session for a credit top-up","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/credits/topup","href":"/api-reference/billing/open-a-stripe-checkout-session-for-a-credit-top-up"}]},{"group":"Instruments","pages":[{"title":"List stored-value instruments (carte cadeau, avoir)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/giftcards","href":"/api-reference/instruments/list-stored-value-instruments-carte-cadeau-avoir"},{"title":"Issue a stored-value instrument (carte cadeau, avoir)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/giftcards","href":"/api-reference/instruments/issue-a-stored-value-instrument-carte-cadeau-avoir"},{"title":"Report stored-value breakage across the whole network (carte cadeau)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/giftcards/breakage","href":"/api-reference/instruments/report-stored-value-breakage-across-the-whole-network-carte-cadeau"},{"title":"Get an instrument by its bearer code (carte cadeau)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/giftcards/by-code/{code}","href":"/api-reference/instruments/get-an-instrument-by-its-bearer-code-carte-cadeau"},{"title":"Bulk-issue stored-value instruments (carte cadeau)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/giftcards/import","href":"/api-reference/instruments/bulk-issue-stored-value-instruments-carte-cadeau"},{"title":"Redeem value from an instrument (carte cadeau)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/giftcards/redemptions","href":"/api-reference/instruments/redeem-value-from-an-instrument-carte-cadeau"},{"title":"Get an instrument by id (carte cadeau)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/giftcards/{id}","href":"/api-reference/instruments/get-an-instrument-by-id-carte-cadeau"},{"title":"Reload an instrument with more value (recharge carte cadeau)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/giftcards/{id}/reload","href":"/api-reference/instruments/reload-an-instrument-with-more-value-recharge-carte-cadeau"},{"title":"Void an instrument (carte cadeau)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/giftcards/{id}/void","href":"/api-reference/instruments/void-an-instrument-carte-cadeau"}]}]},{"group":"Clients \u0026 fidélité","pages":[{"group":"Customers","pages":[{"title":"List customers","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/customers","href":"/api-reference/customers/list-customers"},{"title":"Register a customer","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/customers","href":"/api-reference/customers/register-a-customer"},{"title":"Report the customer base by RFM segment (segment client)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/customers/segments","href":"/api-reference/customers/report-the-customer-base-by-rfm-segment-segment-client"},{"title":"Get a customer by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/customers/{id}","href":"/api-reference/customers/get-a-customer-by-id"},{"title":"Update a customer profile","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/customers/{id}","href":"/api-reference/customers/update-a-customer-profile"},{"title":"Get a customer's consent record","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/customers/{id}/consent","href":"/api-reference/customers/get-a-customers-consent-record"},{"title":"Record a customer consent decision","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/customers/{id}/consent","href":"/api-reference/customers/record-a-customer-consent-decision"},{"title":"Deactivate a customer (reversible)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/customers/{id}/deactivation","href":"/api-reference/customers/deactivate-a-customer-reversible"},{"title":"Erase a customer's personal data (GDPR)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/customers/{id}/erasure","href":"/api-reference/customers/erase-a-customers-personal-data-gdpr"},{"title":"Export a customer's personal data (GDPR)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/customers/{id}/export","href":"/api-reference/customers/export-a-customers-personal-data-gdpr"},{"title":"Get a customer's purchase history","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/customers/{id}/purchases","href":"/api-reference/customers/get-a-customers-purchase-history"},{"title":"Reactivate a deactivated customer","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/customers/{id}/reactivation","href":"/api-reference/customers/reactivate-a-deactivated-customer"}]},{"group":"Loyalty","pages":[{"title":"List loyalty members (fidélité)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/loyalty","href":"/api-reference/loyalty/list-loyalty-members-fidélité"},{"title":"Get a customer's derived loyalty account (fidélité, palier)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/loyalty/accounts/{customerId}","href":"/api-reference/loyalty/get-a-customers-derived-loyalty-account-fidélité-palier"},{"title":"Accrue loyalty points for a sale (points de fidélité)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/loyalty/accruals","href":"/api-reference/loyalty/accrue-loyalty-points-for-a-sale-points-de-fidélité"},{"title":"Get the active loyalty program config (fidélité, paliers)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/loyalty/config","href":"/api-reference/loyalty/get-the-active-loyalty-program-config-fidélité-paliers"},{"title":"Replace the loyalty program config (fidélité, paliers)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/loyalty/config","href":"/api-reference/loyalty/replace-the-loyalty-program-config-fidélité-paliers"},{"title":"Redeem loyalty points for a discount (points de fidélité)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/loyalty/redemptions","href":"/api-reference/loyalty/redeem-loyalty-points-for-a-discount-points-de-fidélité"},{"title":"Get a loyalty member by id (fidélité)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/loyalty/{memberId}","href":"/api-reference/loyalty/get-a-loyalty-member-by-id-fidélité"}]},{"group":"Notifications","pages":[{"title":"Get per-channel notification availability","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/notifications/channels","href":"/api-reference/notifications/get-per-channel-notification-availability"},{"title":"Send a finalized sale's receipt to the customer","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/notifications/receipt","href":"/api-reference/notifications/send-a-finalized-sales-receipt-to-the-customer"}]}]},{"group":"Marketing \u0026 promotions","pages":[{"group":"Promotions","pages":[{"title":"List the coupon catalogue (code promo)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/coupons","href":"/api-reference/promotions/list-the-coupon-catalogue-code-promo"},{"title":"Create one coupon under a chosen code (code promo)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/coupons","href":"/api-reference/promotions/create-one-coupon-under-a-chosen-code-code-promo"},{"title":"Batch-generate a run of coupon codes (code promo)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/coupons/batch","href":"/api-reference/promotions/batch-generate-a-run-of-coupon-codes-code-promo"},{"title":"Preview a coupon against a basket total (code promo, bon de réduction)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/coupons/validate","href":"/api-reference/promotions/preview-a-coupon-against-a-basket-total-code-promo-bon-de-réduction"},{"title":"Edit an existing coupon (code promo)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/coupons/{id}","href":"/api-reference/promotions/edit-an-existing-coupon-code-promo"},{"title":"Deactivate a coupon (code promo)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/coupons/{id}/deactivate","href":"/api-reference/promotions/deactivate-a-coupon-code-promo"},{"title":"Apply an authorised discount to a whole ticket","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/discounts/ticket","href":"/api-reference/promotions/apply-an-authorised-discount-to-a-whole-ticket"},{"title":"Get an applied discount by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/discounts/{id}","href":"/api-reference/promotions/get-an-applied-discount-by-id"},{"title":"List automatic promotion rules","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/promotions","href":"/api-reference/promotions/list-automatic-promotion-rules"},{"title":"Create or replace an automatic promotion rule","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/promotions","href":"/api-reference/promotions/create-or-replace-an-automatic-promotion-rule"},{"title":"Evaluate the active promotion rules against a cart","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/promotions/evaluate","href":"/api-reference/promotions/evaluate-the-active-promotion-rules-against-a-cart"},{"title":"Get a promotion by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/promotions/{id}","href":"/api-reference/promotions/get-a-promotion-by-id"},{"title":"Update an existing promotion rule","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/promotions/{id}","href":"/api-reference/promotions/update-an-existing-promotion-rule"},{"title":"Deactivate a promotion rule","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/promotions/{id}/deactivate","href":"/api-reference/promotions/deactivate-a-promotion-rule"},{"title":"Get a promotion's full rule definition","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/promotions/{id}/rule","href":"/api-reference/promotions/get-a-promotions-full-rule-definition"}]},{"group":"Marketing","pages":[{"title":"List marketing campaigns (campagne)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/campaigns","href":"/api-reference/marketing/list-marketing-campaigns-campagne"},{"title":"Author a marketing campaign (campagne)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/campaigns","href":"/api-reference/marketing/author-a-marketing-campaign-campagne"},{"title":"Get a campaign by id (campagne)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/campaigns/{id}","href":"/api-reference/marketing/get-a-campaign-by-id-campagne"},{"title":"Preview a campaign's recipients without sending (campagne, relance)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/campaigns/{id}/dry-run","href":"/api-reference/marketing/preview-a-campaigns-recipients-without-sending-campagne-relance"},{"title":"Send a campaign to its consented audience (campagne, relance)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/campaigns/{id}/send","href":"/api-reference/marketing/send-a-campaign-to-its-consented-audience-campagne-relance"}]}]},{"group":"Services","pages":[{"group":"Rentals","pages":[{"title":"List rentals","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/rentals","href":"/api-reference/rentals/list-rentals"},{"title":"Open a rental","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/rentals","href":"/api-reference/rentals/open-a-rental"},{"title":"Get a rental by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/rentals/{rentalId}","href":"/api-reference/rentals/get-a-rental-by-id"},{"title":"Flag a rental as overdue","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/rentals/{rentalId}/mark-overdue","href":"/api-reference/rentals/flag-a-rental-as-overdue"},{"title":"Return a rental and settle the caution","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/rentals/{rentalId}/return","href":"/api-reference/rentals/return-a-rental-and-settle-the-caution"}]},{"group":"Repairs","pages":[{"title":"List repair orders","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/repairs","href":"/api-reference/repairs/list-repair-orders"},{"title":"Take an article in for repair","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/repairs","href":"/api-reference/repairs/take-an-article-in-for-repair"},{"title":"Get a repair order by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/repairs/{orderId}","href":"/api-reference/repairs/get-a-repair-order-by-id"},{"title":"Record collection of a repaired article","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/repairs/{orderId}/collect","href":"/api-reference/repairs/record-collection-of-a-repaired-article"},{"title":"Mark a repair order ready for pickup","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/repairs/{orderId}/ready","href":"/api-reference/repairs/mark-a-repair-order-ready-for-pickup"},{"title":"Send a repair order to the workshop","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/repairs/{orderId}/to-workshop","href":"/api-reference/repairs/send-a-repair-order-to-the-workshop"},{"title":"Declare a repair order unrepairable","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/repairs/{orderId}/unrepairable","href":"/api-reference/repairs/declare-a-repair-order-unrepairable"}]}]},{"group":"Assistant","pages":[{"title":"Ask the in-till assistant a question","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/assistant/chat","href":"/api-reference/assistant/ask-the-in-till-assistant-a-question"}]},{"group":"Intégrations \u0026 données","pages":[{"group":"Integrations","pages":[{"title":"List the connectors (intégration, connecteur)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/integrations","href":"/api-reference/integrations/list-the-connectors-intégration-connecteur"},{"title":"Read one connector (connecteur)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/integrations/{key}","href":"/api-reference/integrations/read-one-connector-connecteur"},{"title":"Configure a connector (connecteur, intégration)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/integrations/{key}","href":"/api-reference/integrations/configure-a-connector-connecteur-intégration"},{"title":"Disable a connector (connecteur)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/integrations/{key}/disable","href":"/api-reference/integrations/disable-a-connector-connecteur"},{"title":"Enable a connector (connecteur)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/integrations/{key}/enable","href":"/api-reference/integrations/enable-a-connector-connecteur"}]},{"group":"Merchandising import","pages":[{"title":"Bulk-import proposed promotions (promotions)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/import/promotions","href":"/api-reference/merchandising-import/bulk-import-proposed-promotions-promotions"},{"title":"Bulk-import proposed replenishment plans (commandes de réapprovisionnement)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/import/purchase-orders","href":"/api-reference/merchandising-import/bulk-import-proposed-replenishment-plans-commandes-de-réapprovisionnement"},{"title":"Bulk-import proposed inter-store transfer plans (transferts inter-magasins)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/import/transfers","href":"/api-reference/merchandising-import/bulk-import-proposed-inter-store-transfer-plans-transferts-inter-magasins"}]},{"group":"Data platform","pages":[{"title":"Export a resource's changed rows (incremental CDC feed)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/export/{resource}","href":"/api-reference/data-platform/export-a-resources-changed-rows-incremental-cdc-feed"}]}]},{"group":"Système","pages":[{"group":"Auth","pages":[{"title":"Resolve the authenticated actor's identity and effective POS scopes (MCP gateway alias)","deprecated":null,"version":null,"openapi":"/openapi.json get /api/auth/whoami","href":"/api-reference/auth/resolve-the-authenticated-actors-identity-and-effective-pos-scopes-mcp-gateway-alias"},{"title":"Request a single-use manager elevation grant","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/auth/elevate","href":"/api-reference/auth/request-a-single-use-manager-elevation-grant"},{"title":"Set or rotate the calling actor's own elevation PIN","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/auth/elevation/pin","href":"/api-reference/auth/set-or-rotate-the-calling-actors-own-elevation-pin"},{"title":"Resolve the authenticated actor's identity and effective POS scopes","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/auth/whoami","href":"/api-reference/auth/resolve-the-authenticated-actors-identity-and-effective-pos-scopes"},{"title":"Tally the authenticated actor's own day","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/me/day-summary","href":"/api-reference/auth/tally-the-authenticated-actors-own-day"},{"title":"Get the POS permission manifest","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/permissions/manifest","href":"/api-reference/auth/get-the-pos-permission-manifest"}]},{"group":"Team","pages":[{"title":"List team members","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/team","href":"/api-reference/team/list-team-members"},{"title":"Provision a team member","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/team","href":"/api-reference/team/provision-a-team-member"},{"title":"Get a team member by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/team/{memberId}","href":"/api-reference/team/get-a-team-member-by-id"},{"title":"Replace a team member's directory record","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/team/{memberId}","href":"/api-reference/team/replace-a-team-members-directory-record"},{"title":"Offboard a team member (disable sign-in)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/team/{memberId}/deactivate","href":"/api-reference/team/offboard-a-team-member-disable-sign-in"},{"title":"Get a team member's effective permissions","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/team/{memberId}/permissions","href":"/api-reference/team/get-a-team-members-effective-permissions"},{"title":"Re-onboard a team member (restore sign-in)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/team/{memberId}/reactivate","href":"/api-reference/team/re-onboard-a-team-member-restore-sign-in"},{"title":"Assign a scoped role to a team member","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/team/{memberId}/roles","href":"/api-reference/team/assign-a-scoped-role-to-a-team-member"},{"title":"Revoke a scoped role from a team member","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/team/{memberId}/roles","href":"/api-reference/team/revoke-a-scoped-role-from-a-team-member"}]},{"group":"Settings","pages":[{"title":"Read the order-routing rules","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/routing-rules","href":"/api-reference/settings/read-the-order-routing-rules"},{"title":"Replace the order-routing rules","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/routing-rules","href":"/api-reference/settings/replace-the-order-routing-rules"},{"title":"List the network's business rules","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/rules","href":"/api-reference/settings/list-the-networks-business-rules"},{"title":"Create a rule from a catalogue template","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/rules","href":"/api-reference/settings/create-a-rule-from-a-catalogue-template"},{"title":"List the network's rulesets","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/rules/groups","href":"/api-reference/settings/list-the-networks-rulesets"},{"title":"Create a ruleset","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/rules/groups","href":"/api-reference/settings/create-a-ruleset"},{"title":"Change a ruleset","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/rules/groups/{groupId}","href":"/api-reference/settings/change-a-ruleset"},{"title":"List the rule catalogue","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/rules/templates","href":"/api-reference/settings/list-the-rule-catalogue"},{"title":"Get one rule and its per-subject thresholds","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/rules/{ruleId}","href":"/api-reference/settings/get-one-rule-and-its-per-subject-thresholds"},{"title":"Change a rule's threshold, mode, perimeter or switch","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/rules/{ruleId}","href":"/api-reference/settings/change-a-rules-threshold-mode-perimeter-or-switch"},{"title":"Read the network settings","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/settings","href":"/api-reference/settings/read-the-network-settings"},{"title":"Replace the network settings","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/settings","href":"/api-reference/settings/replace-the-network-settings"}]},{"group":"Devices","pages":[{"title":"Get the active card-terminal provider","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/payment-terminal/config","href":"/api-reference/devices/get-the-active-card-terminal-provider"},{"title":"Run the card-terminal round-trip self-test","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/payment-terminal/test","href":"/api-reference/devices/run-the-card-terminal-round-trip-self-test"}]},{"group":"Audit","pages":[{"title":"Query the central audit log","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/audit","href":"/api-reference/audit/query-the-central-audit-log"}]}]}]}]},{"language":"fr","tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":"/fr"}]},{"tab":"Développeurs","pages":[{"title":"Développeurs","href":"/fr/developers/overview"}]},{"tab":"API Reference","groups":[{"group":"Ventes \u0026 encaissement","pages":[{"group":"Checkout","pages":[{"title":"List appointments (RDV)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/appointments","href":"/api-reference/checkout/list-appointments-rdv"},{"title":"Book an appointment (RDV)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/appointments","href":"/api-reference/checkout/book-an-appointment-rdv"},{"title":"Get an appointment (RDV) by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/appointments/{appointmentId}","href":"/api-reference/checkout/get-an-appointment-rdv-by-id"},{"title":"Cancel an appointment (RDV)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/appointments/{appointmentId}/cancel","href":"/api-reference/checkout/cancel-an-appointment-rdv"},{"title":"Complete an appointment (RDV)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/appointments/{appointmentId}/complete","href":"/api-reference/checkout/complete-an-appointment-rdv"},{"title":"Confirm an appointment (RDV)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/appointments/{appointmentId}/confirm","href":"/api-reference/checkout/confirm-an-appointment-rdv"},{"title":"Mark an appointment (RDV) as a no-show","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/appointments/{appointmentId}/no-show","href":"/api-reference/checkout/mark-an-appointment-rdv-as-a-no-show"},{"title":"Reschedule an appointment (RDV)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/appointments/{appointmentId}/reschedule","href":"/api-reference/checkout/reschedule-an-appointment-rdv"},{"title":"Finalize a settled sale (encaissement)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/checkout/finalize","href":"/api-reference/checkout/finalize-a-settled-sale-encaissement"},{"title":"List deposits (acomptes)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/deposits","href":"/api-reference/checkout/list-deposits-acomptes"},{"title":"Open a deposit (acompte)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/deposits","href":"/api-reference/checkout/open-a-deposit-acompte"},{"title":"Get a deposit (acompte) by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/deposits/{depositId}","href":"/api-reference/checkout/get-a-deposit-acompte-by-id"},{"title":"Record a deposit payment (versement)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/deposits/{depositId}/payments","href":"/api-reference/checkout/record-a-deposit-payment-versement"},{"title":"Settle a deposit (acompte)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/deposits/{depositId}/settle","href":"/api-reference/checkout/settle-a-deposit-acompte"},{"title":"List open parked sales","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/parked","href":"/api-reference/checkout/list-open-parked-sales"},{"title":"Park a cart","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/parked","href":"/api-reference/checkout/park-a-cart"},{"title":"Get a parked sale by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/parked/{parkedSaleId}","href":"/api-reference/checkout/get-a-parked-sale-by-id"},{"title":"Drop a parked sale","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/parked/{parkedSaleId}","href":"/api-reference/checkout/drop-a-parked-sale"},{"title":"Resume a parked sale","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/parked/{parkedSaleId}/resume","href":"/api-reference/checkout/resume-a-parked-sale"},{"title":"List quotes","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/quotes","href":"/api-reference/checkout/list-quotes"},{"title":"Create a quote (devis)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/quotes","href":"/api-reference/checkout/create-a-quote-devis"},{"title":"Get a quote by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/quotes/{quoteId}","href":"/api-reference/checkout/get-a-quote-by-id"},{"title":"Update a quote","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/quotes/{quoteId}","href":"/api-reference/checkout/update-a-quote"},{"title":"Accept a quote","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/quotes/{quoteId}/accept","href":"/api-reference/checkout/accept-a-quote"},{"title":"Cancel a quote","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/quotes/{quoteId}/cancel","href":"/api-reference/checkout/cancel-a-quote"},{"title":"Send a quote","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/quotes/{quoteId}/send","href":"/api-reference/checkout/send-a-quote"},{"title":"List in-store holds","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/reservations","href":"/api-reference/checkout/list-in-store-holds"},{"title":"Place an in-store hold (réservation)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/reservations","href":"/api-reference/checkout/place-an-in-store-hold-réservation"},{"title":"Get a reservation by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/reservations/{reservationId}","href":"/api-reference/checkout/get-a-reservation-by-id"},{"title":"Cancel a hold","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/reservations/{reservationId}/cancel","href":"/api-reference/checkout/cancel-a-hold"},{"title":"Fulfil a hold","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/reservations/{reservationId}/fulfil","href":"/api-reference/checkout/fulfil-a-hold"},{"title":"Open a register session (session de caisse)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/sessions","href":"/api-reference/checkout/open-a-register-session-session-de-caisse"},{"title":"Get a register session (session de caisse) by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/sessions/{sessionId}","href":"/api-reference/checkout/get-a-register-session-session-de-caisse-by-id"},{"title":"Close a register session (clôture de caisse)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/sessions/{sessionId}/close","href":"/api-reference/checkout/close-a-register-session-clôture-de-caisse"},{"title":"Record a cash movement (mouvement de caisse) on a session","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/sessions/{sessionId}/movements","href":"/api-reference/checkout/record-a-cash-movement-mouvement-de-caisse-on-a-session"}]},{"group":"Orders","pages":[{"title":"List orders (commandes)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/orders","href":"/api-reference/orders/list-orders-commandes"},{"title":"Capture an order (commande)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/orders","href":"/api-reference/orders/capture-an-order-commande"},{"title":"Get an order by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/orders/{id}","href":"/api-reference/orders/get-an-order-by-id"},{"title":"Advance an order","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/orders/{id}/advance","href":"/api-reference/orders/advance-an-order"},{"title":"Revert an order one step","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/orders/{id}/revert","href":"/api-reference/orders/revert-an-order-one-step"},{"title":"Route a captured order","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/orders/{id}/route","href":"/api-reference/orders/route-a-captured-order"}]},{"group":"Returns","pages":[{"title":"How much is still refundable on an acompte / caution","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/refunds/refundable/{subjectKind}/{subjectId}","href":"/api-reference/returns/how-much-is-still-refundable-on-an-acompte-caution"},{"title":"Refund an acompte / caution as store credit (avoir)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/refunds/store-credit","href":"/api-reference/returns/refund-an-acompte-caution-as-store-credit-avoir"},{"title":"Get a store-credit refund by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/refunds/{refundId}","href":"/api-reference/returns/get-a-store-credit-refund-by-id"},{"title":"List processed returns (retours)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/returns","href":"/api-reference/returns/list-processed-returns-retours"},{"title":"Process a return (retour / avoir)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/returns","href":"/api-reference/returns/process-a-return-retour-avoir"},{"title":"Get a processed return by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/returns/{id}","href":"/api-reference/returns/get-a-processed-return-by-id"},{"title":"Get a return's cash-drawer pay-out","description":"Resolves the signed cash-drawer pay-out a processed return produced — a NEGATIVE integer-cent movement for a cash refund, or `null` for a non-cash / zero-valued one. This is the figure the back-office reconciles the register against. 404s when no return carries the given id.","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/returns/{id}/cash-movement","href":"/api-reference/returns/get-a-returns-cash-drawer-pay-out"}]},{"group":"Fiscal","pages":[{"title":"List the published fiscal verification keys","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal-keys","href":"/api-reference/fiscal/list-the-published-fiscal-verification-keys"},{"title":"Export the period retention archive","description":"Exports the period-sealed NF525 retention archive (JET, G4): the `[from, to]` window's ticket signatures + closures anchored to the pre-window chain, plus the algorithm manifest and published public keys so an auditor re-verifies it OFFLINE. `store` (the chain id) and the `?from=`/`?to=` UTC-day window (`YYYY-MM-DD`) are REQUIRED — a missing store or a missing/inverted window 400s.","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal/archive","href":"/api-reference/fiscal/export-the-period-retention-archive"},{"title":"Get one sealed closure by period","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal/closure","href":"/api-reference/fiscal/get-one-sealed-closure-by-period"},{"title":"List a store's sealed closures","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal/closures","href":"/api-reference/fiscal/list-a-stores-sealed-closures"},{"title":"Seal a mandatory fiscal closure","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/fiscal/closures","href":"/api-reference/fiscal/seal-a-mandatory-fiscal-closure"},{"title":"Export the signed fiscal journal","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal/journal","href":"/api-reference/fiscal/export-the-signed-fiscal-journal"},{"title":"Verify the fiscal chain integrity","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal/verify","href":"/api-reference/fiscal/verify-the-fiscal-chain-integrity"},{"title":"Fiscal X (mid-shift read)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal/x","href":"/api-reference/fiscal/fiscal-x-mid-shift-read"},{"title":"Fiscal Z (closing report)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal/z","href":"/api-reference/fiscal/fiscal-z-closing-report"}]},{"group":"Compliance","pages":[{"title":"List age-verification attestations","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/age-attestations","href":"/api-reference/compliance/list-age-verification-attestations"},{"title":"Record an age-verification attestation","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/age-attestations","href":"/api-reference/compliance/record-an-age-verification-attestation"}]}]},{"group":"Catalogue \u0026 stock","pages":[{"group":"Catalog","pages":[{"title":"List catalog brands (marques)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/brands","href":"/api-reference/catalog/list-catalog-brands-marques"},{"title":"Create a brand (marque)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/brands","href":"/api-reference/catalog/create-a-brand-marque"},{"title":"Get a brand (marque) by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/brands/{brandId}","href":"/api-reference/catalog/get-a-brand-marque-by-id"},{"title":"Update a brand (marque)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/brands/{brandId}","href":"/api-reference/catalog/update-a-brand-marque"},{"title":"Deactivate (archive) a brand (marque)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/brands/{brandId}/deactivate","href":"/api-reference/catalog/deactivate-archive-a-brand-marque"},{"title":"List a brand's suppliers (fournisseurs)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/brands/{brandId}/suppliers","href":"/api-reference/catalog/list-a-brands-suppliers-fournisseurs"},{"title":"Replace a brand's supplier (fournisseur) set","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/brands/{brandId}/suppliers","href":"/api-reference/catalog/replace-a-brands-supplier-fournisseur-set"},{"title":"Enrich a single brand or product synchronously","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/catalog/enrich","href":"/api-reference/catalog/enrich-a-single-brand-or-product-synchronously"},{"title":"Upload a supplier PDF catalogue for extraction","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/catalog/imports","href":"/api-reference/catalog/upload-a-supplier-pdf-catalogue-for-extraction"},{"title":"Poll a catalogue-import job's status and proposed products","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/catalog/imports/{jobId}","href":"/api-reference/catalog/poll-a-catalogue-import-jobs-status-and-proposed-products"},{"title":"List catalog kits (coffrets, nomenclatures)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/kits","href":"/api-reference/catalog/list-catalog-kits-coffrets-nomenclatures"},{"title":"Create a kit (coffret / nomenclature / BOM)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/kits","href":"/api-reference/catalog/create-a-kit-coffret-nomenclature-bom"},{"title":"Update a kit (coffret / nomenclature)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/kits/{id}","href":"/api-reference/catalog/update-a-kit-coffret-nomenclature"},{"title":"Deactivate (archive) a kit (coffret)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/kits/{id}/deactivate","href":"/api-reference/catalog/deactivate-archive-a-kit-coffret"},{"title":"Resolve a kit's price and explosion (nomenclature)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/kits/{id}/resolve","href":"/api-reference/catalog/resolve-a-kits-price-and-explosion-nomenclature"},{"title":"List markdown schedules (démarques / soldes)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/markdowns","href":"/api-reference/catalog/list-markdown-schedules-démarques-soldes"},{"title":"Set a product's markdown schedule (démarque programmée)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/markdowns","href":"/api-reference/catalog/set-a-products-markdown-schedule-démarque-programmée"},{"title":"Resolve a product's markdown price (prix démarqué)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/markdowns/{productId}","href":"/api-reference/catalog/resolve-a-products-markdown-price-prix-démarqué"},{"title":"Deactivate a product's markdown schedule (fin de démarque)","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/markdowns/{productId}","href":"/api-reference/catalog/deactivate-a-products-markdown-schedule-fin-de-démarque"},{"title":"List / search catalog products (produits, articles)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/products","href":"/api-reference/catalog/list-search-catalog-products-produits-articles"},{"title":"Create a product (produit)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/products","href":"/api-reference/catalog/create-a-product-produit"},{"title":"Bulk-import products","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/products/import","href":"/api-reference/catalog/bulk-import-products"},{"title":"List the sellable catalogue (produits + prix de vente TTC)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/products/sellable","href":"/api-reference/catalog/list-the-sellable-catalogue-produits-+-prix-de-vente-ttc"},{"title":"Get a product (produit) by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/products/{id}","href":"/api-reference/catalog/get-a-product-produit-by-id"},{"title":"Update a product (produit)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/products/{id}","href":"/api-reference/catalog/update-a-product-produit"},{"title":"Get a product's priced sellable units (prix de vente TTC)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/products/{id}/units","href":"/api-reference/catalog/get-a-products-priced-sellable-units-prix-de-vente-ttc"},{"title":"Global cross-entity search (recherche globale)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/search","href":"/api-reference/catalog/global-cross-entity-search-recherche-globale"},{"title":"List price overrides (prix magasin) by store or by product","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/store-prices","href":"/api-reference/catalog/list-price-overrides-prix-magasin-by-store-or-by-product"},{"title":"Set a store price override (prix magasin / surcharge)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/store-prices","href":"/api-reference/catalog/set-a-store-price-override-prix-magasin-surcharge"},{"title":"Clear a store price override","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/store-prices","href":"/api-reference/catalog/clear-a-store-price-override"},{"title":"List taxonomy axes (classification, familles)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/taxonomy","href":"/api-reference/catalog/list-taxonomy-axes-classification-familles"},{"title":"Create a taxonomy axis (axe de classification)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/taxonomy","href":"/api-reference/catalog/create-a-taxonomy-axis-axe-de-classification"},{"title":"List the importable taxonomy presets (librairie d'axes)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/taxonomy/presets","href":"/api-reference/catalog/list-the-importable-taxonomy-presets-librairie-daxes"},{"title":"Save the current taxonomy as an internal preset","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/taxonomy/presets","href":"/api-reference/catalog/save-the-current-taxonomy-as-an-internal-preset"},{"title":"Delete an internal taxonomy preset","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/taxonomy/presets/{presetId}","href":"/api-reference/catalog/delete-an-internal-taxonomy-preset"},{"title":"Import a taxonomy preset (importer une librairie d'axes)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/taxonomy/presets/{presetId}/import","href":"/api-reference/catalog/import-a-taxonomy-preset-importer-une-librairie-daxes"},{"title":"Preview a taxonomy preset import (dry run)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/taxonomy/presets/{presetId}/preview","href":"/api-reference/catalog/preview-a-taxonomy-preset-import-dry-run"},{"title":"Get a taxonomy axis (axe de classification) by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/taxonomy/{axisId}","href":"/api-reference/catalog/get-a-taxonomy-axis-axe-de-classification-by-id"},{"title":"Update a taxonomy axis (axe de classification)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/taxonomy/{axisId}","href":"/api-reference/catalog/update-a-taxonomy-axis-axe-de-classification"},{"title":"Delete a taxonomy axis (supprimer un axe)","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/taxonomy/{axisId}","href":"/api-reference/catalog/delete-a-taxonomy-axis-supprimer-un-axe"},{"title":"Deactivate (archive) a taxonomy axis (axe de classification)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/taxonomy/{axisId}/deactivate","href":"/api-reference/catalog/deactivate-archive-a-taxonomy-axis-axe-de-classification"},{"title":"Reparent a taxonomy node (déplacer un nœud)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/taxonomy/{axisId}/nodes/{nodeId}/move","href":"/api-reference/catalog/reparent-a-taxonomy-node-déplacer-un-nœud"}]},{"group":"Inventory","pages":[{"title":"List cadence configs (cadence de comptage tournant)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/cycle-counts/cadences","href":"/api-reference/inventory/list-cadence-configs-cadence-de-comptage-tournant"},{"title":"Upsert a store's cadence config","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/cycle-counts/cadences","href":"/api-reference/inventory/upsert-a-stores-cadence-config"},{"title":"Plan a store's due cycle counts (comptage tournant)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/cycle-counts/plan","href":"/api-reference/inventory/plan-a-stores-due-cycle-counts-comptage-tournant"},{"title":"Set a SKU's count policy","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/cycle-counts/policies","href":"/api-reference/inventory/set-a-skus-count-policy"},{"title":"Complete a count task","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/cycle-counts/tasks/{skuId}/complete","href":"/api-reference/inventory/complete-a-count-task"},{"title":"Skip a count task","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/cycle-counts/tasks/{skuId}/skip","href":"/api-reference/inventory/skip-a-count-task"},{"title":"List stock items (stock / inventaire)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/inventory","href":"/api-reference/inventory/list-stock-items-stock-inventaire"},{"title":"List count sessions (comptages / inventaires physiques)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/inventory/counts","href":"/api-reference/inventory/list-count-sessions-comptages-inventaires-physiques"},{"title":"Open a count session (comptage / inventaire physique)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/inventory/counts","href":"/api-reference/inventory/open-a-count-session-comptage-inventaire-physique"},{"title":"Get a count session by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/inventory/counts/{sessionId}","href":"/api-reference/inventory/get-a-count-session-by-id"},{"title":"Close a count session","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/inventory/counts/{sessionId}/close","href":"/api-reference/inventory/close-a-count-session"},{"title":"Record a counted line","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/inventory/counts/{sessionId}/lines","href":"/api-reference/inventory/record-a-counted-line"},{"title":"Get a count session's valued variance","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/inventory/counts/{sessionId}/variance","href":"/api-reference/inventory/get-a-count-sessions-valued-variance"},{"title":"List stock in transit between stores","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/inventory/in-transit","href":"/api-reference/inventory/list-stock-in-transit-between-stores"},{"title":"List stock write-offs (démarque)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/inventory/write-offs","href":"/api-reference/inventory/list-stock-write-offs-démarque"},{"title":"Record a stock write-off (démarque)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/inventory/write-offs","href":"/api-reference/inventory/record-a-stock-write-off-démarque"},{"title":"Approve a stock write-off","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/inventory/write-offs/{id}/approve","href":"/api-reference/inventory/approve-a-stock-write-off"},{"title":"Reject a stock write-off","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/inventory/write-offs/{id}/reject","href":"/api-reference/inventory/reject-a-stock-write-off"},{"title":"Get a stock item by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/inventory/{id}","href":"/api-reference/inventory/get-a-stock-item-by-id"}]},{"group":"Replenishment","pages":[{"title":"List reorder policies (seuils de réapprovisionnement)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/reorder-policies","href":"/api-reference/replenishment/list-reorder-policies-seuils-de-réapprovisionnement"},{"title":"Set a reorder policy (seuil min/max) for one SKU × store","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/reorder-policies","href":"/api-reference/replenishment/set-a-reorder-policy-seuil-minmax-for-one-sku-×-store"},{"title":"Generate replenishment suggestions (suggestions de réapprovisionnement) for a store","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/reorder-policies/suggestions","href":"/api-reference/replenishment/generate-replenishment-suggestions-suggestions-de-réapprovisionnement-for-a-store"}]},{"group":"Transfer","pages":[{"title":"List transfers","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/transfers","href":"/api-reference/transfer/list-transfers"},{"title":"Request a transfer","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/transfers","href":"/api-reference/transfer/request-a-transfer"},{"title":"Get a transfer by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/transfers/{transferId}","href":"/api-reference/transfer/get-a-transfer-by-id"},{"title":"Cancel a transfer","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/transfers/{transferId}/cancel","href":"/api-reference/transfer/cancel-a-transfer"},{"title":"Get a transfer's receipt discrepancy","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/transfers/{transferId}/discrepancy","href":"/api-reference/transfer/get-a-transfers-receipt-discrepancy"},{"title":"Receive a transfer","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/transfers/{transferId}/receive","href":"/api-reference/transfer/receive-a-transfer"},{"title":"Ship a transfer","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/transfers/{transferId}/ship","href":"/api-reference/transfer/ship-a-transfer"}]},{"group":"Procurement","pages":[{"title":"List the network's plans","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/plans","href":"/api-reference/procurement/list-the-networks-plans"},{"title":"Open a plan","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/plans","href":"/api-reference/procurement/open-a-plan"},{"title":"Get one plan","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/plans/{planId}","href":"/api-reference/procurement/get-one-plan"},{"title":"Edit a draft plan","deprecated":null,"version":null,"openapi":"/openapi.json patch /v1/plans/{planId}","href":"/api-reference/procurement/edit-a-draft-plan"},{"title":"Cancel a draft plan","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/plans/{planId}/cancel","href":"/api-reference/procurement/cancel-a-draft-plan"},{"title":"List the lines of one plan","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/plans/{planId}/items","href":"/api-reference/procurement/list-the-lines-of-one-plan"},{"title":"Add a line to a draft plan","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/plans/{planId}/items","href":"/api-reference/procurement/add-a-line-to-a-draft-plan"},{"title":"Remove a line from a draft plan","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/plans/{planId}/items/{itemId}","href":"/api-reference/procurement/remove-a-line-from-a-draft-plan"},{"title":"Judge a plan against the network's rules","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/plans/{planId}/rules","href":"/api-reference/procurement/judge-a-plan-against-the-networks-rules"},{"title":"Move a plan one step along its lifecycle","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/plans/{planId}/transitions","href":"/api-reference/procurement/move-a-plan-one-step-along-its-lifecycle"},{"title":"List purchase orders (commandes fournisseur)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/purchase-orders","href":"/api-reference/procurement/list-purchase-orders-commandes-fournisseur"},{"title":"Create a purchase order (commande fournisseur / bon de commande)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/purchase-orders","href":"/api-reference/procurement/create-a-purchase-order-commande-fournisseur-bon-de-commande"},{"title":"Get a purchase order by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/purchase-orders/{orderId}","href":"/api-reference/procurement/get-a-purchase-order-by-id"},{"title":"Receive against a purchase order (réception de marchandise)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/purchase-orders/{orderId}/receive","href":"/api-reference/procurement/receive-against-a-purchase-order-réception-de-marchandise"},{"title":"Get a purchase order's received-vs-ordered variance (écart de réception)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/purchase-orders/{orderId}/variance","href":"/api-reference/procurement/get-a-purchase-orders-received-vs-ordered-variance-écart-de-réception"},{"title":"List returns-to-vendor (retours fournisseur)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/return-to-vendors","href":"/api-reference/procurement/list-returns-to-vendor-retours-fournisseur"},{"title":"Raise a return-to-vendor (retour fournisseur)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/return-to-vendors","href":"/api-reference/procurement/raise-a-return-to-vendor-retour-fournisseur"},{"title":"Get a return-to-vendor by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/return-to-vendors/{rtvId}","href":"/api-reference/procurement/get-a-return-to-vendor-by-id"},{"title":"Cancel a return-to-vendor","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/return-to-vendors/{rtvId}/cancel","href":"/api-reference/procurement/cancel-a-return-to-vendor"},{"title":"Credit a return-to-vendor","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/return-to-vendors/{rtvId}/credit","href":"/api-reference/procurement/credit-a-return-to-vendor"},{"title":"Ship a return-to-vendor","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/return-to-vendors/{rtvId}/ship","href":"/api-reference/procurement/ship-a-return-to-vendor"},{"title":"List suppliers (fournisseurs)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/suppliers","href":"/api-reference/procurement/list-suppliers-fournisseurs"},{"title":"Create a supplier","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/suppliers","href":"/api-reference/procurement/create-a-supplier"},{"title":"Get a supplier by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/suppliers/{supplierId}","href":"/api-reference/procurement/get-a-supplier-by-id"},{"title":"Update a supplier (fournisseur)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/suppliers/{supplierId}","href":"/api-reference/procurement/update-a-supplier-fournisseur"},{"title":"Deactivate a supplier","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/suppliers/{supplierId}/deactivate","href":"/api-reference/procurement/deactivate-a-supplier"}]},{"group":"Network","pages":[{"title":"List the companies (sociétés) the network trades under","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/companies","href":"/api-reference/network/list-the-companies-sociétés-the-network-trades-under"},{"title":"Create a company (société)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/companies","href":"/api-reference/network/create-a-company-société"},{"title":"Attach a store to a company and set its establishment number","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/companies/stores/{storeId}","href":"/api-reference/network/attach-a-store-to-a-company-and-set-its-establishment-number"},{"title":"Get a company with its identity history","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/companies/{companyId}","href":"/api-reference/network/get-a-company-with-its-identity-history"},{"title":"Edit a company's fiscal identity (appends a version)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/companies/{companyId}/identity","href":"/api-reference/network/edit-a-companys-fiscal-identity-appends-a-version"},{"title":"Resolve the fiscal header a store's documents print","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fiscal-identity/stores/{storeId}","href":"/api-reference/network/resolve-the-fiscal-header-a-stores-documents-print"},{"title":"List the paired register peripherals","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fleet","href":"/api-reference/network/list-the-paired-register-peripherals"},{"title":"Pair a device onto a register","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/fleet","href":"/api-reference/network/pair-a-device-onto-a-register"},{"title":"Get a paired device by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/fleet/{deviceId}","href":"/api-reference/network/get-a-paired-device-by-id"},{"title":"Update a paired device","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/fleet/{deviceId}","href":"/api-reference/network/update-a-paired-device"},{"title":"Retire (unpair) a paired device","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/fleet/{deviceId}/retire","href":"/api-reference/network/retire-unpair-a-paired-device"},{"title":"List the network's regions","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/regions","href":"/api-reference/network/list-the-networks-regions"},{"title":"Create a region","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/regions","href":"/api-reference/network/create-a-region"},{"title":"Get a region by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/regions/{regionId}","href":"/api-reference/network/get-a-region-by-id"},{"title":"Update a region","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/regions/{regionId}","href":"/api-reference/network/update-a-region"},{"title":"Deactivate (archive) a region","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/regions/{regionId}/deactivate","href":"/api-reference/network/deactivate-archive-a-region"},{"title":"List the network's stores","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/stores","href":"/api-reference/network/list-the-networks-stores"},{"title":"Provision a store","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/stores","href":"/api-reference/network/provision-a-store"},{"title":"Get a store by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/stores/{storeId}","href":"/api-reference/network/get-a-store-by-id"},{"title":"Update a store","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/stores/{storeId}","href":"/api-reference/network/update-a-store"},{"title":"Deactivate (close) a store","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/stores/{storeId}/deactivate","href":"/api-reference/network/deactivate-close-a-store"},{"title":"Reactivate (reopen) a store","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/stores/{storeId}/reactivate","href":"/api-reference/network/reactivate-reopen-a-store"},{"title":"List the network's VAT / tax codes","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/tax-codes","href":"/api-reference/network/list-the-networks-vat-tax-codes"},{"title":"Create a VAT / tax code","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/tax-codes","href":"/api-reference/network/create-a-vat-tax-code"},{"title":"Get a tax code by its code","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/tax-codes/{code}","href":"/api-reference/network/get-a-tax-code-by-its-code"},{"title":"Update a VAT / tax code","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/tax-codes/{code}","href":"/api-reference/network/update-a-vat-tax-code"},{"title":"Deactivate (archive) a VAT / tax code","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/tax-codes/{code}/deactivate","href":"/api-reference/network/deactivate-archive-a-vat-tax-code"}]}]},{"group":"Finance","pages":[{"group":"Finance","pages":[{"title":"List finance entries","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance","href":"/api-reference/finance/list-finance-entries"},{"title":"Export a generic accounting file (journal entries / configurable CSV)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance/accounting-export","href":"/api-reference/finance/export-a-generic-accounting-file-journal-entries-configurable-csv"},{"title":"Report cash discrepancies for a period","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance/cash-discrepancy","href":"/api-reference/finance/report-cash-discrepancies-for-a-period"},{"title":"Get one session's cash discrepancy","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance/cash-discrepancy/{sessionId}","href":"/api-reference/finance/get-one-sessions-cash-discrepancy"},{"title":"List deposit batches","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance/deposits","href":"/api-reference/finance/list-deposit-batches"},{"title":"Open a deposit batch","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/finance/deposits","href":"/api-reference/finance/open-a-deposit-batch"},{"title":"Deposit trend (declared vs settled per day)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance/deposits/trend","href":"/api-reference/finance/deposit-trend-declared-vs-settled-per-day"},{"title":"Get a deposit batch by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance/deposits/{batchId}","href":"/api-reference/finance/get-a-deposit-batch-by-id"},{"title":"Settle a deposit line","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/finance/deposits/{batchId}/lines/settle","href":"/api-reference/finance/settle-a-deposit-line"},{"title":"Reconcile a deposit batch","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/finance/deposits/{batchId}/reconcile","href":"/api-reference/finance/reconcile-a-deposit-batch"},{"title":"Export the FEC accounting file","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance/fec","href":"/api-reference/finance/export-the-fec-accounting-file"},{"title":"Report the period close","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance/period-close","href":"/api-reference/finance/report-the-period-close"},{"title":"Close (lock) a fiscal period","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/finance/period-close","href":"/api-reference/finance/close-lock-a-fiscal-period"},{"title":"Get a finance entry by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/finance/{entryId}","href":"/api-reference/finance/get-a-finance-entry-by-id"},{"title":"Windowed sales analytics report","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/reports/sales","href":"/api-reference/finance/windowed-sales-analytics-report"},{"title":"List finalized sale tickets","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/sales","href":"/api-reference/finance/list-finalized-sale-tickets"},{"title":"Tally one salesperson's day","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/sales/seller-day","href":"/api-reference/finance/tally-one-salespersons-day"},{"title":"Summarise sales into dashboard KPIs","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/sales/summary","href":"/api-reference/finance/summarise-sales-into-dashboard-kpis"},{"title":"Get a sale ticket by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/sales/{id}","href":"/api-reference/finance/get-a-sale-ticket-by-id"}]},{"group":"Billing","pages":[{"title":"Read the billing catalogue and current plan","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/credits/billing","href":"/api-reference/billing/read-the-billing-catalogue-and-current-plan"},{"title":"Grant SMS credits to the account wallet (crédit)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/credits/grant","href":"/api-reference/billing/grant-sms-credits-to-the-account-wallet-crédit"},{"title":"Read the credit wallet, ledger and usage (crédit, recharge)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/credits/overview","href":"/api-reference/billing/read-the-credit-wallet-ledger-and-usage-crédit-recharge"},{"title":"Open a Stripe Checkout session for a monthly plan","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/credits/plan","href":"/api-reference/billing/open-a-stripe-checkout-session-for-a-monthly-plan"},{"title":"Open a Stripe Checkout session for a credit top-up","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/credits/topup","href":"/api-reference/billing/open-a-stripe-checkout-session-for-a-credit-top-up"}]},{"group":"Instruments","pages":[{"title":"List stored-value instruments (carte cadeau, avoir)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/giftcards","href":"/api-reference/instruments/list-stored-value-instruments-carte-cadeau-avoir"},{"title":"Issue a stored-value instrument (carte cadeau, avoir)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/giftcards","href":"/api-reference/instruments/issue-a-stored-value-instrument-carte-cadeau-avoir"},{"title":"Report stored-value breakage across the whole network (carte cadeau)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/giftcards/breakage","href":"/api-reference/instruments/report-stored-value-breakage-across-the-whole-network-carte-cadeau"},{"title":"Get an instrument by its bearer code (carte cadeau)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/giftcards/by-code/{code}","href":"/api-reference/instruments/get-an-instrument-by-its-bearer-code-carte-cadeau"},{"title":"Bulk-issue stored-value instruments (carte cadeau)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/giftcards/import","href":"/api-reference/instruments/bulk-issue-stored-value-instruments-carte-cadeau"},{"title":"Redeem value from an instrument (carte cadeau)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/giftcards/redemptions","href":"/api-reference/instruments/redeem-value-from-an-instrument-carte-cadeau"},{"title":"Get an instrument by id (carte cadeau)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/giftcards/{id}","href":"/api-reference/instruments/get-an-instrument-by-id-carte-cadeau"},{"title":"Reload an instrument with more value (recharge carte cadeau)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/giftcards/{id}/reload","href":"/api-reference/instruments/reload-an-instrument-with-more-value-recharge-carte-cadeau"},{"title":"Void an instrument (carte cadeau)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/giftcards/{id}/void","href":"/api-reference/instruments/void-an-instrument-carte-cadeau"}]}]},{"group":"Clients \u0026 fidélité","pages":[{"group":"Customers","pages":[{"title":"List customers","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/customers","href":"/api-reference/customers/list-customers"},{"title":"Register a customer","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/customers","href":"/api-reference/customers/register-a-customer"},{"title":"Report the customer base by RFM segment (segment client)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/customers/segments","href":"/api-reference/customers/report-the-customer-base-by-rfm-segment-segment-client"},{"title":"Get a customer by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/customers/{id}","href":"/api-reference/customers/get-a-customer-by-id"},{"title":"Update a customer profile","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/customers/{id}","href":"/api-reference/customers/update-a-customer-profile"},{"title":"Get a customer's consent record","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/customers/{id}/consent","href":"/api-reference/customers/get-a-customers-consent-record"},{"title":"Record a customer consent decision","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/customers/{id}/consent","href":"/api-reference/customers/record-a-customer-consent-decision"},{"title":"Deactivate a customer (reversible)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/customers/{id}/deactivation","href":"/api-reference/customers/deactivate-a-customer-reversible"},{"title":"Erase a customer's personal data (GDPR)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/customers/{id}/erasure","href":"/api-reference/customers/erase-a-customers-personal-data-gdpr"},{"title":"Export a customer's personal data (GDPR)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/customers/{id}/export","href":"/api-reference/customers/export-a-customers-personal-data-gdpr"},{"title":"Get a customer's purchase history","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/customers/{id}/purchases","href":"/api-reference/customers/get-a-customers-purchase-history"},{"title":"Reactivate a deactivated customer","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/customers/{id}/reactivation","href":"/api-reference/customers/reactivate-a-deactivated-customer"}]},{"group":"Loyalty","pages":[{"title":"List loyalty members (fidélité)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/loyalty","href":"/api-reference/loyalty/list-loyalty-members-fidélité"},{"title":"Get a customer's derived loyalty account (fidélité, palier)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/loyalty/accounts/{customerId}","href":"/api-reference/loyalty/get-a-customers-derived-loyalty-account-fidélité-palier"},{"title":"Accrue loyalty points for a sale (points de fidélité)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/loyalty/accruals","href":"/api-reference/loyalty/accrue-loyalty-points-for-a-sale-points-de-fidélité"},{"title":"Get the active loyalty program config (fidélité, paliers)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/loyalty/config","href":"/api-reference/loyalty/get-the-active-loyalty-program-config-fidélité-paliers"},{"title":"Replace the loyalty program config (fidélité, paliers)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/loyalty/config","href":"/api-reference/loyalty/replace-the-loyalty-program-config-fidélité-paliers"},{"title":"Redeem loyalty points for a discount (points de fidélité)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/loyalty/redemptions","href":"/api-reference/loyalty/redeem-loyalty-points-for-a-discount-points-de-fidélité"},{"title":"Get a loyalty member by id (fidélité)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/loyalty/{memberId}","href":"/api-reference/loyalty/get-a-loyalty-member-by-id-fidélité"}]},{"group":"Notifications","pages":[{"title":"Get per-channel notification availability","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/notifications/channels","href":"/api-reference/notifications/get-per-channel-notification-availability"},{"title":"Send a finalized sale's receipt to the customer","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/notifications/receipt","href":"/api-reference/notifications/send-a-finalized-sales-receipt-to-the-customer"}]}]},{"group":"Marketing \u0026 promotions","pages":[{"group":"Promotions","pages":[{"title":"List the coupon catalogue (code promo)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/coupons","href":"/api-reference/promotions/list-the-coupon-catalogue-code-promo"},{"title":"Create one coupon under a chosen code (code promo)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/coupons","href":"/api-reference/promotions/create-one-coupon-under-a-chosen-code-code-promo"},{"title":"Batch-generate a run of coupon codes (code promo)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/coupons/batch","href":"/api-reference/promotions/batch-generate-a-run-of-coupon-codes-code-promo"},{"title":"Preview a coupon against a basket total (code promo, bon de réduction)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/coupons/validate","href":"/api-reference/promotions/preview-a-coupon-against-a-basket-total-code-promo-bon-de-réduction"},{"title":"Edit an existing coupon (code promo)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/coupons/{id}","href":"/api-reference/promotions/edit-an-existing-coupon-code-promo"},{"title":"Deactivate a coupon (code promo)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/coupons/{id}/deactivate","href":"/api-reference/promotions/deactivate-a-coupon-code-promo"},{"title":"Apply an authorised discount to a whole ticket","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/discounts/ticket","href":"/api-reference/promotions/apply-an-authorised-discount-to-a-whole-ticket"},{"title":"Get an applied discount by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/discounts/{id}","href":"/api-reference/promotions/get-an-applied-discount-by-id"},{"title":"List automatic promotion rules","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/promotions","href":"/api-reference/promotions/list-automatic-promotion-rules"},{"title":"Create or replace an automatic promotion rule","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/promotions","href":"/api-reference/promotions/create-or-replace-an-automatic-promotion-rule"},{"title":"Evaluate the active promotion rules against a cart","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/promotions/evaluate","href":"/api-reference/promotions/evaluate-the-active-promotion-rules-against-a-cart"},{"title":"Get a promotion by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/promotions/{id}","href":"/api-reference/promotions/get-a-promotion-by-id"},{"title":"Update an existing promotion rule","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/promotions/{id}","href":"/api-reference/promotions/update-an-existing-promotion-rule"},{"title":"Deactivate a promotion rule","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/promotions/{id}/deactivate","href":"/api-reference/promotions/deactivate-a-promotion-rule"},{"title":"Get a promotion's full rule definition","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/promotions/{id}/rule","href":"/api-reference/promotions/get-a-promotions-full-rule-definition"}]},{"group":"Marketing","pages":[{"title":"List marketing campaigns (campagne)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/campaigns","href":"/api-reference/marketing/list-marketing-campaigns-campagne"},{"title":"Author a marketing campaign (campagne)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/campaigns","href":"/api-reference/marketing/author-a-marketing-campaign-campagne"},{"title":"Get a campaign by id (campagne)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/campaigns/{id}","href":"/api-reference/marketing/get-a-campaign-by-id-campagne"},{"title":"Preview a campaign's recipients without sending (campagne, relance)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/campaigns/{id}/dry-run","href":"/api-reference/marketing/preview-a-campaigns-recipients-without-sending-campagne-relance"},{"title":"Send a campaign to its consented audience (campagne, relance)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/campaigns/{id}/send","href":"/api-reference/marketing/send-a-campaign-to-its-consented-audience-campagne-relance"}]}]},{"group":"Services","pages":[{"group":"Rentals","pages":[{"title":"List rentals","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/rentals","href":"/api-reference/rentals/list-rentals"},{"title":"Open a rental","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/rentals","href":"/api-reference/rentals/open-a-rental"},{"title":"Get a rental by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/rentals/{rentalId}","href":"/api-reference/rentals/get-a-rental-by-id"},{"title":"Flag a rental as overdue","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/rentals/{rentalId}/mark-overdue","href":"/api-reference/rentals/flag-a-rental-as-overdue"},{"title":"Return a rental and settle the caution","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/rentals/{rentalId}/return","href":"/api-reference/rentals/return-a-rental-and-settle-the-caution"}]},{"group":"Repairs","pages":[{"title":"List repair orders","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/repairs","href":"/api-reference/repairs/list-repair-orders"},{"title":"Take an article in for repair","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/repairs","href":"/api-reference/repairs/take-an-article-in-for-repair"},{"title":"Get a repair order by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/repairs/{orderId}","href":"/api-reference/repairs/get-a-repair-order-by-id"},{"title":"Record collection of a repaired article","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/repairs/{orderId}/collect","href":"/api-reference/repairs/record-collection-of-a-repaired-article"},{"title":"Mark a repair order ready for pickup","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/repairs/{orderId}/ready","href":"/api-reference/repairs/mark-a-repair-order-ready-for-pickup"},{"title":"Send a repair order to the workshop","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/repairs/{orderId}/to-workshop","href":"/api-reference/repairs/send-a-repair-order-to-the-workshop"},{"title":"Declare a repair order unrepairable","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/repairs/{orderId}/unrepairable","href":"/api-reference/repairs/declare-a-repair-order-unrepairable"}]}]},{"group":"Assistant","pages":[{"title":"Ask the in-till assistant a question","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/assistant/chat","href":"/api-reference/assistant/ask-the-in-till-assistant-a-question"}]},{"group":"Intégrations \u0026 données","pages":[{"group":"Integrations","pages":[{"title":"List the connectors (intégration, connecteur)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/integrations","href":"/api-reference/integrations/list-the-connectors-intégration-connecteur"},{"title":"Read one connector (connecteur)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/integrations/{key}","href":"/api-reference/integrations/read-one-connector-connecteur"},{"title":"Configure a connector (connecteur, intégration)","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/integrations/{key}","href":"/api-reference/integrations/configure-a-connector-connecteur-intégration"},{"title":"Disable a connector (connecteur)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/integrations/{key}/disable","href":"/api-reference/integrations/disable-a-connector-connecteur"},{"title":"Enable a connector (connecteur)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/integrations/{key}/enable","href":"/api-reference/integrations/enable-a-connector-connecteur"}]},{"group":"Merchandising import","pages":[{"title":"Bulk-import proposed promotions (promotions)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/import/promotions","href":"/api-reference/merchandising-import/bulk-import-proposed-promotions-promotions"},{"title":"Bulk-import proposed replenishment plans (commandes de réapprovisionnement)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/import/purchase-orders","href":"/api-reference/merchandising-import/bulk-import-proposed-replenishment-plans-commandes-de-réapprovisionnement"},{"title":"Bulk-import proposed inter-store transfer plans (transferts inter-magasins)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/import/transfers","href":"/api-reference/merchandising-import/bulk-import-proposed-inter-store-transfer-plans-transferts-inter-magasins"}]},{"group":"Data platform","pages":[{"title":"Export a resource's changed rows (incremental CDC feed)","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/export/{resource}","href":"/api-reference/data-platform/export-a-resources-changed-rows-incremental-cdc-feed"}]}]},{"group":"Système","pages":[{"group":"Auth","pages":[{"title":"Resolve the authenticated actor's identity and effective POS scopes (MCP gateway alias)","deprecated":null,"version":null,"openapi":"/openapi.json get /api/auth/whoami","href":"/api-reference/auth/resolve-the-authenticated-actors-identity-and-effective-pos-scopes-mcp-gateway-alias"},{"title":"Request a single-use manager elevation grant","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/auth/elevate","href":"/api-reference/auth/request-a-single-use-manager-elevation-grant"},{"title":"Set or rotate the calling actor's own elevation PIN","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/auth/elevation/pin","href":"/api-reference/auth/set-or-rotate-the-calling-actors-own-elevation-pin"},{"title":"Resolve the authenticated actor's identity and effective POS scopes","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/auth/whoami","href":"/api-reference/auth/resolve-the-authenticated-actors-identity-and-effective-pos-scopes"},{"title":"Tally the authenticated actor's own day","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/me/day-summary","href":"/api-reference/auth/tally-the-authenticated-actors-own-day"},{"title":"Get the POS permission manifest","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/permissions/manifest","href":"/api-reference/auth/get-the-pos-permission-manifest"}]},{"group":"Team","pages":[{"title":"List team members","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/team","href":"/api-reference/team/list-team-members"},{"title":"Provision a team member","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/team","href":"/api-reference/team/provision-a-team-member"},{"title":"Get a team member by id","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/team/{memberId}","href":"/api-reference/team/get-a-team-member-by-id"},{"title":"Replace a team member's directory record","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/team/{memberId}","href":"/api-reference/team/replace-a-team-members-directory-record"},{"title":"Offboard a team member (disable sign-in)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/team/{memberId}/deactivate","href":"/api-reference/team/offboard-a-team-member-disable-sign-in"},{"title":"Get a team member's effective permissions","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/team/{memberId}/permissions","href":"/api-reference/team/get-a-team-members-effective-permissions"},{"title":"Re-onboard a team member (restore sign-in)","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/team/{memberId}/reactivate","href":"/api-reference/team/re-onboard-a-team-member-restore-sign-in"},{"title":"Assign a scoped role to a team member","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/team/{memberId}/roles","href":"/api-reference/team/assign-a-scoped-role-to-a-team-member"},{"title":"Revoke a scoped role from a team member","deprecated":null,"version":null,"openapi":"/openapi.json delete /v1/team/{memberId}/roles","href":"/api-reference/team/revoke-a-scoped-role-from-a-team-member"}]},{"group":"Settings","pages":[{"title":"Read the order-routing rules","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/routing-rules","href":"/api-reference/settings/read-the-order-routing-rules"},{"title":"Replace the order-routing rules","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/routing-rules","href":"/api-reference/settings/replace-the-order-routing-rules"},{"title":"List the network's business rules","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/rules","href":"/api-reference/settings/list-the-networks-business-rules"},{"title":"Create a rule from a catalogue template","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/rules","href":"/api-reference/settings/create-a-rule-from-a-catalogue-template"},{"title":"List the network's rulesets","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/rules/groups","href":"/api-reference/settings/list-the-networks-rulesets"},{"title":"Create a ruleset","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/rules/groups","href":"/api-reference/settings/create-a-ruleset"},{"title":"Change a ruleset","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/rules/groups/{groupId}","href":"/api-reference/settings/change-a-ruleset"},{"title":"List the rule catalogue","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/rules/templates","href":"/api-reference/settings/list-the-rule-catalogue"},{"title":"Get one rule and its per-subject thresholds","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/rules/{ruleId}","href":"/api-reference/settings/get-one-rule-and-its-per-subject-thresholds"},{"title":"Change a rule's threshold, mode, perimeter or switch","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/rules/{ruleId}","href":"/api-reference/settings/change-a-rules-threshold-mode-perimeter-or-switch"},{"title":"Read the network settings","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/settings","href":"/api-reference/settings/read-the-network-settings"},{"title":"Replace the network settings","deprecated":null,"version":null,"openapi":"/openapi.json put /v1/settings","href":"/api-reference/settings/replace-the-network-settings"}]},{"group":"Devices","pages":[{"title":"Get the active card-terminal provider","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/payment-terminal/config","href":"/api-reference/devices/get-the-active-card-terminal-provider"},{"title":"Run the card-terminal round-trip self-test","deprecated":null,"version":null,"openapi":"/openapi.json post /v1/payment-terminal/test","href":"/api-reference/devices/run-the-card-terminal-round-trip-self-test"}]},{"group":"Audit","pages":[{"title":"Query the central audit log","deprecated":null,"version":null,"openapi":"/openapi.json get /v1/audit","href":"/api-reference/audit/query-the-central-audit-log"}]}]}]}]}]},"title":"List the published fiscal verification keys - Solya POS Docs","buildId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","deploymentId":"dpl_2oYXwqkEXirXBPk8wV1FtM5USFWi","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-WRhTSUDL.js","utils-ChMov4Kr.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-_REmC2bI.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Bp6nVRCu.js","snippetPresets-DZadmXoU.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CY2WdoTl.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-DwYG-Q4l.js","shallow-BXQIGwv4.js","getApiPlaygroundDisplay-CK5nK5B9.js","CodeSnippet-TH4a2aGW.js","CodeSnippets-DwsQiOFS.js","Page-R3M_BF4L.js","getPastedJson-DD7kUzi_.js","icon-holE3QoJ.js","MethodPill-DUW0T8us.js","DuplicateIcon-CI_p4be-.js","createIcon-BdbRvavb.js","DynamicMarkdown-DN96a4Ur.js","SectionHeading-SCu36A9d.js","axios-vUo_bRtp.js","Markdown-CCeGv-zI.js","clsx-BGBGWFTt.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-Cv_O2fky.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-2C5OB2eV.js"]}