# OrderDen > Clients, quoting, orders, invoicing, stock, making and costs for makers and > very small manufacturers who sell physical goods: a costed catalog with > recipes and materials, quotes that become orders that become invoices, > payments, purchasing, production runs, stock with a movement ledger, > shipping labels and reports. A REST API at `https://orderden.com/api/v1` covers what the web app does, and it's included in every plan. Authenticate with a bearer key from Company Settings → API keys (`Authorization: Bearer od_live_…`). Start with `GET /api/v1/me`: it says which workspace the key acts in, the role and permission flags it carries, and the per-minute rate each key may call at. There is no monthly quota. A key made by somebody who may not see costs gets JSON responses with every cost and margin field **absent**: plan for that rather than treating it as an error. Conventions: JSON in and out; success is `{"data": …}` and paged lists add `{"meta": {total, page, pageSize, pageCount}}`; money is decimal strings; dates are ISO-8601. Documents update with PATCH and most other records with PUT. The main lists take `?updatedSince=` for polling and `?page`/`?pageSize`; many also take `?sort` and `?format=csv`, and the OpenAPI description says which. Writes accept an `Idempotency-Key` header and replay the first successful response for 24 hours, so a retry after a timeout is safe. ## Every endpoint ### Health - `GET /api/v1/health`: Is the deployment up - `GET /api/v1/openapi.json`: This API description ### Custom fields & bulk - `GET /api/v1/custom-fields`: The fields this workspace added to its own records - `POST /api/v1/custom-fields`: Define a field - `POST /api/v1/custom-fields/reorder`: Set the order one entity's fields appear on the form - `GET /api/v1/custom-fields/{id}`: One definition - `PUT /api/v1/custom-fields/{id}`: Change the label, type, choices or where it shows - `DELETE /api/v1/custom-fields/{id}`: Remove a definition - `GET /api/v1/bulk-jobs/{id}`: How a long bulk run is getting on - `POST /api/v1/orders/bulk`: Do one thing to many orders - `POST /api/v1/quotes/bulk`: Do one thing to many quotes - `POST /api/v1/invoices/bulk`: Do one thing to many invoices - `POST /api/v1/items/bulk`: Do one thing to many items - `POST /api/v1/clients/bulk`: Do one thing to many clients - `POST /api/v1/purchases/bulk`: Do one thing to many purchases ### Catalog tree - `GET /api/v1/item-categories`: The catalog tree - `POST /api/v1/item-categories`: Add a category - `POST /api/v1/item-categories/reorder`: Reorder one level of the tree - `GET /api/v1/item-categories/{id}`: One category with its children - `PUT /api/v1/item-categories/{id}`: Rename, re-file, or change what its items start from - `DELETE /api/v1/item-categories/{id}`: Delete an empty category - `POST /api/v1/item-categories/{id}/merge`: Fold one category into another - `GET /api/v1/tags`: The workspace's one tag list - `POST /api/v1/tags`: Add a tag - `GET /api/v1/tags/{id}`: One tag with its usage count - `PUT /api/v1/tags/{id}`: Rename or recolour a tag - `DELETE /api/v1/tags/{id}`: Take a tag off everything and drop it - `POST /api/v1/tags/{id}/merge`: Fold one tag into another - `POST /api/v1/quotes/{id}/archive`: Archive a quote - `POST /api/v1/quotes/{id}/restore`: Restore a quote from the archive - `POST /api/v1/orders/{id}/archive`: Archive a order - `POST /api/v1/orders/{id}/restore`: Restore a order from the archive - `POST /api/v1/invoices/{id}/archive`: Archive a invoice - `POST /api/v1/invoices/{id}/restore`: Restore a invoice from the archive - `POST /api/v1/credit-notes/{id}/archive`: Archive a credit note - `POST /api/v1/credit-notes/{id}/restore`: Restore a credit note from the archive - `POST /api/v1/purchases/{id}/archive`: Archive a purchase - `POST /api/v1/purchases/{id}/restore`: Restore a purchase from the archive ### Setup - `GET /api/v1/setup/checklist`: The guided-setup checklist - `POST /api/v1/setup/checklist`: Tick a step off by hand, or dismiss the card - `POST /api/v1/inventory/opening-balances`: What was on the shelf when the workspace opened - `POST /api/v1/invoices/opening-balance`: An unpaid invoice that predates the workspace ### Stock - `GET /api/v1/inventory`: What is on the shelf - `GET /api/v1/inventory/bins`: Every bin the workspace has recorded - `PUT /api/v1/inventory/bins`: Set where one thing sits - `GET /api/v1/inventory/movements`: The workspace's whole stock ledger - `GET /api/v1/items/{id}/stock`: An item's stock figures - `GET /api/v1/items/{id}/movements`: An item's stock ledger - `POST /api/v1/items/{id}/movements/{movementId}/reverse`: Reverse an adjustment, opening balance or count - `POST /api/v1/items/{id}/revalue`: Revalue a stocked item - `POST /api/v1/items/{id}/stock/adjust`: Adjust an item's stock - `POST /api/v1/items/{id}/stock/opening`: Set an item's opening stock - `GET /api/v1/stock/alerts`: Low-stock alerts - `GET /api/v1/stock/allocations`: Allocations against an item - `POST /api/v1/stock/allocations`: Allocate stock to an order line - `GET /api/v1/stock/allocations/{id}`: Get an allocation - `DELETE /api/v1/stock/allocations/{id}`: Release an allocation - `GET /api/v1/orders/{id}/allocations`: Allocations on an order - `GET /api/v1/items/{id}/stock-by-location`: Where an item's stock is - `GET /api/v1/items/{id}/bins`: Where an item sits - `PUT /api/v1/items/{id}/bins`: Set where an item sits ### Organization - `GET /api/v1/organization`: The organization this key acts as, with its profile - `GET /api/v1/organization/profile`: The letterhead, currency, locale and logo - `PUT /api/v1/organization/profile`: Replace the profile - `GET /api/v1/organization/logo`: The logo file - `PUT /api/v1/organization/logo`: Upload (replace) the logo - `DELETE /api/v1/organization/logo`: Remove the logo - `GET /api/v1/billing`: Plan, subscription and usage - `GET /api/v1/billing/account-credit`: Account credit and the ledger behind it - `GET /api/v1/dashboard`: Headline numbers - `GET /api/v1/dashboard/widgets`: Dashboard widget data for a date range - `GET /api/v1/search`: Global search across the workspace ### Reports - `GET /api/v1/reports/revenue-by-client`: Revenue and gross margin by client - `GET /api/v1/reports/wholesale-vs-retail`: Trade against retail, compared on margin - `GET /api/v1/reports/revenue-by-item`: Revenue and gross margin by catalog item, or by category - `GET /api/v1/reports/revenue-by-period`: Revenue and gross margin per day, week or month - `GET /api/v1/reports/recurring-revenue`: What the running plans are worth a month - `GET /api/v1/reports/failed-charges`: Invoices whose card on file was declined - `GET /api/v1/reports/quote-conversion`: What became of the period's quotes, and which options were taken - `GET /api/v1/reports/backlog-aging`: Open order backlog aged by promised date - `GET /api/v1/reports/fulfilment-cycle-time`: Days from confirmation to fully shipped - `GET /api/v1/reports/on-time-delivery`: Share of orders fully shipped by their promised date - `GET /api/v1/reports/inventory-valuation`: What the stock was worth, as at any date - `GET /api/v1/reports/stock-movements`: The stock ledger over a period - `GET /api/v1/reports/stock-by-location`: What stock is where, right now - `GET /api/v1/reports/stocktake-variance`: What the physical counts found - `GET /api/v1/reports/production-summary`: What was made in a period and what it cost - `GET /api/v1/reports/project-profitability`: What each project was quoted at and what it cost - `GET /api/v1/reports/expenses-by-category`: Where the money went, per spend category - `GET /api/v1/reports/profit-and-loss`: Revenue, cost of sales, expenses and what is left - `GET /api/v1/reports/materials-usage`: What production got through, waste separately - `GET /api/v1/reports/credits-and-refunds`: What was given back, and what for - `GET /api/v1/reports/ar-ageing`: Who owes what, and for how long - `GET /api/v1/reports/cash-flow-forecast`: What's expected in over the next eight weeks - `GET /api/v1/reports/income-by-payment-method`: How the money arrived - `GET /api/v1/reports/tax-collected`: Tax charged per rate and period - `GET /api/v1/reports/cogs`: Cost of goods sold for a period - `GET /api/v1/reports/schedule-c-expenses`: The period's spend grouped by tax line ### Activity - `GET /api/v1/activity`: The activity trail, newest first ### Clients - `GET /api/v1/clients`: List clients - `POST /api/v1/clients`: Create a client - `GET /api/v1/clients/duplicates`: Candidate duplicate clients, grouped - `POST /api/v1/clients/merge`: Fold duplicate clients into one - `GET /api/v1/clients/{id}`: Get a client (full graph incl. activity) - `PATCH /api/v1/clients/{id}`: Update a client - `DELETE /api/v1/clients/{id}`: Delete or archive a client - `POST /api/v1/clients/{id}/restore`: Restore an archived client - `GET /api/v1/clients/{id}/summary`: Cross-domain rollup (documents, money, items) - `POST /api/v1/clients/{id}/notes`: Add a note to the client's activity feed - `PATCH /api/v1/client-notes/{id}`: Edit a note - `DELETE /api/v1/client-notes/{id}`: Delete a note - `POST /api/v1/clients/{id}/addresses`: Add an address - `POST /api/v1/clients/{id}/contacts`: Add a contact person - `POST /api/v1/clients/{id}/contact-methods`: Add a contact method (email/phone/…) - `PUT /api/v1/addresses/{id}`: Replace an address - `DELETE /api/v1/addresses/{id}`: Remove an address - `PUT /api/v1/contacts/{id}`: Replace a contact - `DELETE /api/v1/contacts/{id}`: Remove a contact - `PATCH /api/v1/contact-methods/{id}`: Edit a contact method - `DELETE /api/v1/contact-methods/{id}`: Remove a contact method - `GET /api/v1/clients/{id}/attachments`: List the client's attachments - `POST /api/v1/clients/{id}/attachments`: Upload an attachment to the client - `GET /api/v1/clients/{id}/credit`: A client's credit balance and the ledger behind it ### Items - `GET /api/v1/items`: List catalog items - `POST /api/v1/items`: Create an item - `GET /api/v1/items/{id}`: Get an item - `PATCH /api/v1/items/{id}`: Update an item - `DELETE /api/v1/items/{id}`: Delete an item - `GET /api/v1/items/{id}/vendors`: Who sells this item - `PUT /api/v1/items/{id}/vendors`: Add or update a vendor on the item - `DELETE /api/v1/items/{id}/vendors/{vendorId}`: Take a vendor off the item - `POST /api/v1/items/{id}/archive`: Archive an item - `POST /api/v1/items/{id}/restore`: Restore an item - `POST /api/v1/items/{id}/duplicate`: Duplicate an item ### Materials & recipes - `POST /api/v1/materials/{id}/revalue`: Revalue a material - `GET /api/v1/items/{id}/recipe`: An item's recipe (bill of materials) - `PUT /api/v1/items/{id}/recipe`: Save an item's recipe - `DELETE /api/v1/items/{id}/recipe`: Remove an item's recipe - `GET /api/v1/items/{id}/recipe/cost`: What the bill of materials works out to - `POST /api/v1/items/{id}/recipe/adopt`: Use the bill of materials cost as the item's unit cost - `GET /api/v1/materials`: List materials - `POST /api/v1/materials`: Create a material - `GET /api/v1/materials/{id}`: Get a material - `PUT /api/v1/materials/{id}`: Update a material - `DELETE /api/v1/materials/{id}`: Delete a material - `GET /api/v1/units`: List units of measure - `POST /api/v1/units`: Add a unit - `GET /api/v1/units/{id}`: Get a unit - `PUT /api/v1/units/{id}`: Update a unit - `DELETE /api/v1/units/{id}`: Delete a unit - `GET /api/v1/variables`: List workspace variables - `POST /api/v1/variables`: Add a workspace variable - `GET /api/v1/variables/{id}`: Get a workspace variable - `PUT /api/v1/variables/{id}`: Update a workspace variable - `DELETE /api/v1/variables/{id}`: Delete a workspace variable ### Variants & kits - `GET /api/v1/items/{id}/variants`: An item's variants - `POST /api/v1/items/{id}/variants`: Save the variant grid - `POST /api/v1/items/{id}/variants/generate`: Propose the variant grid - `GET /api/v1/variants/{id}`: Get a variant - `PUT /api/v1/variants/{id}`: Update a variant - `DELETE /api/v1/variants/{id}`: Delete a variant - `GET /api/v1/items/{id}/components`: What a kit contains - `PUT /api/v1/items/{id}/components`: Set what a kit contains - `GET /api/v1/items/{id}/images`: An item's photographs - `POST /api/v1/items/{id}/images`: Upload a photograph - `PUT /api/v1/items/{id}/images`: Reorder an item's photographs - `DELETE /api/v1/items/{id}/images/{attachmentId}`: Remove a photograph ### Production - `GET /api/v1/production-runs`: List production runs - `POST /api/v1/production-runs`: Plan a production run - `GET /api/v1/production-runs/{id}`: Get a production run - `PUT /api/v1/production-runs/{id}`: Change a planned or in-progress run - `DELETE /api/v1/production-runs/{id}`: Delete a run that never moved stock - `POST /api/v1/production-runs/{id}/void`: Void a completed run - `POST /api/v1/production-runs/{id}/reopen`: Reopen a completed run to correct it - `POST /api/v1/production-runs/{id}/start`: Start a planned run - `POST /api/v1/production-runs/{id}/complete`: Finish the batch and move the stock - `POST /api/v1/production-runs/{id}/cancel`: Call off a run that has not completed - `GET /api/v1/items/{id}/buildable`: How many more can be made from what is on hand ### Client POs - `GET /api/v1/client-pos`: List client POs - `GET /api/v1/client-pos/{id}`: Get one - `GET /api/v1/client-pos/{id}/files`: The document they sent - `POST /api/v1/client-pos/{id}/accept`: Accept it as a draft order - `POST /api/v1/client-pos/{id}/decline`: Decline it, with a reason - `POST /api/v1/client-pos/{id}/reopen`: Put it back to waiting - `POST /api/v1/client-pos/{id}/read`: Read the document again ### Quotes - `GET /api/v1/quotes`: List quotes - `POST /api/v1/quotes`: Create a quote - `GET /api/v1/quotes/{id}/chain`: Everything tied to this quote's job - `GET /api/v1/quotes/{id}`: Get a quote - `PATCH /api/v1/quotes/{id}`: Update a quote - `DELETE /api/v1/quotes/{id}`: Delete a quote - `POST /api/v1/quotes/{id}/status`: Set a quote's status - `POST /api/v1/quotes/{id}/convert`: Convert a quote into an order - `POST /api/v1/quotes/{id}/apply-to-order`: Apply a converted quote's changes to its order - `POST /api/v1/quotes/{id}/convert-to-invoice`: Invoice a quote directly - `POST /api/v1/quotes/{id}/convert-to-project`: Start a project from a quote - `GET /api/v1/quotes/{id}/select-options`: How a quote's options stand - `POST /api/v1/quotes/{id}/select-options`: Set which options a quote charges for - `POST /api/v1/quotes/{id}/save-as-template`: Save a quote as a reusable template - `GET /api/v1/quotes/{id}/share-link`: Get the quote's active share link - `POST /api/v1/quotes/{id}/share-link`: Create (or rotate) the quote's share link - `DELETE /api/v1/quotes/{id}/share-link`: Revoke the quote's share link - `GET /api/v1/quotes/{id}/attachments`: List the quote's attachments - `POST /api/v1/quotes/{id}/attachments`: Upload an attachment to the quote - `GET /api/v1/quote-templates`: List quote templates - `POST /api/v1/quote-templates`: Create a quote template - `GET /api/v1/quote-templates/{id}`: Get a quote template - `PUT /api/v1/quote-templates/{id}`: Update a quote template - `DELETE /api/v1/quote-templates/{id}`: Delete a quote template - `POST /api/v1/quote-templates/{id}/create-quote`: Raise a quote from a template - `POST /api/v1/quotes/{id}/duplicate`: Duplicate a quote - `GET /api/v1/quotes/{id}/pdf`: The quote as a PDF - `GET /api/v1/quotes/{id}/signature`: The client's signature on a quote - `POST /api/v1/quotes/{id}/signature`: Record a signature taken in person - `POST /api/v1/quotes/{id}/signature/void`: Ask for a new signature ### Invoices - `GET /api/v1/recurring-invoices`: List recurring invoices - `POST /api/v1/recurring-invoices`: Set up a recurring invoice - `GET /api/v1/recurring-invoices/{id}`: Get a recurring invoice - `PUT /api/v1/recurring-invoices/{id}`: Change the plan - `DELETE /api/v1/recurring-invoices/{id}`: Delete a recurring invoice - `POST /api/v1/recurring-invoices/{id}/pause`: Pause a plan - `POST /api/v1/recurring-invoices/{id}/resume`: Resume a paused or canceled plan - `POST /api/v1/recurring-invoices/{id}/run`: Raise the next invoice now - `POST /api/v1/invoices/{id}/duplicate`: Duplicate an invoice - `GET /api/v1/invoices`: List invoices - `POST /api/v1/invoices`: Create an invoice - `POST /api/v1/invoices/{id}/rebuild`: Rebuild an invoice from its order - `GET /api/v1/invoices/{id}/chain`: Everything tied to this invoice's job - `GET /api/v1/invoices/{id}`: Get an invoice (lines and payments) - `PATCH /api/v1/invoices/{id}`: Update an invoice - `DELETE /api/v1/invoices/{id}`: Delete an invoice - `POST /api/v1/invoices/{id}/status`: Set an invoice's status - `POST /api/v1/invoices/{id}/payments`: Record a payment - `GET /api/v1/invoices/{id}/pdf`: The invoice as a PDF - `POST /api/v1/invoices/{id}/make-recurring`: Bill this invoice again and again - `DELETE /api/v1/invoices/{id}/late-fees/{lineId}`: Take a late fee off an invoice - `POST /api/v1/invoices/{id}/write-off`: Write the balance off as a bad debt - `DELETE /api/v1/invoices/{id}/write-off`: Reverse a write-off - `DELETE /api/v1/invoices/{id}/payments/{paymentId}`: Remove a payment - `POST /api/v1/invoices/{id}/payments/{paymentId}/refund`: Refund a payment - `GET /api/v1/invoices/{id}/share-link`: Get the invoice's active share link - `POST /api/v1/invoices/{id}/share-link`: Create (or rotate) the invoice's share link - `DELETE /api/v1/invoices/{id}/share-link`: Revoke the invoice's share link - `GET /api/v1/invoices/{id}/attachments`: List the invoice's attachments - `POST /api/v1/invoices/{id}/attachments`: Upload an attachment to the invoice ### Payments - `GET /api/v1/clients/{id}/payment-methods`: A client's cards and bank accounts on file - `PUT /api/v1/payment-methods/{id}`: Make a payment method the client's default - `DELETE /api/v1/payment-methods/{id}`: Take a payment method off file - `POST /api/v1/invoices/{id}/charge`: Charge a card on file - `GET /api/v1/payments/{id}/receipt.pdf`: A receipt for one payment - `POST /api/v1/payments/{id}/receipt/email`: Email a receipt for one payment - `GET /api/v1/payments`: List payments - `POST /api/v1/payments`: Record a payment against any invoice - `GET /api/v1/payments/summary`: This month's payments, summed - `GET /api/v1/payments/{id}`: Get a payment - `PATCH /api/v1/payments/{id}`: Correct a payment's details - `DELETE /api/v1/payments/{id}`: Delete a payment - `DELETE /api/v1/refunds/{id}`: Undo a refund - `PUT /api/v1/payments/{id}/allocations`: Apply a payment to invoices ### Settings - `GET /api/v1/settings/late-fees`: The workspace's late-fee rule - `PUT /api/v1/settings/late-fees`: Change the late-fee rule - `GET /api/v1/settings/calendar`: Members who have connected a calendar, and whether each is up to date - `POST /api/v1/settings/calendar/sync`: Copy the order dates to every connected calendar now - `GET /api/v1/settings/storage`: Storage providers this workspace has connected - `PUT /api/v1/settings/storage`: Choose where new attachments are written - `GET /api/v1/settings/storage/{provider}`: One storage provider's connection - `DELETE /api/v1/settings/storage/{provider}`: Forget a storage connection - `POST /api/v1/settings/storage/{provider}/connect`: Start connecting a workspace's own storage - `GET /api/v1/export`: Download everything in the workspace as a zip - `GET /api/v1/settings/numbering`: Number formats and next numbers - `PUT /api/v1/settings/numbering`: Set next numbers - `POST /api/v1/renumber`: Correct a document's number - `GET /api/v1/settings/templates`: Template settings (theme, footer, number formats) - `PUT /api/v1/settings/templates`: Replace template settings - `GET /api/v1/settings/templates/designs`: The document designs and color palettes on offer - `GET /api/v1/settings/sales`: Sales policy (minimum gross margin) - `PUT /api/v1/settings/sales`: Update the sales policy - `GET /api/v1/suppressions`: Addresses this workspace has stopped emailing - `POST /api/v1/suppressions`: Stop emailing an address - `DELETE /api/v1/suppressions/{id}`: Start emailing an address again - `GET /api/v1/settings/notifications`: A member's notification preferences - `PUT /api/v1/settings/notifications`: Save a member's notification preferences - `GET /api/v1/settings/mail`: Email signature and blind copy - `PUT /api/v1/settings/mail`: Replace the email signature and blind copy - `DELETE /api/v1/settings/mail`: Clear the email signature and blind copy - `GET /api/v1/settings/payments`: Both payment processors, and what the pay page offers - `PUT /api/v1/settings/payments`: One processor's options: methods offered, and whether part payments are allowed - `GET /api/v1/settings/mail/oauth`: The mailbox connected over OAuth - `DELETE /api/v1/settings/mail/oauth`: Forget the connected mailbox - `POST /api/v1/settings/mail/oauth/connect`: Start connecting a mailbox - `POST /api/v1/settings/mail/oauth/verify`: Send a test email through the connected mailbox - `PUT /api/v1/settings/payments/offer`: Which connected processors the pay page offers by default - `POST /api/v1/settings/payments/connect`: Start connecting a payment account - `DELETE /api/v1/settings/payments/connect`: Disconnect one payment processor ### Orders - `GET /api/v1/orders`: List orders - `POST /api/v1/orders`: Create an order - `GET /api/v1/orders/{id}/chain`: Everything tied to this order's job - `GET /api/v1/orders/{id}`: Get an order (lines, shipments, invoices) - `PATCH /api/v1/orders/{id}`: Update an order - `DELETE /api/v1/orders/{id}`: Delete an order - `POST /api/v1/orders/{id}/status`: Set an order's status - `POST /api/v1/orders/{id}/reopen`: Reopen a completed order - `POST /api/v1/orders/{id}/duplicate`: Duplicate an order (reorder) - `POST /api/v1/orders/{id}/lines/{lineId}/reopen`: Reopen quantity closed short - `POST /api/v1/orders/{id}/close-short`: Close an order short - `POST /api/v1/orders/{id}/shipments`: Record a shipment (partial fulfillment) - `PATCH /api/v1/orders/{id}/shipments/{shipmentId}`: Edit a shipment - `DELETE /api/v1/orders/{id}/shipments/{shipmentId}`: Void a shipment - `PATCH /api/v1/shipments/{id}`: Edit a shipment - `POST /api/v1/orders/{id}/shipments/{shipmentId}/invoice`: Invoice a single shipment - `POST /api/v1/orders/{id}/invoice`: Invoice what the order has shipped, or what is left of it - `GET /api/v1/orders/{id}/share-link`: Get the order's active share link - `POST /api/v1/orders/{id}/share-link`: Create (or rotate) the order's share link - `DELETE /api/v1/orders/{id}/share-link`: Revoke the order's share link - `GET /api/v1/orders/{id}/attachments`: List the order's attachments - `POST /api/v1/orders/{id}/attachments`: Upload an attachment to the order - `GET /api/v1/orders/{id}/pdf`: The order as a PDF - `GET /api/v1/orders/{id}/packing-slip.pdf`: The packing slip - `POST /api/v1/orders/packing-slips`: A stack of packing slips as one PDF - `GET /api/v1/orders/{id}/pick-list`: The sheet you walk the shelf with ### Purchases - `POST /api/v1/purchases/{id}/duplicate`: Duplicate a purchase - `GET /api/v1/spending`: Everything that went out - `GET /api/v1/purchases`: List purchases - `POST /api/v1/purchases`: Create a purchase - `GET /api/v1/purchases/{id}`: Get a purchase (lines and payments) - `PATCH /api/v1/purchases/{id}`: Update a purchase - `DELETE /api/v1/purchases/{id}`: Delete a purchase - `POST /api/v1/purchases/{id}/status`: Set a purchase's status - `POST /api/v1/purchases/reorder`: Draft purchases from low stock - `POST /api/v1/purchases/{id}/receive`: Receive everything outstanding (or undo every delivery) - `GET /api/v1/purchases/{id}/receipts`: Deliveries booked against a purchase - `POST /api/v1/purchases/{id}/receipts`: Book a delivery in - `PATCH /api/v1/purchases/{id}/receipts/{receiptId}`: Correct a delivery - `DELETE /api/v1/purchases/{id}/receipts/{receiptId}`: Undo a delivery - `GET /api/v1/purchases/{id}/pdf`: The purchase order as a PDF - `POST /api/v1/purchases/{id}/email`: Email the purchase order to the supplier - `GET /api/v1/purchases/{id}/attachments`: List the purchase's attachments - `POST /api/v1/purchases/{id}/attachments`: Upload an attachment to the purchase - `GET /api/v1/vendors/{id}/attachments`: List the vendor's attachments - `POST /api/v1/vendors/{id}/attachments`: Upload an attachment to the vendor - `POST /api/v1/purchases/{id}/payments`: Record an outgoing payment - `DELETE /api/v1/purchases/{id}/payments/{paymentId}`: Remove a payment ### Credit notes - `GET /api/v1/credit-notes`: List credit notes - `POST /api/v1/credit-notes`: Draft a credit note - `GET /api/v1/credit-notes/{id}`: Get a credit note (lines, applications and refunds) - `PUT /api/v1/credit-notes/{id}`: Edit a credit note - `DELETE /api/v1/credit-notes/{id}`: Delete a draft, or void an issued credit note - `POST /api/v1/credit-notes/{id}/issue`: Issue the credit note - `POST /api/v1/credit-notes/{id}/apply`: Apply credit to an invoice - `POST /api/v1/credit-notes/{id}/unapply`: Take credit back off an invoice - `POST /api/v1/credit-notes/{id}/refund`: Refund the credit - `POST /api/v1/credit-notes/{id}/void`: Void a credit note - `GET /api/v1/credit-notes/{id}/pdf`: The credit note as a PDF - `POST /api/v1/credit-notes/{id}/email`: Email the credit note to the client ### Client portal - `PATCH /api/v1/comments/{id}`: Edit a message you sent the client - `DELETE /api/v1/comments/{id}`: Take back a message you sent the client - `GET /api/v1/clients/{id}/portal-users`: Who at this client can sign in - `POST /api/v1/clients/{id}/portal-users`: Give somebody at this client an account - `DELETE /api/v1/portal-users/{id}`: Take portal access away - `GET /api/v1/quotes/{id}/comments`: The client conversation on one quote - `POST /api/v1/quotes/{id}/comments`: Reply to the client on this quote - `GET /api/v1/orders/{id}/comments`: The client conversation on one order - `POST /api/v1/orders/{id}/comments`: Reply to the client on this order - `GET /api/v1/invoices/{id}/comments`: The client conversation on one invoice - `POST /api/v1/invoices/{id}/comments`: Reply to the client on this invoice - `GET /api/v1/projects/{id}/comments`: The client conversation on one project - `POST /api/v1/projects/{id}/comments`: Reply to the client on this project ### Attachments - `GET /api/v1/attachments/{id}`: Attachment metadata - `PUT /api/v1/attachments/{id}`: Show a file to the client, or stop showing it - `PATCH /api/v1/attachments/{id}`: Rename or move an attachment - `DELETE /api/v1/attachments/{id}`: Delete an attachment (permanent) - `GET /api/v1/attachments/{id}/download`: Download the file bytes - `GET /api/v1/attachment-purges`: Past attachment clear-outs - `POST /api/v1/attachment-purges`: Export and remove attachments older than a date - `POST /api/v1/attachment-purges/preview`: What a cutoff would remove - `GET /api/v1/attachment-purges/{id}`: One clear-out - `DELETE /api/v1/attachment-purges/{id}`: Delete the archive from OrderDen storage - `GET /api/v1/attachment-purges/{id}/download`: The archive a clear-out produced ### Statements - `GET /api/v1/clients/{id}/statement`: A client's statement of account - `POST /api/v1/clients/{id}/statement/send`: Email a client their statement - `GET /api/v1/clients/{id}/statement/links`: A client's statement links - `DELETE /api/v1/clients/{id}/statement/links/{linkId}`: Revoke a statement link - `GET /api/v1/statements`: The statements that have actually been sent - `GET /api/v1/settings/statements`: The automatic statement schedule - `PUT /api/v1/settings/statements`: Change the schedule ### Pricing - `GET /api/v1/items/{id}/pricing`: What to charge, and what a price actually leaves you - `POST /api/v1/items/{id}/pricing`: Put a suggested price on a price list - `POST /api/v1/pricing/what-if`: What if I charged this instead? - `GET /api/v1/settings/pricing`: The workspace's margin target and markup rules - `PUT /api/v1/settings/pricing`: Update the pricing rules ### Shipping - `GET /api/v1/settings/shipping`: The carrier networks - `PUT /api/v1/settings/shipping`: Save a connected network's settings - `DELETE /api/v1/settings/shipping`: Disconnect a network - `GET /api/v1/package-presets`: List the boxes - `POST /api/v1/package-presets`: Add a box - `GET /api/v1/package-presets/{id}`: Get a box - `PUT /api/v1/package-presets/{id}`: Update a box - `DELETE /api/v1/package-presets/{id}`: Delete a box - `POST /api/v1/addresses/{id}/validate`: Check an address against the carrier network - `POST /api/v1/orders/{id}/shipping/rates`: What every carrier would charge - `POST /api/v1/orders/{id}/shipping/labels`: Buy a label - `POST /api/v1/orders/{id}/shipping/local`: Record a collection or a local delivery - `POST /api/v1/shipping/labels/batch`: Buy labels for a stack of orders - `GET /api/v1/shipments/{id}/label.pdf`: Reprint a bought label - `POST /api/v1/shipments/{id}/void`: Ask for the postage back ### Print batches - `POST /api/v1/print-batches`: Book a stack of documents to be printed - `GET /api/v1/print-batches/{id}`: How a print batch is getting on - `GET /api/v1/print-batches/{id}/file`: The finished PDF ### Stocktakes - `GET /api/v1/stocktakes`: List stocktakes - `POST /api/v1/stocktakes`: Start a count - `GET /api/v1/stocktakes/{id}`: Get a stocktake - `PUT /api/v1/stocktakes/{id}/lines/{lineId}`: Record what was found - `DELETE /api/v1/stocktakes/{id}/lines/{lineId}`: Take a line off a count - `POST /api/v1/stocktakes/{id}/lines`: Add items to a count under way - `POST /api/v1/stocktakes/{id}/reverse`: Reverse a posting - `POST /api/v1/stocktakes/{id}/resume`: Pick a canceled count back up - `GET /api/v1/stocktakes/{id}/review`: What the count found - `POST /api/v1/stocktakes/{id}/post`: Post the count - `POST /api/v1/stocktakes/{id}/cancel`: Abandon a count ### Barcodes - `GET /api/v1/barcodes/{code}`: What a scanned code is - `POST /api/v1/items/barcodes/generate`: Give a code to whatever has none - `POST /api/v1/labels`: Print barcode labels ### Locations - `GET /api/v1/locations`: List locations - `POST /api/v1/locations`: Add a location - `GET /api/v1/locations/{id}`: Get a location - `PUT /api/v1/locations/{id}`: Update a location - `DELETE /api/v1/locations/{id}`: Delete a location ### Price lists - `GET /api/v1/price-lists`: List price lists - `POST /api/v1/price-lists`: Add a price list - `GET /api/v1/price-lists/{id}`: Get a price list - `PUT /api/v1/price-lists/{id}`: Update a price list - `DELETE /api/v1/price-lists/{id}`: Delete a price list - `GET /api/v1/price-lists/{id}/items`: The list's prices - `PUT /api/v1/price-lists/{id}/items`: Set or clear prices in bulk - `POST /api/v1/price-lists/{id}/apply-rule`: Fill the list from its markup rule - `POST /api/v1/price-lists/{id}/undo-fill`: Undo the last fill from the rule - `GET /api/v1/items/{id}/prices`: This item on every price list - `POST /api/v1/pricing/resolve`: What does this buyer pay? ### Carriers - `GET /api/v1/carriers`: List carriers - `POST /api/v1/carriers`: Add a carrier - `GET /api/v1/carriers/{id}`: Get a carrier - `PATCH /api/v1/carriers/{id}`: Update a carrier - `DELETE /api/v1/carriers/{id}`: Delete a carrier ### Taxes - `GET /api/v1/tax-rates`: List tax rates - `POST /api/v1/tax-rates`: Add a tax rate - `GET /api/v1/tax-rates/{id}`: Get a tax rate - `PUT /api/v1/tax-rates/{id}`: Update a tax rate - `PATCH /api/v1/tax-rates/{id}`: Update a tax rate (same as PUT) - `DELETE /api/v1/tax-rates/{id}`: Delete a tax rate - `GET /api/v1/tax-groups`: List tax groups - `POST /api/v1/tax-groups`: Combine rates into a group - `GET /api/v1/tax-groups/{id}`: Get a tax group - `PUT /api/v1/tax-groups/{id}`: Update a tax group - `PATCH /api/v1/tax-groups/{id}`: Update a tax group (same as PUT) - `DELETE /api/v1/tax-groups/{id}`: Delete a tax group ### Vendors - `GET /api/v1/vendors`: List vendors - `POST /api/v1/vendors`: Create a vendor - `GET /api/v1/vendors/{id}`: Get a vendor (with purchase rollups) - `PATCH /api/v1/vendors/{id}`: Update a vendor - `DELETE /api/v1/vendors/{id}`: Delete a vendor - `POST /api/v1/vendors/{id}/archive`: Archive a vendor - `POST /api/v1/vendors/{id}/restore`: Restore a vendor ### Projects - `GET /api/v1/projects`: List projects - `POST /api/v1/projects`: Open a project - `GET /api/v1/projects/{id}`: Get a project - `PUT /api/v1/projects/{id}`: Update a project - `PATCH /api/v1/projects/{id}`: Update a project (alias of PUT) - `DELETE /api/v1/projects/{id}`: Delete a project - `GET /api/v1/projects/{id}/profitability`: What a project was quoted at, and what it actually cost - `GET /api/v1/projects/{id}/time-entries`: List the time logged against a project - `POST /api/v1/projects/{id}/time-entries`: Log a stint - `POST /api/v1/projects/{id}/bill`: Bill a project's time, expenses and material onto one invoice - `POST /api/v1/projects/{id}/bill-time`: Put a project's unbilled time onto an invoice - `GET /api/v1/projects/{id}/bill-stock`: Material on a project that has not been charged for - `POST /api/v1/projects/{id}/bill-stock`: Charge a project's material to an invoice - `POST /api/v1/projects/{id}/bill-expenses`: Re-bill a project's unbilled expenses - `GET /api/v1/projects/{id}/stock`: What has come off the shelf for a project - `POST /api/v1/projects/{id}/stock`: Use stock on a project - `DELETE /api/v1/projects/{id}/stock/{movementId}`: Put stock back on the shelf - `GET /api/v1/time-entries/{id}`: Get a time entry - `PUT /api/v1/time-entries/{id}`: Update a time entry - `PATCH /api/v1/time-entries/{id}`: Update a time entry (alias of PUT) - `DELETE /api/v1/time-entries/{id}`: Delete a time entry ### Expenses - `GET /api/v1/expenses`: List expenses - `POST /api/v1/expenses`: Record an expense - `GET /api/v1/expenses/{id}`: Get an expense - `PUT /api/v1/expenses/{id}`: Update an expense - `PATCH /api/v1/expenses/{id}`: Update an expense (alias of PUT) - `DELETE /api/v1/expenses/{id}`: Delete an expense - `GET /api/v1/expenses/{id}/attachments`: List an expense's receipts - `POST /api/v1/expenses/{id}/attachments`: Add a receipt photograph - `POST /api/v1/expenses/from-image`: Draft an expense from a photograph - `POST /api/v1/expenses/{id}/confirm`: Agree with a drafted expense - `POST /api/v1/expenses/{id}/rebill`: Charge an expense back to a client - `POST /api/v1/expenses/{id}/unbill`: Un-bill a re-billed expense - `GET /api/v1/expense-categories`: List the workspace's spend categories - `POST /api/v1/expense-categories`: Add a spend category - `GET /api/v1/expense-categories/{id}`: Get a spend category - `PUT /api/v1/expense-categories/{id}`: Update a spend category - `PATCH /api/v1/expense-categories/{id}`: Update a spend category (alias of PUT) - `DELETE /api/v1/expense-categories/{id}`: Delete a spend category - `POST /api/v1/expense-categories/{id}/merge`: Merge one category into another ### Accounting - `GET /api/v1/accounting/map`: The chart-of-accounts mapping - `PUT /api/v1/accounting/map`: Replace one provider's mapping - `GET /api/v1/accounting/exports`: What has gone over - `POST /api/v1/accounting/exports`: Generate a period's export - `GET /api/v1/accounting/exports/{id}`: One export - `GET /api/v1/accounting/exports/{id}/download`: Download the zip - `GET /api/v1/accounting/handoff`: The accountant's address and the period reminder - `PUT /api/v1/accounting/handoff`: Save the accountant's address and the period reminder - `GET /api/v1/accounting/changed-since-export`: What has moved since the books went over ### Imports - `POST /api/v1/imports/preview`: Parse and validate a file without importing it - `GET /api/v1/imports`: List import runs - `POST /api/v1/imports`: Run an import - `POST /api/v1/imports/archive`: Load a full-export archive back in - `GET /api/v1/imports/{id}`: Get one import run - `GET /api/v1/imports/{id}/rejected`: Download the rejected rows - `POST /api/v1/imports/{id}/undo`: Undo an import ### Payment terms - `GET /api/v1/payment-terms`: The workspace's named payment terms - `POST /api/v1/payment-terms`: Add a payment term - `GET /api/v1/payment-terms/{id}`: One payment term - `PUT /api/v1/payment-terms/{id}`: Replace a payment term - `DELETE /api/v1/payment-terms/{id}`: Remove a payment term - `GET /api/v1/orders/{id}/schedule`: The installments agreed for this project - `PUT /api/v1/orders/{id}/schedule`: Replace the schedule - `POST /api/v1/orders/{id}/schedule/{stepId}/invoice`: Invoice one stage of the schedule - `POST /api/v1/orders/{id}/prepayment-invoice`: Take payment for an order before it has been billed - `POST /api/v1/orders/{id}/final-invoice`: Close the project out - `POST /api/v1/invoices/combined`: One invoice for several of a client's orders ### Reminders - `GET /api/v1/settings/reminders`: The workspace's chasing schedule - `PUT /api/v1/settings/reminders`: Replace the chasing schedule - `GET /api/v1/email-templates`: Every email template - `GET /api/v1/email-templates/{key}`: One email template - `PUT /api/v1/email-templates/{key}`: Save the workspace's own wording - `DELETE /api/v1/email-templates/{key}`: Reset to the built-in wording - `POST /api/v1/email-templates/{key}/test`: Send yourself a specimen - `GET /api/v1/invoices/{id}/reminders`: When this invoice is next chased, and what has gone already - `PUT /api/v1/invoices/{id}/reminders`: Pause or resume chasing this invoice - `POST /api/v1/invoices/{id}/reminders/send`: Send a payment reminder now - `GET /api/v1/quotes/{id}/follow-ups`: When this quote is next followed up, and what has gone already - `PUT /api/v1/quotes/{id}/follow-ups`: Pause or resume following this quote up - `POST /api/v1/quotes/{id}/follow-ups/send`: Send a follow-up now ### Notifications - `POST /api/v1/me/push-subscriptions`: Subscribe this browser to web push - `DELETE /api/v1/me/push-subscriptions`: Unsubscribe this browser from web push - `GET /api/v1/notifications`: One member's bell menu - `DELETE /api/v1/notifications`: Clear a member's bell - `DELETE /api/v1/notifications/{id}`: Clear one notification - `PUT /api/v1/notifications/{id}/read`: Mark one notification read (or unread) ### Webhooks - `GET /api/v1/webhooks`: The workspace's endpoints - `POST /api/v1/webhooks`: Add an endpoint - `GET /api/v1/webhooks/{id}`: One endpoint - `PUT /api/v1/webhooks/{id}`: Change an endpoint - `DELETE /api/v1/webhooks/{id}`: Remove an endpoint and its delivery history - `POST /api/v1/webhooks/{id}/test`: Queue an obviously fake event so you can watch one arrive - `POST /api/v1/webhooks/{id}/rotate-secret`: Mint a new signing secret and return it once - `GET /api/v1/webhooks/{id}/deliveries`: What was sent, what came back, and when the next attempt is due - `POST /api/v1/webhook-deliveries/{id}/redeliver`: Send a settled delivery again - `POST /api/v1/webhooks/subscriptions`: REST-hook subscribe (Zapier) - `DELETE /api/v1/webhooks/subscriptions`: REST-hook unsubscribe (Zapier) ### Team & access - `GET /api/v1/me`: What this key is and what it may do - `GET /api/v1/members`: Everybody in the workspace - `POST /api/v1/members/{id}/transfer-ownership`: Transfer ownership - `GET /api/v1/members/{id}`: One member - `PUT /api/v1/members/{id}`: Change somebody's role and permissions - `DELETE /api/v1/members/{id}`: Remove somebody from the workspace - `GET /api/v1/invitations`: Invitations still open - `POST /api/v1/invitations`: Invite somebody - `DELETE /api/v1/invitations/{id}`: Withdraw an invitation ## Every webhook event - `quote.sent` (payload: Quote): A quote was sent to a client. - `quote.accepted` (payload: Quote): A client accepted a quote, in the portal or by hand. Payload: a summary of the quote. - `quote.declined` (payload: Quote): A quote was declined, by the client or by hand. Payload: a summary of the quote. - `order.created` (payload: Order): An order was created from the order form, the API or a client's purchase order. Converting a quote, duplicating an order and importing don't send it. - `order.confirmed` (payload: Order): An order left draft. - `order.shipped` (payload: Order): An order's status was set to Shipped by hand or in bulk. Recording shipments doesn't send it. - `order.completed` (payload: Order): An order's status was set to Completed by hand. - `invoice.sent` (payload: Invoice): An invoice's status changed to Sent. Invoices created already sent, such as recurring and deposit invoices, don't send it. - `invoice.paid` (payload: Invoice): A payment recorded on the invoice cleared it, or it was marked paid by hand. Online payments, payments from the Payments page, applied credit and write-offs don't send it. - `payment.received` (payload: Invoice): A payment was recorded on an invoice, in the app or the API. Payload: the invoice. Online payments and payments from the Payments page don't send it. - `payment.refunded` (payload: Invoice): A refund was issued in OrderDen. Payload: the invoice. - `client.created` (payload: Client): A client was added. - `client.updated` (payload: Client): A client's own fields changed. `previous` carries them as they were. - `item.updated` (payload: Item): A catalog item changed. `previous` carries the fields as they were. - `stock.low` (payload: ItemStock): An item was at or below its reorder point when it was edited or stock was allocated. Payload: a summary of the item. - `production.completed` (payload: ProductionRun): A production run was completed and its output went into stock. ## Guides ### Getting started Sign up, set up your workspace, find your way around, and invite your team. https://orderden.com/docs/getting-started ### Support How to reach us, what goes with a request when you're signed in, and what happens after you send it. https://orderden.com/docs/support ### OrderDen on your phone Add it to your home screen, take photos straight into the app, and get notifications on a phone with the app closed. https://orderden.com/docs/mobile ### Dashboard Your widget board and date ranges. https://orderden.com/docs/dashboard ### Clients Company profiles, contacts, addresses, payment terms and notes. https://orderden.com/docs/clients ### Items & pricing The catalog: item numbers, variants, kits, photos, categories, where the cost comes from, and what to charge. https://orderden.com/docs/items ### Wholesale and retail pricing Price lists with their own minimums and case packs. Put a client on one and their documents use its prices. https://orderden.com/docs/price-lists ### Materials, bills of materials and what things cost What you buy, the units you count it in, and the bill of materials that turns both into a cost per unit, with labor and overhead. https://orderden.com/docs/materials ### Passwords & signing in Signing in with your email or Google, choosing and changing a password, and the reset link when you've forgotten it. https://orderden.com/docs/passwords ### Roles, permissions, two-factor and sessions The roles and permissions, your sign-in address, two-factor authentication and passkeys, and the devices you're signed in on. https://orderden.com/docs/team-and-security ### Your data The full download and restoring it, clearing out old files, support sessions, and deleting a workspace. https://orderden.com/docs/your-data ### Importing your spreadsheet Load clients, items, materials, stock, orders, invoices, payments and more from a CSV, with mapping, review, duplicates and undo. https://orderden.com/docs/import ### Quotes Priced proposals: send them, get them accepted, and convert them to an order, an invoice or a project. https://orderden.com/docs/quotes ### Orders & shipping Confirmed work: shipping, tracking, packing slips and invoicing. https://orderden.com/docs/orders ### Invoices & payments Bill clients, record payments and track what's owed. https://orderden.com/docs/invoices ### Tax Named rates and groups, per-line tax, exempt clients and the tax collected. https://orderden.com/docs/taxes ### Getting paid online Let clients pay by card or US bank account on the share link, through your own Stripe account. https://orderden.com/docs/payments ### Credit notes, refunds, returns and write-offs Correct a sale with a credit note, put goods back in stock, refund a client, or write off a bad debt. https://orderden.com/docs/credit-notes ### Deposits, installments and final invoices Payment terms that ask for a deposit, the deposit invoice raised when a quote is accepted, installments on an order, and the final invoice that takes off what's been paid. https://orderden.com/docs/deposits ### Recurring invoices, cards on file and late fees Invoices on a schedule, a card on file charged on the due date, and late fees. https://orderden.com/docs/recurring ### Signatures on quotes Clients sign quotes by typing or drawing their name, and OrderDen keeps a record of who signed, when, from where and what. https://orderden.com/docs/signatures ### When an email doesn't arrive What a bounced address and a spam complaint mean, what OrderDen does about each, and how to get an address working again. https://orderden.com/docs/bounced-email ### Reminders, follow-ups and status emails Automatic emails that chase unpaid invoices, follow up on quotes and tell clients their order shipped. https://orderden.com/docs/reminders ### Statements of account What a client owes over a period: printed, emailed, scheduled and on their portal. https://orderden.com/docs/statements ### Client portal Give a client an account to see everything of theirs, message you about a document, and send files both ways. https://orderden.com/docs/client-portal ### Documents & sharing Themes, numbering, printing, email, attachments and share links. https://orderden.com/docs/documents-and-sharing ### Spending: purchases and expenses in one list Everything that went out on one screen, and why purchases and expenses stay separate records. https://orderden.com/docs/spending ### Vendors & purchasing Suppliers, purchase orders, receiving deliveries and paying for them. https://orderden.com/docs/purchasing ### Projects: track time, costs and profit on a piece of work Group a job's quote, orders, invoices, materials, hours and expenses, and see whether it made money. https://orderden.com/docs/projects ### Expenses, receipts and profit and loss Photograph a receipt, file it under a category, charge it back to a client, and see your profit and loss. https://orderden.com/docs/expenses ### Shipping labels Buy postage from the order, with USPS, UPS and FedEx priced side by side and the label kept to print. https://orderden.com/docs/shipping ### Inventory: what's on the shelf, and where How many you have and which bin they're in: the movement ledger, allocations, bins, stocktakes, barcodes and valuation. https://orderden.com/docs/inventory ### Making stock: production runs, batches and costs Turn a bill of materials into stock: what a run uses and makes, what a batch cost, batch codes, buildable quantity and made to order. https://orderden.com/docs/production ### Order dates in your calendar Put the workspace's order dates in the Google Calendar you already look at, in a calendar of its own. https://orderden.com/docs/calendar ### Reports Revenue and margin, quotes, fulfillment, tax, payments, credits, what's owed and coming in, stock, production, spending and profit. https://orderden.com/docs/reports ### Tax time: COGS, inventory value and your expense summary What the things you sold cost you, laid out the way a tax return asks for it, with the reconciliation underneath and your expense summary. https://orderden.com/docs/tax-time ### Handing the numbers to your accountant A period's sales, credits, payments, bills, expenses, fees and journal in one zip, mapped to your own chart of accounts. https://orderden.com/docs/accounting ### Activity & history The trail of every change and who made it, for the workspace and each record. https://orderden.com/docs/activity-history ### Search & lists Search, filters, columns, saved views, bulk actions, tags and exports. https://orderden.com/docs/search-and-lists ### Custom fields Your own fields on clients, items, documents and more, kept as values the API can filter and export. https://orderden.com/docs/custom-fields ### Settings Personal Settings, Company Settings and Account & Billing: who sees what, and where everything is. https://orderden.com/docs/settings ### Plans & billing Free and Unlimited: the 50 free invoices, the price per seat, yearly billing, codes, referrals and refunds. https://orderden.com/docs/plans-and-billing ### Account credit Credit we've put on your OrderDen bill, and how it comes off your next invoice. https://orderden.com/docs/account-credit ### Webhooks Get told when something happens: the events, signed deliveries and retries, polling for anything without a public URL, and idempotency keys. https://orderden.com/docs/webhooks ### Zapier, Make and n8n Connect OrderDen to Zapier, Make or n8n with a webhook and an API key, and where each comes from. https://orderden.com/docs/automation ### API reference The public REST API, included in every plan. https://orderden.com/docs/api