Use a Bouclay secret key (sk_test_..., sk_live_...) or restricted key
(rk_test_..., rk_live_...).
A secret key can call every endpoint. A restricted key can only call the
endpoints its scopes cover. A scope is {resource}:{access}, for example
customers:read or refunds:write, and write includes read. GET
requests need read access and everything else needs write, except
POST /subscriptions/{id}/items/{item}/preview, which only needs
subscriptions:read. A request outside the key's scopes gets 403 permission_denied naming the missing scope, and its Idempotency-Key
is not used up.
Resource
Endpoints
Access
customers
customers, their addresses and payment methods
read, write
entitlements
/customers/{id}/entitlements
read
credits
/customers/{id}/credit-balance, credit purchases, credit grants, auto-reloads, credit holds (committing one records its usage)
read, write
catalog
products, plans, prices
read, write
meters
meters
read, write
usage
meter events, /customers/{id}/usage
read, write
discounts
discounts
read
subscriptions
subscriptions
read, write
invoices
invoices
read, write
credit_notes
credit notes, POST /invoices/{id}/credit-notes (a refund to the card also needs refunds:write)
read, write
payments
payments
read
refunds
refunds, POST /payments/{id}/refunds, chargebacks and their outcome
read, write
checkout_sessions
checkout sessions
read, write
portal_sessions
portal sessions
write
events
events
read
webhook_endpoints
webhook endpoints
read, write
metrics
metrics
read
Publishable keys (pk_...) are rejected by server-side API endpoints. A
key's mode scopes what it can see and charge: a test key can never reach
a live card.
{"docsConfig":{"theme":"almond","$schema":"https://mintlify.com/docs.json","name":"Bouclay","description":"Recurring billing for African payment gateways: subscriptions, usage billing, invoices, credits and webhooks on your own gateway account.","colors":{"primary":"#0E1414","light":"#E8EDED","dark":"#0E1414"},"logo":{"light":"https://mintcdn.com/bouclay/b4A_rIC0sE3Y7T6P/logo/light.svg?fit=max\u0026auto=format\u0026n=b4A_rIC0sE3Y7T6P\u0026q=85\u0026s=5ca92a6a5dd480294fc922434a667b72","dark":"https://mintcdn.com/bouclay/b4A_rIC0sE3Y7T6P/logo/dark.svg?fit=max\u0026auto=format\u0026n=b4A_rIC0sE3Y7T6P\u0026q=85\u0026s=19abcd04f56cab30bb2cf9559e6eaf83","href":"https://bouclay.com"},"favicon":"https://mintcdn.com/bouclay/b4A_rIC0sE3Y7T6P/favicon.svg?fit=max\u0026auto=format\u0026n=b4A_rIC0sE3Y7T6P\u0026q=85\u0026s=2a4f9c4f649227df10df9728b5afbfc6","api":{"openapi":"api/openapi.yaml","playground":{"display":"interactive"},"examples":{"languages":["curl","javascript","python","php"]}},"navbar":{"links":[{"href":"mailto:hello@bouclay.com","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://bouclay.com/dashboard"}},"footer":{"links":[{"header":"Bouclay","items":[{"label":"Website","href":"https://bouclay.com"},{"label":"Pricing","href":"https://bouclay.com/pricing"},{"label":"Contact","href":"mailto:hello@bouclay.com"}]}]},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"bouclay","hasAudioNarration":false,"actualSubdomain":"bouclay","customDomains":["docs.bouclay.com"],"gitSource":{"type":"github","owner":"josephajibodu","repo":"bouclay","deployBranch":"main","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6ae60fdef146f7c5c1deae11","collectionId":"863f1145-6361-4de5-aeca-3b320cc01ffe","liveDeploymentHistoryId":"6ae60fdef146f7c5c1deae11","schemaVersion":"v3"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ae6139371b8f2e12eebdc8f","clientVersion":"0.0.4043","searchFilterCounts":[{"language":"default","tag":"API reference","count":116},{"language":"default","tag":"Guides","count":26},{"language":"default","tag":"Catalog","count":23},{"language":"default","tag":"Credits","count":17},{"language":"default","tag":"Subscriptions","count":16},{"language":"default","tag":"Connect your app","count":6},{"language":"default","tag":"Customers","count":6},{"language":"default","tag":"Invoices","count":6},{"language":"default","tag":"Webhook endpoints","count":6},{"language":"default","tag":"Catalog and subscriptions","count":5}]},"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":"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":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"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":"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":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":true},"customCss":[],"page":{"pagePath":"api-reference/invoices/create-a-one-off-invoice","slug":"/api-reference/invoices/create-a-one-off-invoice","pageMetadata":{"title":"Create a one-off invoice","description":null,"deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /invoices","href":"/api-reference/invoices/create-a-one-off-invoice","autogeneratedByOpenApi":true},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Create a one-off invoice","description":null,"deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /invoices","href":"/api-reference/invoices/create-a-one-off-invoice","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Invoices"],"operationId":"createInvoice","summary":"Create a one-off invoice","parameters":["2ab5daba-3d3d-419b-b0a5-08a1c5284167"],"requestBody":"5d573e5c-6669-46f0-8703-c2c8a9964eae","responses":{"201":"2aee0fa7-2d35-4538-a816-9eb6b064fd2e","400":"cf9fcf03-9dda-4f8b-b4ff-19d8d2eddd9d","422":"c0033f67-468b-4b4b-8f20-f185fc31ee0b"},"method":"post","type":"path","servers":["82e7126d-28a2-45e6-a54d-f4d46af6c4bd"],"security":["a7132780-59a7-4acb-ad03-ddfd9682e637"],"path":"/invoices","baseUrlOptions":["https://bouclay.com/api/v1"],"title":"Create a one-off invoice","description":"","codeSamples":[],"requestExampleLanguages":["bash","javascript","python","php"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"2ab5daba-3d3d-419b-b0a5-08a1c5284167":{"name":"Idempotency-Key","in":"header","required":true,"schema":{"type":"string","minLength":1,"maxLength":255,"isRequired":true,"description":"Required for POST and PATCH requests. Replays identical method + path + body requests and rejects mismatched re-use.","uniqueKey":"","typeLabel":"string"},"description":"Required for POST and PATCH requests. Replays identical method + path + body requests and rejects mismatched re-use."}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["customer","collectionMode","items"],"properties":{"customer":{"type":"string","isRequired":true,"uniqueKey":"customer","typeLabel":"string"},"collectionMode":{"type":"string","enum":["automatic","manual"],"isRequired":true,"uniqueKey":"collectionMode","typeLabel":"enum\u003cstring>"},"items":{"type":"array","minItems":1,"items":{"type":"object","properties":{"priceId":{"type":"string","uniqueKey":"\\items.items.[INDEX].priceId","typeLabel":"string"},"description":{"type":"string","uniqueKey":"\\items.items.[INDEX].description","typeLabel":"string"},"unitAmount":{"oneOf":[{"type":"number","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"\\items.items.[INDEX].unitAmount.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"\\items.items.[INDEX].unitAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"\\items.items.[INDEX].unitAmount","typeLabel":"number | null"},"quantity":{"type":"integer","minimum":1,"maximum":1000,"default":1,"uniqueKey":"\\items.items.[INDEX].quantity","typeLabel":"integer"}},"uniqueKey":"\\items.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"\\items","typeLabel":"object[]"},"paymentMethod":{"type":"string","uniqueKey":"paymentMethod","typeLabel":"string"},"daysUntilDue":{"type":"integer","minimum":0,"maximum":365,"description":"Payment terms for a manual invoice, in days from today (0 is due on receipt). Left out, the business's payment terms apply.","uniqueKey":"daysUntilDue","typeLabel":"integer"},"reference":{"type":"string","maxLength":100,"description":"The buyer's purchase order number or other reference, printed on the invoice.","uniqueKey":"reference","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"customer":"\u003cstring>","items":[{"priceId":"\u003cstring>","description":"\u003cstring>","unitAmount":1,"quantity":1}],"paymentMethod":"\u003cstring>","daysUntilDue":182,"reference":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"2aee0fa7-2d35-4538-a816-9eb6b064fd2e":{"description":"Invoice response.","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"id":{"type":"string","uniqueKey":"data.id","typeLabel":"string"},"number":{"type":"string","uniqueKey":"data.number","typeLabel":"string"},"status":{"type":"string","uniqueKey":"data.status","typeLabel":"string"},"billingReason":{"type":"string","description":"`subscription_create`, `subscription_cycle`, `subscription_update`, `subscription_threshold`, `manual`, or `credit_purchase` (a top-up of prepaid credit: taxed when used, numbered `{prefix}-PP-0001` with no VAT on it; taxed when bought, a normal tax invoice in your invoice sequence).","uniqueKey":"data.billingReason","typeLabel":"string"},"purpose":{"oneOf":[{"type":"string","enum":["card_verification",null],"description":"`card_verification` for the small charge that saves a card (a checkout session, a card update, a card required at signup). It is refunded once it settles and is no sale, so leave it out of the customer's receipts.","uniqueKey":"data.purpose.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["card_verification",null],"description":"`card_verification` for the small charge that saves a card (a checkout session, a card update, a card required at signup). It is refunded once it settles and is no sale, so leave it out of the customer's receipts.","uniqueKey":"data.purpose.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.purpose","typeLabel":"enum\u003cstring> | null"},"collectionMode":{"type":"string","enum":["automatic","manual"],"uniqueKey":"data.collectionMode","typeLabel":"enum\u003cstring>"},"currency":{"type":"string","uniqueKey":"data.currency","typeLabel":"string"},"subtotal":{"oneOf":[{"type":"number","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"data.subtotal.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"data.subtotal.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.subtotal","typeLabel":"number | null"},"grantApplied":{"oneOf":[{"type":"number","minimum":0,"description":"Credit spent before tax when the invoice was created (promotional, and prepaid credit taxed when bought), so it lowered the VAT like a discount: `total = subtotal - discountTotal - grantApplied + tax added on top`. Never changes; voiding the invoice gives the credit back to its lots.","uniqueKey":"data.grantApplied.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"description":"Credit spent before tax when the invoice was created (promotional, and prepaid credit taxed when bought), so it lowered the VAT like a discount: `total = subtotal - discountTotal - grantApplied + tax added on top`. Never changes; voiding the invoice gives the credit back to its lots.","uniqueKey":"data.grantApplied.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.grantApplied","typeLabel":"number | null"},"taxTotal":{"oneOf":[{"type":"number","minimum":0,"description":"All tax on the invoice, added on top or included. The total includes it either way; the invoice's net is `total - taxTotal`.","uniqueKey":"data.taxTotal.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"description":"All tax on the invoice, added on top or included. The total includes it either way; the invoice's net is `total - taxTotal`.","uniqueKey":"data.taxTotal.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.taxTotal","typeLabel":"number | null"},"taxes":{"type":"array","description":"The tax broken down by rate. Empty when the business doesn't charge tax.","items":{"type":"object","description":"One tax rate on an invoice, as it is printed: added on top of the subtotal, or included in the prices (VAT-inclusive pricing).","properties":{"name":{"type":"string","example":"VAT","uniqueKey":"data.taxes.items.[INDEX].name","typeLabel":"string"},"rate":{"oneOf":[{"type":"number","description":"The rate as a percentage. Null for tax that came without a rate.","example":7.5,"uniqueKey":"data.taxes.items.[INDEX].rate.oneOf.0","typeLabel":"number"},{"type":"null","description":"The rate as a percentage. Null for tax that came without a rate.","example":7.5,"uniqueKey":"data.taxes.items.[INDEX].rate.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.taxes.items.[INDEX].rate","typeLabel":"number | null"},"reason":{"oneOf":[{"type":"string","description":"Why the rate applies, when it needs saying. For example, `export of services` on a zero-rated export, printed as \"VAT (0%, export of services)\".","uniqueKey":"data.taxes.items.[INDEX].reason.oneOf.0","typeLabel":"string"},{"type":"null","description":"Why the rate applies, when it needs saying. For example, `export of services` on a zero-rated export, printed as \"VAT (0%, export of services)\".","uniqueKey":"data.taxes.items.[INDEX].reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.taxes.items.[INDEX].reason","typeLabel":"string | null"},"inclusive":{"type":"boolean","description":"True when the tax is inside the line amounts rather than added on top.","uniqueKey":"data.taxes.items.[INDEX].inclusive","typeLabel":"boolean"},"amount":{"oneOf":[{"type":"number","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"data.taxes.items.[INDEX].amount.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"data.taxes.items.[INDEX].amount.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.taxes.items.[INDEX].amount","typeLabel":"number | null"}},"uniqueKey":"data.taxes.items.[INDEX]","typeLabel":"object"},"uniqueKey":"data.taxes","typeLabel":"object[]"},"total":{"oneOf":[{"type":"number","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"data.total.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"data.total.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.total","typeLabel":"number | null"},"minimumCommitment":{"oneOf":[{"type":"object","description":"The minimum commitment the invoice held the period it closes to. Null when the subscription had none for the period. On an upcoming invoice, what counted so far.","properties":{"amount":{"type":"number","description":"The period's minimum, in major units, prorated for the part of the period it applied (a mid-period change, a pause, a cancellation).","uniqueKey":"data.minimumCommitment.oneOf.0.amount","typeLabel":"number"},"counted":{"type":"number","description":"What the period billed toward it, this invoice included: fees, usage, prorations and credits, after discounts and before tax.","uniqueKey":"data.minimumCommitment.oneOf.0.counted","typeLabel":"number"},"shortfall":{"type":"number","description":"What the invoice's `minimum` lines bill, `max(0, amount - counted)`.","uniqueKey":"data.minimumCommitment.oneOf.0.shortfall","typeLabel":"number"}},"uniqueKey":"data.minimumCommitment.oneOf.0","typeLabel":"object"},{"type":"null","description":"The minimum commitment the invoice held the period it closes to. Null when the subscription had none for the period. On an upcoming invoice, what counted so far.","properties":{"amount":{"type":"number","description":"The period's minimum, in major units, prorated for the part of the period it applied (a mid-period change, a pause, a cancellation)."},"counted":{"type":"number","description":"What the period billed toward it, this invoice included: fees, usage, prorations and credits, after discounts and before tax."},"shortfall":{"type":"number","description":"What the invoice's `minimum` lines bill, `max(0, amount - counted)`."}},"uniqueKey":"data.minimumCommitment.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.minimumCommitment","typeLabel":"object | null"},"spendingCap":{"oneOf":[{"description":"The spending cap the invoice held its period to, when the cap stops billing. Null otherwise (no cap, or one that only warns).","type":"object","properties":{"amount":{"type":"number","description":"The period's cap, in major units.","uniqueKey":"data.spendingCap.oneOf.0.amount","typeLabel":"number"},"counted":{"type":"number","description":"What the period spent toward it with this invoice, before anything was taken back.","uniqueKey":"data.spendingCap.oneOf.0.counted","typeLabel":"number"},"takenBack":{"type":"number","description":"What the invoice's `maximum` lines took off.","uniqueKey":"data.spendingCap.oneOf.0.takenBack","typeLabel":"number"}},"uniqueKey":"data.spendingCap.oneOf.0","typeLabel":"object"},{"description":"The spending cap the invoice held its period to, when the cap stops billing. Null otherwise (no cap, or one that only warns).","type":"null","properties":{"amount":{"type":"number","description":"The period's cap, in major units."},"counted":{"type":"number","description":"What the period spent toward it with this invoice, before anything was taken back."},"takenBack":{"type":"number","description":"What the invoice's `maximum` lines took off."}},"uniqueKey":"data.spendingCap.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.spendingCap","typeLabel":"object | null"},"sellerTaxId":{"oneOf":[{"type":"string","description":"The business's TIN when the invoice was issued.","uniqueKey":"data.sellerTaxId.oneOf.0","typeLabel":"string"},{"type":"null","description":"The business's TIN when the invoice was issued.","uniqueKey":"data.sellerTaxId.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.sellerTaxId","typeLabel":"string | null"},"sellerVatRegistered":{"type":"boolean","description":"Whether the business was VAT registered when the invoice was issued. Such an invoice is titled \"Tax invoice\". Never changes after issue.","uniqueKey":"data.sellerVatRegistered","typeLabel":"boolean"},"billingAddress":{"oneOf":[{"type":"object","description":"The customer's billing address when the invoice was issued, as printed on it (name, line1, line2, city, region, postalCode, country, phone, singleLine). Null when the customer had none. Never changes after issue; a later address goes on later invoices.","uniqueKey":"data.billingAddress.oneOf.0","typeLabel":"object"},{"type":"null","description":"The customer's billing address when the invoice was issued, as printed on it (name, line1, line2, city, region, postalCode, country, phone, singleLine). Null when the customer had none. Never changes after issue; a later address goes on later invoices.","uniqueKey":"data.billingAddress.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.billingAddress","typeLabel":"object | null"},"reference":{"oneOf":[{"type":"string","description":"The buyer's purchase order number or reference it was issued with: its own, or its subscription's at the time. Never changes after issue.","uniqueKey":"data.reference.oneOf.0","typeLabel":"string"},{"type":"null","description":"The buyer's purchase order number or reference it was issued with: its own, or its subscription's at the time. Never changes after issue.","uniqueKey":"data.reference.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.reference","typeLabel":"string | null"},"amountPaid":{"oneOf":[{"type":"number","minimum":0,"description":"What the customer paid and the invoice kept: a credit note that refunds the card, goes to the customer balance or is settled outside Bouclay lowers it, after what `balanceApplied` holds.","uniqueKey":"data.amountPaid.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"description":"What the customer paid and the invoice kept: a credit note that refunds the card, goes to the customer balance or is settled outside Bouclay lowers it, after what `balanceApplied` holds.","uniqueKey":"data.amountPaid.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.amountPaid","typeLabel":"number | null"},"amountCredited":{"oneOf":[{"type":"number","minimum":0,"description":"What credit notes took off. `amountDue = total - amountPaid - amountCredited - balanceApplied`; `total` never changes.","uniqueKey":"data.amountCredited.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"description":"What credit notes took off. `amountDue = total - amountPaid - amountCredited - balanceApplied`; `total` never changes.","uniqueKey":"data.amountCredited.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.amountCredited","typeLabel":"number | null"},"balanceApplied":{"type":"number","description":"What the customer's prepaid credit taxed when used and money balance paid, after tax, when the invoice was created, in major units. Back to 0 if the invoice is voided, which returns it to the balance. Negative when the invoice collects a debt carried from an earlier invoice that was below the minimum charge: it then adds to `amountDue`. An invoice that was itself carried shows its amount here, paid from the balance as debt.","example":0,"uniqueKey":"data.balanceApplied","typeLabel":"number"},"amountDue":{"oneOf":[{"type":"number","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"data.amountDue.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"data.amountDue.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.amountDue","typeLabel":"number | null"},"paidAt":{"oneOf":[{"type":"string","format":"date-time","uniqueKey":"data.paidAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","uniqueKey":"data.paidAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.paidAt","typeLabel":"string\u003cdate-time> | null"},"customer":{"type":"object","properties":{"id":{"type":"string","uniqueKey":"data.customer.id","typeLabel":"string"},"email":{"type":"string","format":"email","uniqueKey":"data.customer.email","typeLabel":"string\u003cemail>"},"name":{"oneOf":[{"type":"string","uniqueKey":"data.customer.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"data.customer.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.customer.name","typeLabel":"string | null"},"taxId":{"oneOf":[{"description":"On an invoice, the customer's TIN as it was when the invoice was issued.","type":"string","uniqueKey":"data.customer.taxId.oneOf.0","typeLabel":"string"},{"description":"On an invoice, the customer's TIN as it was when the invoice was issued.","type":"null","uniqueKey":"data.customer.taxId.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.customer.taxId","typeLabel":"string | null"}},"uniqueKey":"data.customer","typeLabel":"object"},"subscription":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","uniqueKey":"data.subscription.oneOf.0.id","typeLabel":"string"},"status":{"type":"string","uniqueKey":"data.subscription.oneOf.0.status","typeLabel":"string"},"pauseReason":{"oneOf":[{"type":"string","enum":["requested","payment_overdue","plan_retired",null],"uniqueKey":"data.subscription.oneOf.0.pauseReason.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["requested","payment_overdue","plan_retired",null],"uniqueKey":"data.subscription.oneOf.0.pauseReason.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.subscription.oneOf.0.pauseReason","typeLabel":"enum\u003cstring> | null"}},"uniqueKey":"data.subscription.oneOf.0","typeLabel":"object"},{"type":"null","properties":{"id":{"type":"string"},"status":{"type":"string"},"pauseReason":{"oneOf":[{"type":"string","enum":["requested","payment_overdue","plan_retired",null]},{"type":"null","enum":["requested","payment_overdue","plan_retired",null]}]}},"uniqueKey":"data.subscription.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.subscription","typeLabel":"object | null"},"payment":{"oneOf":[{"type":"object","description":"The payment that settled the invoice, else its latest attempt. Null when nothing has been attempted. Refund through its `id`.","properties":{"id":{"type":"string","uniqueKey":"data.payment.oneOf.0.id","typeLabel":"string"},"status":{"type":"string","enum":["pending","processing","succeeded","failed","refunded"],"description":"`processing` means the charge's outcome isn't known yet (a gateway timeout, or a charge the gateway is still clearing). It may have gone through, so it is never retried: Bouclay settles it from the gateway's webhook or by looking the charge up, and it becomes `succeeded` or `failed`.","uniqueKey":"data.payment.oneOf.0.status","typeLabel":"enum\u003cstring>"},"amount":{"oneOf":[{"type":"number","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"data.payment.oneOf.0.amount.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"data.payment.oneOf.0.amount.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.payment.oneOf.0.amount","typeLabel":"number | null"},"amountRefunded":{"oneOf":[{"type":"number","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"data.payment.oneOf.0.amountRefunded.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"data.payment.oneOf.0.amountRefunded.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.payment.oneOf.0.amountRefunded","typeLabel":"number | null"},"amountChargedBack":{"oneOf":[{"type":"number","minimum":0,"description":"Taken back by chargebacks still open or lost. A dispute you won returned its money, so it no longer counts.","uniqueKey":"data.payment.oneOf.0.amountChargedBack.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"description":"Taken back by chargebacks still open or lost. A dispute you won returned its money, so it no longer counts.","uniqueKey":"data.payment.oneOf.0.amountChargedBack.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.payment.oneOf.0.amountChargedBack","typeLabel":"number | null"},"currency":{"type":"string","uniqueKey":"data.payment.oneOf.0.currency","typeLabel":"string"},"failureCode":{"oneOf":[{"type":"string","uniqueKey":"data.payment.oneOf.0.failureCode.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"data.payment.oneOf.0.failureCode.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.payment.oneOf.0.failureCode","typeLabel":"string | null"},"failureReason":{"oneOf":[{"type":"string","uniqueKey":"data.payment.oneOf.0.failureReason.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"data.payment.oneOf.0.failureReason.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.payment.oneOf.0.failureReason","typeLabel":"string | null"},"attemptNumber":{"type":"integer","uniqueKey":"data.payment.oneOf.0.attemptNumber","typeLabel":"integer"},"manualMethod":{"oneOf":[{"description":"How a payment recorded by hand was made (`POST /invoices/{id}/payments`); null for a gateway's.","type":"string","enum":["cash","bank_transfer","pos",null],"uniqueKey":"data.payment.oneOf.0.manualMethod.oneOf.0","typeLabel":"enum\u003cstring>"},{"description":"How a payment recorded by hand was made (`POST /invoices/{id}/payments`); null for a gateway's.","type":"null","enum":["cash","bank_transfer","pos",null],"uniqueKey":"data.payment.oneOf.0.manualMethod.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.payment.oneOf.0.manualMethod","typeLabel":"enum\u003cstring> | null"},"reference":{"oneOf":[{"description":"The reference given with a payment recorded by hand.","type":"string","uniqueKey":"data.payment.oneOf.0.reference.oneOf.0","typeLabel":"string"},{"description":"The reference given with a payment recorded by hand.","type":"null","uniqueKey":"data.payment.oneOf.0.reference.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.payment.oneOf.0.reference","typeLabel":"string | null"},"processedAt":{"oneOf":[{"type":"string","format":"date-time","uniqueKey":"data.payment.oneOf.0.processedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","uniqueKey":"data.payment.oneOf.0.processedAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.payment.oneOf.0.processedAt","typeLabel":"string\u003cdate-time> | null"},"invoice":{"type":"object","properties":{"id":{"type":"string","uniqueKey":"data.payment.oneOf.0.invoice.id","typeLabel":"string"}},"uniqueKey":"data.payment.oneOf.0.invoice","typeLabel":"object"},"customer":{"type":"object","properties":{"id":{"type":"string","uniqueKey":"data.payment.oneOf.0.customer.id","typeLabel":"string"}},"uniqueKey":"data.payment.oneOf.0.customer","typeLabel":"object"},"createdAt":{"oneOf":[{"type":"string","format":"date-time","uniqueKey":"data.payment.oneOf.0.createdAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","uniqueKey":"data.payment.oneOf.0.createdAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.payment.oneOf.0.createdAt","typeLabel":"string\u003cdate-time> | null"}},"uniqueKey":"data.payment.oneOf.0","typeLabel":"object"},{"type":"null","description":"The payment that settled the invoice, else its latest attempt. Null when nothing has been attempted. Refund through its `id`.","uniqueKey":"data.payment.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.payment","typeLabel":"object | null"},"dueAt":{"oneOf":[{"type":"string","format":"date-time","uniqueKey":"data.dueAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","uniqueKey":"data.dueAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.dueAt","typeLabel":"string\u003cdate-time> | null"},"hostedUrl":{"oneOf":[{"type":"string","format":"uri","description":"The page where the customer sees and pays the invoice. Null for drafts.","uniqueKey":"data.hostedUrl.oneOf.0","typeLabel":"string\u003curi>"},{"type":"null","format":"uri","description":"The page where the customer sees and pays the invoice. Null for drafts.","uniqueKey":"data.hostedUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.hostedUrl","typeLabel":"string\u003curi> | null"},"invoicePdfUrl":{"oneOf":[{"type":"string","format":"uri","description":"The invoice as a PDF. Null for drafts.","uniqueKey":"data.invoicePdfUrl.oneOf.0","typeLabel":"string\u003curi>"},{"type":"null","format":"uri","description":"The invoice as a PDF. Null for drafts.","uniqueKey":"data.invoicePdfUrl.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.invoicePdfUrl","typeLabel":"string\u003curi> | null"},"createdAt":{"oneOf":[{"type":"string","format":"date-time","uniqueKey":"data.createdAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","uniqueKey":"data.createdAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.createdAt","typeLabel":"string\u003cdate-time> | null"},"lines":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","description":"Names this line in a credit note's `lines`.","uniqueKey":"data.lines.items.[INDEX].id","typeLabel":"integer"},"description":{"type":"string","uniqueKey":"data.lines.items.[INDEX].description","typeLabel":"string"},"kind":{"type":"string","description":"What the line bills. `minimum` is what the period fell short of the subscription's minimum commitment: no product, no discount, one line per tax category, taxed like what it tops up.","enum":["plan","addon","usage","proration","one_time","tax","discount","credit","credit_purchase","minimum","maximum"],"uniqueKey":"data.lines.items.[INDEX].kind","typeLabel":"enum\u003cstring>"},"quantity":{"type":"integer","uniqueKey":"data.lines.items.[INDEX].quantity","typeLabel":"integer"},"unitAmount":{"oneOf":[{"type":"number","minimum":0,"description":"The price of one unit, so `quantity × unitAmount` is the line before discount. Null when no one unit price makes the amount: a tiered seat price, whose `tierBreakdown` says how it adds up.","uniqueKey":"data.lines.items.[INDEX].unitAmount.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"description":"The price of one unit, so `quantity × unitAmount` is the line before discount. Null when no one unit price makes the amount: a tiered seat price, whose `tierBreakdown` says how it adds up.","uniqueKey":"data.lines.items.[INDEX].unitAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.lines.items.[INDEX].unitAmount","typeLabel":"number | null"},"quantityLabel":{"oneOf":[{"description":"The quantity in the charge's own words when the charge names its unit, such as \"3 learners\", as it was when the invoice was issued. Null otherwise, and on usage and proration lines.","type":"string","uniqueKey":"data.lines.items.[INDEX].quantityLabel.oneOf.0","typeLabel":"string"},{"description":"The quantity in the charge's own words when the charge names its unit, such as \"3 learners\", as it was when the invoice was issued. Null otherwise, and on usage and proration lines.","type":"null","uniqueKey":"data.lines.items.[INDEX].quantityLabel.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.lines.items.[INDEX].quantityLabel","typeLabel":"string | null"},"tierBreakdown":{"oneOf":[{"description":"How a line on a graduated or volume seat price adds up, such as \"1 × NGN 12,000.00 + 2 × NGN 10,000.00\" for three seats at ₦12,000 for the first and ₦10,000 for each after. Null for every other line.","type":"string","uniqueKey":"data.lines.items.[INDEX].tierBreakdown.oneOf.0","typeLabel":"string"},{"description":"How a line on a graduated or volume seat price adds up, such as \"1 × NGN 12,000.00 + 2 × NGN 10,000.00\" for three seats at ₦12,000 for the first and ₦10,000 for each after. Null for every other line.","type":"null","uniqueKey":"data.lines.items.[INDEX].tierBreakdown.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.lines.items.[INDEX].tierBreakdown","typeLabel":"string | null"},"total":{"oneOf":[{"type":"number","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"data.lines.items.[INDEX].total.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"data.lines.items.[INDEX].total.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.lines.items.[INDEX].total","typeLabel":"number | null"},"billingTiming":{"oneOf":[{"description":"`arrears` for a line that pays for the period that just ended (usage, fees billed at the end), `advance` for one paying for the next period. Null on lines outside a period boundary, like one-off charges.","type":"string","enum":["advance","arrears",null],"uniqueKey":"data.lines.items.[INDEX].billingTiming.oneOf.0","typeLabel":"enum\u003cstring>"},{"description":"`arrears` for a line that pays for the period that just ended (usage, fees billed at the end), `advance` for one paying for the next period. Null on lines outside a period boundary, like one-off charges.","type":"null","enum":["advance","arrears",null],"uniqueKey":"data.lines.items.[INDEX].billingTiming.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.lines.items.[INDEX].billingTiming","typeLabel":"enum\u003cstring> | null"},"periodStart":{"oneOf":[{"type":"string","format":"date-time","uniqueKey":"data.lines.items.[INDEX].periodStart.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","uniqueKey":"data.lines.items.[INDEX].periodStart.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.lines.items.[INDEX].periodStart","typeLabel":"string\u003cdate-time> | null"},"periodEnd":{"oneOf":[{"type":"string","format":"date-time","uniqueKey":"data.lines.items.[INDEX].periodEnd.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","uniqueKey":"data.lines.items.[INDEX].periodEnd.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.lines.items.[INDEX].periodEnd","typeLabel":"string\u003cdate-time> | null"},"usageQuantity":{"oneOf":[{"description":"What a usage line measured.","type":"integer","uniqueKey":"data.lines.items.[INDEX].usageQuantity.oneOf.0","typeLabel":"integer"},{"description":"What a usage line measured.","type":"null","uniqueKey":"data.lines.items.[INDEX].usageQuantity.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.lines.items.[INDEX].usageQuantity","typeLabel":"integer | null"},"taxCategory":{"oneOf":[{"description":"The product's tax category when the invoice was issued. Null on a line with no product.","type":"string","enum":["standard","zero_rated","exempt",null],"uniqueKey":"data.lines.items.[INDEX].taxCategory.oneOf.0","typeLabel":"enum\u003cstring>"},{"description":"The product's tax category when the invoice was issued. Null on a line with no product.","type":"null","enum":["standard","zero_rated","exempt",null],"uniqueKey":"data.lines.items.[INDEX].taxCategory.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.lines.items.[INDEX].taxCategory","typeLabel":"enum\u003cstring> | null"},"revenueCode":{"oneOf":[{"description":"The product's revenue code when the invoice was issued.","type":"string","uniqueKey":"data.lines.items.[INDEX].revenueCode.oneOf.0","typeLabel":"string"},{"description":"The product's revenue code when the invoice was issued.","type":"null","uniqueKey":"data.lines.items.[INDEX].revenueCode.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.lines.items.[INDEX].revenueCode","typeLabel":"string | null"},"discountAmount":{"oneOf":[{"type":"number","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"data.lines.items.[INDEX].discountAmount.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"data.lines.items.[INDEX].discountAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.lines.items.[INDEX].discountAmount","typeLabel":"number | null"},"grantApplied":{"oneOf":[{"type":"number","minimum":0,"description":"Credit taken off this line before tax, in the line's price terms. Prepaid credit taxed when bought only pays lines with its top-up's tax category and rate.","uniqueKey":"data.lines.items.[INDEX].grantApplied.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"description":"Credit taken off this line before tax, in the line's price terms. Prepaid credit taxed when bought only pays lines with its top-up's tax category and rate.","uniqueKey":"data.lines.items.[INDEX].grantApplied.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.lines.items.[INDEX].grantApplied","typeLabel":"number | null"},"taxAmount":{"oneOf":[{"type":"number","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"data.lines.items.[INDEX].taxAmount.oneOf.0","typeLabel":"number"},{"type":"null","minimum":0,"description":"Major currency units. For example, 15000 means NGN 15,000.","uniqueKey":"data.lines.items.[INDEX].taxAmount.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.lines.items.[INDEX].taxAmount","typeLabel":"number | null"},"taxRate":{"oneOf":[{"description":"The rate the line was taxed at, as a percentage, frozen when the invoice was issued. Null when no tax applies (an exempt product or customer, or a business that doesn't charge tax).","type":"number","example":7.5,"uniqueKey":"data.lines.items.[INDEX].taxRate.oneOf.0","typeLabel":"number"},{"description":"The rate the line was taxed at, as a percentage, frozen when the invoice was issued. Null when no tax applies (an exempt product or customer, or a business that doesn't charge tax).","type":"null","example":7.5,"uniqueKey":"data.lines.items.[INDEX].taxRate.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.lines.items.[INDEX].taxRate","typeLabel":"number | null"},"taxName":{"oneOf":[{"type":"string","example":"VAT","uniqueKey":"data.lines.items.[INDEX].taxName.oneOf.0","typeLabel":"string"},{"type":"null","example":"VAT","uniqueKey":"data.lines.items.[INDEX].taxName.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.lines.items.[INDEX].taxName","typeLabel":"string | null"},"taxReason":{"oneOf":[{"type":"string","description":"Why the rate applies, when it needs saying. For example, `export of services` on a zero-rated export.","example":"export of services","uniqueKey":"data.lines.items.[INDEX].taxReason.oneOf.0","typeLabel":"string"},{"type":"null","description":"Why the rate applies, when it needs saying. For example, `export of services` on a zero-rated export.","example":"export of services","uniqueKey":"data.lines.items.[INDEX].taxReason.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.lines.items.[INDEX].taxReason","typeLabel":"string | null"},"taxInclusive":{"type":"boolean","description":"True when `taxAmount` is inside the line's total rather than added on top.","uniqueKey":"data.lines.items.[INDEX].taxInclusive","typeLabel":"boolean"}},"uniqueKey":"data.lines.items.[INDEX]","typeLabel":"object"},"uniqueKey":"data.lines","typeLabel":"object[]"}},"isRequired":true,"uniqueKey":"data","typeLabel":"object"},"meta":{"type":"object","required":["requestId"],"properties":{"requestId":{"type":"string","example":"req_550e8400-e29b-41d4-a716-446655440000","isRequired":true,"uniqueKey":"meta.requestId","typeLabel":"string"}},"isRequired":true,"uniqueKey":"meta","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"data":{"id":"\u003cstring>","number":"\u003cstring>","status":"\u003cstring>","billingReason":"\u003cstring>","purpose":"card_verification","collectionMode":"automatic","currency":"\u003cstring>","subtotal":1,"grantApplied":1,"taxTotal":1,"taxes":[{"name":"VAT","rate":7.5,"reason":"\u003cstring>","inclusive":true,"amount":1}],"total":1,"minimumCommitment":{"amount":123,"counted":123,"shortfall":123},"spendingCap":{"amount":123,"counted":123,"takenBack":123},"sellerTaxId":"\u003cstring>","sellerVatRegistered":true,"billingAddress":{},"reference":"\u003cstring>","amountPaid":1,"amountCredited":1,"balanceApplied":0,"amountDue":1,"paidAt":"2023-11-07T05:31:56Z","customer":{"id":"\u003cstring>","email":"jsmith@example.com","name":"\u003cstring>","taxId":"\u003cstring>"},"subscription":{"id":"\u003cstring>","status":"\u003cstring>","pauseReason":"requested"},"payment":{"id":"\u003cstring>","status":"pending","amount":1,"amountRefunded":1,"amountChargedBack":1,"currency":"\u003cstring>","failureCode":"\u003cstring>","failureReason":"\u003cstring>","attemptNumber":123,"manualMethod":"cash","reference":"\u003cstring>","processedAt":"2023-11-07T05:31:56Z","invoice":{"id":"\u003cstring>"},"customer":{"id":"\u003cstring>"},"createdAt":"2023-11-07T05:31:56Z"},"dueAt":"2023-11-07T05:31:56Z","hostedUrl":"\u003cstring>","invoicePdfUrl":"\u003cstring>","createdAt":"2023-11-07T05:31:56Z","lines":[{"id":123,"description":"\u003cstring>","kind":"plan","quantity":123,"unitAmount":1,"quantityLabel":"\u003cstring>","tierBreakdown":"\u003cstring>","total":1,"billingTiming":"advance","periodStart":"2023-11-07T05:31:56Z","periodEnd":"2023-11-07T05:31:56Z","usageQuantity":123,"taxCategory":"standard","revenueCode":"\u003cstring>","discountAmount":1,"grantApplied":1,"taxAmount":1,"taxRate":7.5,"taxName":"VAT","taxReason":"export of services","taxInclusive":true}]},"meta":{"requestId":"req_550e8400-e29b-41d4-a716-446655440000"}}}},"exampleType":"generated"}},"exampleType":"generated"},"cf9fcf03-9dda-4f8b-b4ff-19d8d2eddd9d":{"description":"Structured API error.","content":{"application/json":{"schema":{"type":"object","required":["error","meta"],"properties":{"error":{"type":"object","required":["type","code","detail"],"properties":{"type":{"type":"string","enum":["request_error","api_error"],"description":"`api_error` with code `internal_error` (HTTP 500) means the fault is ours: retry with the same Idempotency-Key.","example":"request_error","isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"code":{"type":"string","enum":["authentication_failed","permission_denied","invalid_field","invalid_cursor","idempotency_conflict","meter_not_found","meter_archived","customer_not_found","timestamp_in_future","usage_period_closed","subscription_paused","missing_property","invalid_value","conflict","subscription_suspended","no_upcoming_invoice","not_found","request_error","internal_error"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"detail":{"type":"string","isRequired":true,"uniqueKey":"error.detail","typeLabel":"string"},"errors":{"type":"array","items":{"type":"object","required":["field","message"],"properties":{"field":{"type":"string","isRequired":true,"uniqueKey":"error.errors.items.[INDEX].field","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.errors.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"error.errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"error.errors","typeLabel":"object[]"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"meta":{"type":"object","required":["requestId"],"properties":{"requestId":{"type":"string","example":"req_550e8400-e29b-41d4-a716-446655440000","isRequired":true,"uniqueKey":"meta.requestId","typeLabel":"string"}},"isRequired":true,"uniqueKey":"meta","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"request_error","code":"authentication_failed","detail":"\u003cstring>","errors":[{"field":"\u003cstring>","message":"\u003cstring>"}]},"meta":{"requestId":"req_550e8400-e29b-41d4-a716-446655440000"}}}},"exampleType":"generated"}},"exampleType":"generated"},"c0033f67-468b-4b4b-8f20-f185fc31ee0b":{"description":"Structured API error.","content":{"application/json":{"schema":{"type":"object","required":["error","meta"],"properties":{"error":{"type":"object","required":["type","code","detail"],"properties":{"type":{"type":"string","enum":["request_error","api_error"],"description":"`api_error` with code `internal_error` (HTTP 500) means the fault is ours: retry with the same Idempotency-Key.","example":"request_error","isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"code":{"type":"string","enum":["authentication_failed","permission_denied","invalid_field","invalid_cursor","idempotency_conflict","meter_not_found","meter_archived","customer_not_found","timestamp_in_future","usage_period_closed","subscription_paused","missing_property","invalid_value","conflict","subscription_suspended","no_upcoming_invoice","not_found","request_error","internal_error"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"detail":{"type":"string","isRequired":true,"uniqueKey":"error.detail","typeLabel":"string"},"errors":{"type":"array","items":{"type":"object","required":["field","message"],"properties":{"field":{"type":"string","isRequired":true,"uniqueKey":"error.errors.items.[INDEX].field","typeLabel":"string"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.errors.items.[INDEX].message","typeLabel":"string"}},"uniqueKey":"error.errors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"error.errors","typeLabel":"object[]"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"},"meta":{"type":"object","required":["requestId"],"properties":{"requestId":{"type":"string","example":"req_550e8400-e29b-41d4-a716-446655440000","isRequired":true,"uniqueKey":"meta.requestId","typeLabel":"string"}},"isRequired":true,"uniqueKey":"meta","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"request_error","code":"authentication_failed","detail":"\u003cstring>","errors":[{"field":"\u003cstring>","message":"\u003cstring>"}]},"meta":{"requestId":"req_550e8400-e29b-41d4-a716-446655440000"}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"a7132780-59a7-4acb-ad03-ddfd9682e637":{"SecretKeyAuth":{"type":"http","scheme":"bearer","bearerFormat":"{sk|rk}_{mode}_{random}","description":"Use a Bouclay secret key (`sk_test_...`, `sk_live_...`) or restricted key\n(`rk_test_...`, `rk_live_...`).\n\nA secret key can call every endpoint. A restricted key can only call the\nendpoints its scopes cover. A scope is `{resource}:{access}`, for example\n`customers:read` or `refunds:write`, and write includes read. `GET`\nrequests need read access and everything else needs write, except\n`POST /subscriptions/{id}/items/{item}/preview`, which only needs\n`subscriptions:read`. A request outside the key's scopes gets `403\npermission_denied` naming the missing scope, and its `Idempotency-Key`\nis not used up.\n\n| Resource | Endpoints | Access |\n| --- | --- | --- |\n| `customers` | customers, their addresses and payment methods | read, write |\n| `entitlements` | `/customers/{id}/entitlements` | read |\n| `credits` | `/customers/{id}/credit-balance`, credit purchases, credit grants, auto-reloads, credit holds (committing one records its usage) | read, write |\n| `catalog` | products, plans, prices | read, write |\n| `meters` | meters | read, write |\n| `usage` | meter events, `/customers/{id}/usage` | read, write |\n| `discounts` | discounts | read |\n| `subscriptions` | subscriptions | read, write |\n| `invoices` | invoices | read, write |\n| `credit_notes` | credit notes, `POST /invoices/{id}/credit-notes` (a refund to the card also needs `refunds:write`) | read, write |\n| `payments` | payments | read |\n| `refunds` | refunds, `POST /payments/{id}/refunds`, chargebacks and their outcome | read, write |\n| `checkout_sessions` | checkout sessions | read, write |\n| `portal_sessions` | portal sessions | write |\n| `events` | events | read |\n| `webhook_endpoints` | webhook endpoints | read, write |\n| `metrics` | metrics | read |\n\nPublishable keys (`pk_...`) are rejected by server-side API endpoints. A\nkey's mode scopes what it can see and charge: a test key can never reach\na live card.\n","scopes":[],"schemeName":"SecretKeyAuth"}}},"servers":{"82e7126d-28a2-45e6-a54d-f4d46af6c4bd":{"url":"https://bouclay.com/api/v1","description":"Production"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"{sk|rk}_{mode}_{random}","description":"Use a Bouclay secret key (`sk_test_...`, `sk_live_...`) or restricted key\n(`rk_test_...`, `rk_live_...`).\n\nA secret key can call every endpoint. A restricted key can only call the\nendpoints its scopes cover. A scope is `{resource}:{access}`, for example\n`customers:read` or `refunds:write`, and write includes read. `GET`\nrequests need read access and everything else needs write, except\n`POST /subscriptions/{id}/items/{item}/preview`, which only needs\n`subscriptions:read`. A request outside the key's scopes gets `403\npermission_denied` naming the missing scope, and its `Idempotency-Key`\nis not used up.\n\n| Resource | Endpoints | Access |\n| --- | --- | --- |\n| `customers` | customers, their addresses and payment methods | read, write |\n| `entitlements` | `/customers/{id}/entitlements` | read |\n| `credits` | `/customers/{id}/credit-balance`, credit purchases, credit grants, auto-reloads, credit holds (committing one records its usage) | read, write |\n| `catalog` | products, plans, prices | read, write |\n| `meters` | meters | read, write |\n| `usage` | meter events, `/customers/{id}/usage` | read, write |\n| `discounts` | discounts | read |\n| `subscriptions` | subscriptions | read, write |\n| `invoices` | invoices | read, write |\n| `credit_notes` | credit notes, `POST /invoices/{id}/credit-notes` (a refund to the card also needs `refunds:write`) | read, write |\n| `payments` | payments | read |\n| `refunds` | refunds, `POST /payments/{id}/refunds`, chargebacks and their outcome | read, write |\n| `checkout_sessions` | checkout sessions | read, write |\n| `portal_sessions` | portal sessions | write |\n| `events` | events | read |\n| `webhook_endpoints` | webhook endpoints | read, write |\n| `metrics` | metrics | read |\n\nPublishable keys (`pk_...`) are rejected by server-side API endpoints. A\nkey's mode scopes what it can see and charge: a test key can never reach\na live card.\n","scopes":[],"schemeName":"SecretKeyAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Use a Bouclay secret key (`sk_test_...`, `sk_live_...`) or restricted key\n(`rk_test_...`, `rk_live_...`).\n\nA secret key can call every endpoint. A restricted key can only call the\nendpoints its scopes cover. A scope is `{resource}:{access}`, for example\n`customers:read` or `refunds:write`, and write includes read. `GET`\nrequests need read access and everything else needs write, except\n`POST /subscriptions/{id}/items/{item}/preview`, which only needs\n`subscriptions:read`. A request outside the key's scopes gets `403\npermission_denied` naming the missing scope, and its `Idempotency-Key`\nis not used up.\n\n| Resource | Endpoints | Access |\n| --- | --- | --- |\n| `customers` | customers, their addresses and payment methods | read, write |\n| `entitlements` | `/customers/{id}/entitlements` | read |\n| `credits` | `/customers/{id}/credit-balance`, credit purchases, credit grants, auto-reloads, credit holds (committing one records its usage) | read, write |\n| `catalog` | products, plans, prices | read, write |\n| `meters` | meters | read, write |\n| `usage` | meter events, `/customers/{id}/usage` | read, write |\n| `discounts` | discounts | read |\n| `subscriptions` | subscriptions | read, write |\n| `invoices` | invoices | read, write |\n| `credit_notes` | credit notes, `POST /invoices/{id}/credit-notes` (a refund to the card also needs `refunds:write`) | read, write |\n| `payments` | payments | read |\n| `refunds` | refunds, `POST /payments/{id}/refunds`, chargebacks and their outcome | read, write |\n| `checkout_sessions` | checkout sessions | read, write |\n| `portal_sessions` | portal sessions | write |\n| `events` | events | read |\n| `webhook_endpoints` | webhook endpoints | read, write |\n| `metrics` | metrics | read |\n\nPublishable keys (`pk_...`) are rejected by server-side API endpoints. A\nkey's mode scopes what it can see and charge: a test key can never reach\na live card.\n","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"SecretKeyAuth","name":"Authorization"}],"title":"SecretKeyAuth"}]},"originalFileLocation":"api/openapi.yaml"},"subdomain":"bouclay","siteName":"Bouclay","title":"Create a one-off invoice - Bouclay","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-31T16:13:14.224Z","originalFileLocation":"api-reference/invoices/create-a-one-off-invoice.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"application-name\" content=\"Bouclay\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/bouclay/Ym6ZL-b1nHwWYfUw/_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/bouclay/Ym6ZL-b1nHwWYfUw/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/bouclay/Ym6ZL-b1nHwWYfUw/_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/bouclay/Ym6ZL-b1nHwWYfUw/_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/bouclay/Ym6ZL-b1nHwWYfUw/_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/bouclay/Ym6ZL-b1nHwWYfUw/_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/bouclay/Ym6ZL-b1nHwWYfUw/_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/bouclay/Ym6ZL-b1nHwWYfUw/_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/bouclay/Ym6ZL-b1nHwWYfUw/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create a one-off invoice - Bouclay\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Bouclay\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.bouclay.com/api-reference/invoices/create-a-one-off-invoice\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://bouclay.mintlify.app/_mintlify/api/og/v2?division=Invoices\u0026amp;title=Create+a+one-off+invoice\u0026amp;theme=13003262736049449feeb6c6\u0026amp;signature=3ec91070c1d209e0548408190ad7581a74bc0bc58559aa03421d36264ea2596f\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Create a one-off invoice - Bouclay\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://bouclay.mintlify.app/_mintlify/api/og/v2?division=Invoices\u0026amp;title=Create+a+one-off+invoice\u0026amp;theme=13003262736049449feeb6c6\u0026amp;signature=3ec91070c1d209e0548408190ad7581a74bc0bc58559aa03421d36264ea2596f\">\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/bouclay/Ym6ZL-b1nHwWYfUw/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Bouclay\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0E1414\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.bouclay.com/api-reference/invoices/create-a-one-off-invoice\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/invoices/create-a-one-off-invoice.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.bouclay.com/#organization\",\"name\":\"Bouclay\",\"url\":\"https://docs.bouclay.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/bouclay/b4A_rIC0sE3Y7T6P/logo/light.svg?fit=max\u0026auto=format\u0026n=b4A_rIC0sE3Y7T6P\u0026q=85\u0026s=5ca92a6a5dd480294fc922434a667b72\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.bouclay.com#website\",\"name\":\"Bouclay\",\"url\":\"https://docs.bouclay.com\",\"publisher\":{\"@id\":\"https://docs.bouclay.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.bouclay.com/api-reference/invoices/create-a-one-off-invoice#webpage\",\"url\":\"https://docs.bouclay.com/api-reference/invoices/create-a-one-off-invoice\",\"name\":\"Create a one-off invoice\",\"dateModified\":\"2026-10-31T16:13:14.224Z\",\"isPartOf\":{\"@id\":\"https://docs.bouclay.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.bouclay.com/api-reference/invoices/create-a-one-off-invoice#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.bouclay.com/api-reference/invoices/create-a-one-off-invoice#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Invoices\",\"item\":\"https://docs.bouclay.com/api-reference/invoices/list-invoices\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Create a one-off invoice\",\"item\":\"https://docs.bouclay.com/api-reference/invoices/create-a-one-off-invoice\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.bouclay.com/api-reference/invoices/create-a-one-off-invoice#apireference\",\"headline\":\"Create a one-off invoice\",\"name\":\"Create a one-off invoice\",\"url\":\"https://docs.bouclay.com/api-reference/invoices/create-a-one-off-invoice\",\"mainEntityOfPage\":{\"@id\":\"https://docs.bouclay.com/api-reference/invoices/create-a-one-off-invoice#webpage\"},\"dateModified\":\"2026-10-31T16:13:14.224Z\",\"publisher\":{\"@id\":\"https://docs.bouclay.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.bouclay.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Bouclay\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Bouclay","nav":{"global":null,"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":""}]},{"tab":"API reference","groups":[{"group":"Overview","pages":[{"title":"API reference","href":"/api-reference/introduction"}]},{"group":"Customers","pages":[{"title":"List customers","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /customers","href":"/api-reference/customers/list-customers"},{"title":"Create a customer","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /customers","href":"/api-reference/customers/create-a-customer"},{"title":"Retrieve a customer","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /customers/{customer}","href":"/api-reference/customers/retrieve-a-customer"},{"title":"Update a customer","deprecated":null,"version":null,"openapi":"/api/openapi.yaml patch /customers/{customer}","href":"/api-reference/customers/update-a-customer"},{"title":"Archive a customer","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /customers/{customer}/archive","href":"/api-reference/customers/archive-a-customer"},{"title":"Restore an archived customer","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /customers/{customer}/restore","href":"/api-reference/customers/restore-an-archived-customer"}]},{"group":"Customer addresses","pages":[{"title":"List customer addresses","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /customers/{customer}/addresses","href":"/api-reference/customer-addresses/list-customer-addresses"},{"title":"Create a customer address","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /customers/{customer}/addresses","href":"/api-reference/customer-addresses/create-a-customer-address"},{"title":"Retrieve a customer address","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /customers/{customer}/addresses/{address}","href":"/api-reference/customer-addresses/retrieve-a-customer-address"},{"title":"Update a customer address","deprecated":null,"version":null,"openapi":"/api/openapi.yaml patch /customers/{customer}/addresses/{address}","href":"/api-reference/customer-addresses/update-a-customer-address"}]},{"group":"Entitlements","pages":[{"title":"List a customer's entitlements","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /customers/{customer}/entitlements","href":"/api-reference/entitlements/list-a-customers-entitlements"},{"title":"Check one entitlement by code","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /customers/{customer}/entitlements/{code}","href":"/api-reference/entitlements/check-one-entitlement-by-code"}]},{"group":"Credits","pages":[{"title":"Get a customer's credit balance","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /customers/{customer}/credit-balance","href":"/api-reference/credits/get-a-customers-credit-balance"},{"title":"Sell prepaid credit","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /customers/{customer}/credit-purchases","href":"/api-reference/credits/sell-prepaid-credit"},{"title":"List a customer's auto-reloads","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /customers/{customer}/credit-auto-reloads","href":"/api-reference/credits/list-a-customers-auto-reloads"},{"title":"Set an auto-reload","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /customers/{customer}/credit-auto-reloads","href":"/api-reference/credits/set-an-auto-reload"},{"title":"Get an auto-reload","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /customers/{customer}/credit-auto-reloads/{currency}","href":"/api-reference/credits/get-an-auto-reload"},{"title":"Change an auto-reload","deprecated":null,"version":null,"openapi":"/api/openapi.yaml patch /customers/{customer}/credit-auto-reloads/{currency}","href":"/api-reference/credits/change-an-auto-reload"},{"title":"List credit grants","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /credit-grants","href":"/api-reference/credits/list-credit-grants"},{"title":"Give promotional credit","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /credit-grants","href":"/api-reference/credits/give-promotional-credit"},{"title":"Retrieve a credit grant","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /credit-grants/{creditGrant}","href":"/api-reference/credits/retrieve-a-credit-grant"},{"title":"Hold credit for a request","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /customers/{customer}/credit-holds","href":"/api-reference/credits/hold-credit-for-a-request"},{"title":"List credit holds","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /credit-holds","href":"/api-reference/credits/list-credit-holds"},{"title":"Retrieve a credit hold","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /credit-holds/{creditHold}","href":"/api-reference/credits/retrieve-a-credit-hold"},{"title":"Commit what a request used","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /credit-holds/{creditHold}/commit","href":"/api-reference/credits/commit-what-a-request-used"},{"title":"Release a credit hold","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /credit-holds/{creditHold}/release","href":"/api-reference/credits/release-a-credit-hold"}]},{"group":"Usage","pages":[{"title":"Retrieve a customer's usage","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /customers/{customer}/usage","href":"/api-reference/usage/retrieve-a-customers-usage"},{"title":"Send a usage event","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /meter-events","href":"/api-reference/usage/send-a-usage-event"},{"title":"Send up to 500 usage events","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /meter-events/batch","href":"/api-reference/usage/send-up-to-500-usage-events"},{"title":"Cancel a usage event","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /meter-events/{identifier}/cancel","href":"/api-reference/usage/cancel-a-usage-event"}]},{"group":"Payment methods","pages":[{"title":"List customer payment methods","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /customers/{customer}/payment-methods","href":"/api-reference/payment-methods/list-customer-payment-methods"},{"title":"Retrieve a customer payment method","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /customers/{customer}/payment-methods/{paymentMethod}","href":"/api-reference/payment-methods/retrieve-a-customer-payment-method"},{"title":"Delete a customer payment method","deprecated":null,"version":null,"openapi":"/api/openapi.yaml delete /customers/{customer}/payment-methods/{paymentMethod}","href":"/api-reference/payment-methods/delete-a-customer-payment-method"}]},{"group":"Catalog","pages":[{"title":"List products","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /products","href":"/api-reference/catalog/list-products"},{"title":"Create a product","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /products","href":"/api-reference/catalog/create-a-product"},{"title":"Retrieve a product","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /products/{product}","href":"/api-reference/catalog/retrieve-a-product"},{"title":"Update a product","deprecated":null,"version":null,"openapi":"/api/openapi.yaml patch /products/{product}","href":"/api-reference/catalog/update-a-product"},{"title":"Archive a product","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /products/{product}/archive","href":"/api-reference/catalog/archive-a-product"},{"title":"List prices","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /prices","href":"/api-reference/catalog/list-prices"},{"title":"Create a price for a product","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /products/{product}/prices","href":"/api-reference/catalog/create-a-price-for-a-product"},{"title":"Retrieve a price","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /prices/{price}","href":"/api-reference/catalog/retrieve-a-price"},{"title":"Update a price","deprecated":null,"version":null,"openapi":"/api/openapi.yaml patch /prices/{price}","href":"/api-reference/catalog/update-a-price"},{"title":"Archive a price","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /prices/{price}/archive","href":"/api-reference/catalog/archive-a-price"},{"title":"List plans","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /plans","href":"/api-reference/catalog/list-plans"},{"title":"Create a plan on a product","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /products/{product}/plans","href":"/api-reference/catalog/create-a-plan-on-a-product"},{"title":"Retrieve a plan","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /plans/{plan}","href":"/api-reference/catalog/retrieve-a-plan"},{"title":"Update a plan","deprecated":null,"version":null,"openapi":"/api/openapi.yaml patch /plans/{plan}","href":"/api-reference/catalog/update-a-plan"},{"title":"Archive a plan","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /plans/{plan}/archive","href":"/api-reference/catalog/archive-a-plan"},{"title":"Add a charge to a plan","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /plans/{plan}/charges","href":"/api-reference/catalog/add-a-charge-to-a-plan"},{"title":"Retrieve a charge","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /charges/{charge}","href":"/api-reference/catalog/retrieve-a-charge"},{"title":"Update a charge","deprecated":null,"version":null,"openapi":"/api/openapi.yaml patch /charges/{charge}","href":"/api-reference/catalog/update-a-charge"},{"title":"Archive a charge","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /charges/{charge}/archive","href":"/api-reference/catalog/archive-a-charge"},{"title":"Add a charge to current subscribers","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /charges/{charge}/add-to-subscribers","href":"/api-reference/catalog/add-a-charge-to-current-subscribers"},{"title":"End a charge for current subscribers","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /charges/{charge}/end-for-subscribers","href":"/api-reference/catalog/end-a-charge-for-current-subscribers"},{"title":"Retire a plan on a date","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /plans/{plan}/retirement","href":"/api-reference/catalog/retire-a-plan-on-a-date"},{"title":"Keep offering a retiring plan","deprecated":null,"version":null,"openapi":"/api/openapi.yaml delete /plans/{plan}/retirement","href":"/api-reference/catalog/keep-offering-a-retiring-plan"}]},{"group":"Meters","pages":[{"title":"List meters","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /meters","href":"/api-reference/meters/list-meters"},{"title":"Create a meter","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /meters","href":"/api-reference/meters/create-a-meter"},{"title":"Retrieve a meter","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /meters/{meter}","href":"/api-reference/meters/retrieve-a-meter"},{"title":"Update a meter","deprecated":null,"version":null,"openapi":"/api/openapi.yaml patch /meters/{meter}","href":"/api-reference/meters/update-a-meter"}]},{"group":"Discounts","pages":[{"title":"List discounts","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /discounts","href":"/api-reference/discounts/list-discounts"},{"title":"Retrieve a discount","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /discounts/{discount}","href":"/api-reference/discounts/retrieve-a-discount"}]},{"group":"Subscriptions","pages":[{"title":"List subscriptions","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /subscriptions","href":"/api-reference/subscriptions/list-subscriptions"},{"title":"Create a subscription","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /subscriptions","href":"/api-reference/subscriptions/create-a-subscription"},{"title":"Retrieve a subscription","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /subscriptions/{subscription}","href":"/api-reference/subscriptions/retrieve-a-subscription"},{"title":"Update a subscription","deprecated":null,"version":null,"openapi":"/api/openapi.yaml patch /subscriptions/{subscription}","href":"/api-reference/subscriptions/update-a-subscription"},{"title":"Retrieve a subscription's upcoming invoice","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /subscriptions/{subscription}/upcoming-invoice","href":"/api-reference/subscriptions/retrieve-a-subscriptions-upcoming-invoice"},{"title":"Pause a subscription","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /subscriptions/{subscription}/pause","href":"/api-reference/subscriptions/pause-a-subscription"},{"title":"Resume a subscription","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /subscriptions/{subscription}/resume","href":"/api-reference/subscriptions/resume-a-subscription"},{"title":"Cancel a subscription","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /subscriptions/{subscription}/cancel","href":"/api-reference/subscriptions/cancel-a-subscription"},{"title":"Undo a scheduled cancellation","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /subscriptions/{subscription}/undo-cancel","href":"/api-reference/subscriptions/undo-a-scheduled-cancellation"},{"title":"Put a discount on a subscription","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /subscriptions/{subscription}/discount","href":"/api-reference/subscriptions/put-a-discount-on-a-subscription"},{"title":"Take the discount off a subscription","deprecated":null,"version":null,"openapi":"/api/openapi.yaml delete /subscriptions/{subscription}/discount","href":"/api-reference/subscriptions/take-the-discount-off-a-subscription"},{"title":"Retry the past-due invoice payment for a subscription","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /subscriptions/{subscription}/retry-payment","href":"/api-reference/subscriptions/retry-the-past-due-invoice-payment-for-a-subscription"},{"title":"Update a subscription item","deprecated":null,"version":null,"openapi":"/api/openapi.yaml patch /subscriptions/{subscription}/items/{item}","href":"/api-reference/subscriptions/update-a-subscription-item"},{"title":"Preview a subscription item change","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /subscriptions/{subscription}/items/{item}/preview","href":"/api-reference/subscriptions/preview-a-subscription-item-change"},{"title":"Change a subscription's plan","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /subscriptions/{subscription}/plan-change","href":"/api-reference/subscriptions/change-a-subscriptions-plan"},{"title":"Preview a plan change","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /subscriptions/{subscription}/plan-change/preview","href":"/api-reference/subscriptions/preview-a-plan-change"}]},{"group":"Metrics","pages":[{"title":"Current MRR and ARR per currency","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /metrics/mrr","href":"/api-reference/metrics/current-mrr-and-arr-per-currency"},{"title":"MRR waterfall, retention, churn and cohorts","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /metrics/report","href":"/api-reference/metrics/mrr-waterfall-retention-churn-and-cohorts"}]},{"group":"Invoices","pages":[{"title":"List invoices","description":null,"deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /invoices","href":"/api-reference/invoices/list-invoices"},{"title":"Create a one-off invoice","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /invoices","href":"/api-reference/invoices/create-a-one-off-invoice"},{"title":"Retrieve an invoice","description":null,"deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /invoices/{invoice}","href":"/api-reference/invoices/retrieve-an-invoice"},{"title":"Void an invoice","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /invoices/{invoice}/void","href":"/api-reference/invoices/void-an-invoice"},{"title":"Record a payment made outside the gateway","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /invoices/{invoice}/payments","href":"/api-reference/invoices/record-a-payment-made-outside-the-gateway"},{"title":"Mark an invoice uncollectible","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /invoices/{invoice}/mark-uncollectible","href":"/api-reference/invoices/mark-an-invoice-uncollectible"}]},{"group":"Credit notes","pages":[{"title":"Issue a credit note","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /invoices/{invoice}/credit-notes","href":"/api-reference/credit-notes/issue-a-credit-note"},{"title":"List credit notes","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /credit-notes","href":"/api-reference/credit-notes/list-credit-notes"},{"title":"Retrieve a credit note","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /credit-notes/{creditNote}","href":"/api-reference/credit-notes/retrieve-a-credit-note"}]},{"group":"Payments","pages":[{"title":"List payments","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /payments","href":"/api-reference/payments/list-payments"},{"title":"Retrieve a payment","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /payments/{payment}","href":"/api-reference/payments/retrieve-a-payment"}]},{"group":"Refunds","pages":[{"title":"Refund a payment","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /payments/{payment}/refunds","href":"/api-reference/refunds/refund-a-payment"},{"title":"List refunds","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /refunds","href":"/api-reference/refunds/list-refunds"},{"title":"Retrieve a refund","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /refunds/{refund}","href":"/api-reference/refunds/retrieve-a-refund"}]},{"group":"Chargebacks","pages":[{"title":"Record a chargeback","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /payments/{payment}/chargebacks","href":"/api-reference/chargebacks/record-a-chargeback"},{"title":"List chargebacks","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /chargebacks","href":"/api-reference/chargebacks/list-chargebacks"},{"title":"Retrieve a chargeback","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /chargebacks/{chargeback}","href":"/api-reference/chargebacks/retrieve-a-chargeback"},{"title":"Record how a dispute ended","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /chargebacks/{chargeback}/resolve","href":"/api-reference/chargebacks/record-how-a-dispute-ended"}]},{"group":"Events","pages":[{"title":"List outbound events","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /events","href":"/api-reference/events/list-outbound-events"},{"title":"Retrieve an outbound event","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /events/{event}","href":"/api-reference/events/retrieve-an-outbound-event"},{"title":"Spend alertcreated","version":null,"deprecated":null,"openapi":"/api/openapi.yaml webhook spendAlertCreated","href":"/api-reference/events/spend_alertcreated"},{"title":"Credit holdupdated","version":null,"deprecated":null,"openapi":"/api/openapi.yaml webhook creditHoldUpdated","href":"/api-reference/events/credit_holdupdated"}]},{"group":"Checkout sessions","pages":[{"title":"Create a hosted checkout session for payment-method tokenization","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /checkout-sessions","href":"/api-reference/checkout-sessions/create-a-hosted-checkout-session-for-payment-method-tokenization"},{"title":"Retrieve a checkout session","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /checkout-sessions/{checkoutSession}","href":"/api-reference/checkout-sessions/retrieve-a-checkout-session"}]},{"group":"Portal sessions","pages":[{"title":"Create a short-lived link into a customer's portal","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /portal-sessions","href":"/api-reference/portal-sessions/create-a-short-lived-link-into-a-customers-portal"}]},{"group":"Payment links","pages":[{"title":"List payment links","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /payment-links","href":"/api-reference/payment-links/list-payment-links"},{"title":"Make a price's payment link","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /payment-links","href":"/api-reference/payment-links/make-a-prices-payment-link"},{"title":"Retrieve a payment link","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /payment-links/{paymentLink}","href":"/api-reference/payment-links/retrieve-a-payment-link"},{"title":"Switch a payment link off or on, set when it stops selling, or let one customer buy it twice","deprecated":null,"version":null,"openapi":"/api/openapi.yaml patch /payment-links/{paymentLink}","href":"/api-reference/payment-links/switch-a-payment-link-off-or-on-set-when-it-stops-selling-or-let-one-customer-buy-it-twice"}]},{"group":"Webhook endpoints","pages":[{"title":"List webhook endpoints","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /webhook-endpoints","href":"/api-reference/webhook-endpoints/list-webhook-endpoints"},{"title":"Register a webhook endpoint","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /webhook-endpoints","href":"/api-reference/webhook-endpoints/register-a-webhook-endpoint"},{"title":"Retrieve a webhook endpoint","deprecated":null,"version":null,"openapi":"/api/openapi.yaml get /webhook-endpoints/{webhookEndpoint}","href":"/api-reference/webhook-endpoints/retrieve-a-webhook-endpoint"},{"title":"Delete a webhook endpoint","deprecated":null,"version":null,"openapi":"/api/openapi.yaml delete /webhook-endpoints/{webhookEndpoint}","href":"/api-reference/webhook-endpoints/delete-a-webhook-endpoint"},{"title":"Change a webhook endpoint's url, or turn it off and on","deprecated":null,"version":null,"openapi":"/api/openapi.yaml patch /webhook-endpoints/{webhookEndpoint}","href":"/api-reference/webhook-endpoints/change-a-webhook-endpoints-url-or-turn-it-off-and-on"},{"title":"Replace an endpoint's signing secret","deprecated":null,"version":null,"openapi":"/api/openapi.yaml post /webhook-endpoints/{webhookEndpoint}/rotate-secret","href":"/api-reference/webhook-endpoints/replace-an-endpoints-signing-secret"}]}]}]},"basePath":"","title":"Create a one-off invoice - Bouclay","buildId":"dpl_G9nrg4qeJSZtah1Ziwbc2n6WkLch","deploymentId":"dpl_G9nrg4qeJSZtah1Ziwbc2n6WkLch","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-B7XKH4J3.js","utils-lOYzL7z-.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DF6jUUIM.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Dpsj5f7C.js","snippetPresets-CYeiDe8v.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CUFz1YZ_.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-D8H_iLS4.js","shallow-DdluZBHX.js","getApiPlaygroundDisplay-B9922vev.js","CodeSnippet-CMoRNGYs.js","CodeSnippets-DwyrPHuw.js","Page-DSVu9Ucl.js","getPastedJson-G-zIvlHh.js","icon-B03fnEy0.js","MethodPill-CW7teklc.js","DuplicateIcon-CtO8eekd.js","createIcon-DZTKdM_A.js","DynamicMarkdown-D5M2At0B.js","SectionHeading-C_2NaA2U.js","axios-vUo_bRtp.js","Markdown-D7QRHV3m.js","clsx-D1Z-ELXV.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-lvhuD9Du.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-CKfC4ywL.js"]}