For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
    • Introduction
    • URL Structure
    • API Key
    • Errors
    • Versioning
    • Pagination
    • Replication
    • Rate Limits
    • Webhooks
  • System Services
    • Companies
    • Hello World
  • Accounts
  • Ticketing
    • Getting started
    • Catalog
    • Capacity
    • Tickets
    • Reservations
    • Schedule
  • Memberships
    • Catalog
    • Membership
    • Member
    • Card
    • Payment Method
    • Lifecycle
    • Miscellaneous
    • Points
  • Speedgate
  • Attraction Wallet
  • OTA Channel Manager
    • Getting started
    • Orders
      • POSTCreate Order
      • GETGet Order
      • GETList Orders by Partner
      • POSTConfirm Order
      • PUTReplace Order
      • DELDelete Order
  • POS
    • POS Sale
    • POS Entry
    • POS Unit
    • POS Store
    • Salesperson
    • External POS Sale
    • Global POS Entry
  • Restaurant
  • Inventory
    • Barcodes
    • Items
    • Item Ledger Entries
    • Item Categories
    • Item Variants
    • Item Translations
  • Coupon
  • Vouchers
    • Vouchers
  • Sales Documents
    • Ecommerce
  • Finance
    • General Ledger Account
    • General Ledger Entries
    • General Ledger Journal
  • Customers
    • Customers
    • GDPR
  • Retail Print
    • Print Price Labels
  • PDF Designer
LogoLogo
OTA Channel ManagerOrders

Delete Order

DELETE
https://api.npretail.app/:tenant/:environment/:company/channelManager/:orderId
DELETE
/:tenant/:environment/:company/channelManager/:orderId
$curl -X DELETE https://api.npretail.app/01234567-89ab-cdef-0123-456789abcdef/production/CRONUS%2520International%2520Ltd./channelManager/9c6b2f4e-2b71-4d23-9d6a-a3b4c5d6e7f8 \
> -H "x-np-api-key: <NaviPartner API Key>"
200Cancel an issued order
1{
2 "orderId": "9c6b2f4e-2b71-4d23-9d6a-a3b4c5d6e7f8",
3 "status": "Issued",
4 "statusMessage": "",
5 "partnerId": "21e8c1d2-3f4a-4c5b-9e6d-7f8a9b0c1d2e",
6 "sellToOrderReference": "PARTNER-ORDER-2026-00042",
7 "buyFromOrderReference": "CM-20260515093000-A1B2",
8 "receivedAt": "2026-05-15T09:30:00Z",
9 "items": [
10 {
11 "lineNo": 100000,
12 "itemNumber": "31001",
13 "description": "Castle Admission",
14 "isPackage": false,
15 "quantity": 1,
16 "visitDate": "2026-06-01",
17 "visitTime": "10:30:00",
18 "wallets": [
19 {
20 "seqNo": 1,
21 "assets": [
22 {
23 "id": "2c3a84c7-059f-41d3-8033-0d94e08d4b13",
24 "type": "ticket",
25 "assetId": "3d4b95d8-16e0-42e4-9b2a-1d95f08d5c14",
26 "referenceNumber": "ATF-BIL010665L-3",
27 "itemNumber": "31001",
28 "description": "Castle Admission"
29 }
30 ],
31 "walletId": "5a1c2b3d-4e5f-6071-8293-a4b5c6d7e8f9",
32 "walletReferenceNumber": "141234529930210327",
33 "externalReferenceNumber": "JD-2026-001",
34 "name": "Jane Doe",
35 "issuedAt": "2026-05-15T09:30:05Z",
36 "unitPriceExclVat": 80,
37 "unitPriceInclVat": 100,
38 "currencyCode": "DKK",
39 "manifestUrl": "https://manifests.npretail.app/wallets/manifest?mid=9c6b2f4e-2b71-4d23-9d6a-a3b4c5d6e7f8"
40 }
41 ],
42 "sellToName": "Jane Doe",
43 "sellToEmail": "guest@example.com",
44 "sellToLanguage": "ENU"
45 }
46 ],
47 "sellToEmail": "guest@example.com",
48 "sellToName": "Jane Doe",
49 "sellToLanguage": "ENU",
50 "paymentReference": "PAY-987654",
51 "jobId": "TM-IMPORT-000123",
52 "manifestUrl": "https://manifests.npretail.app/wallets/manifest?mid=9c6b2f4e-2b71-4d23-9d6a-a3b4c5d6e7f8"
53}
Cancel an order and tear down its issued wallets, tickets, and coupons. Behavior depends on the current `status`: - `Draft` or `Error` — the order row is removed entirely. - `Issued` or `Cancelled` — wallets are destroyed but the order row is retained with `status = Cancelled` for audit. - `Submitted`, `Scheduled`, or `Processing` — returns `400 Bad Request`. Wait for the order to settle to a terminal status, then retry. The response is the order in its final post-cancellation state.
Was this page helpful?
Previous

OTA Channel Manager Order Processed

Next
Built with

Cancel an order and tear down its issued wallets, tickets, and coupons.

Behavior depends on the current status:

  • Draft or Error — the order row is removed entirely.
  • Issued or Cancelled — wallets are destroyed but the order row is retained with status = Cancelled for audit.
  • Submitted, Scheduled, or Processing — returns 400 Bad Request. Wait for the order to settle to a terminal status, then retry.

The response is the order in its final post-cancellation state.

Authentication

x-np-api-keystring
API Key authentication via header

Path parameters

tenantstringRequired

Your Entra Tenant ID. More details.

environmentstringRequired

Your Business Central Environment. More details.

companystringRequired

Your Business Central Company. More details.

orderIdUUIDRequired
Globally unique identifier of an OTA Channel Manager order, assigned when the order is accepted.

Headers

x-api-versiondateOptional

Used for API versioning. More details.

Response

This endpoint returns an object.
orderIdUUID
Globally unique identifier of an OTA Channel Manager order, assigned when the order is accepted.
statusenum

Lifecycle state of an OTA Channel Manager order. The terminal states are Issued, Draft, Cancelled, and Error. The non-terminal states (Submitted, Scheduled, Processing) belong to the asynchronous issuance pipeline:

  • Submitted — async order is queued for background processing.
  • Scheduled — order has been picked up for processing.
  • Processing — ticket and coupon issuance is running.
  • Draft — assets are issued but no paymentReference was supplied. Call confirmOrder to release the order to Issued.
  • Issued — all assets have been issued, coupons have been posted, and the wallet manifest is available at manifestUrl.
  • Cancelled — order has been cancelled. Wallets are destroyed but the order row is retained for audit.
  • Error — issuance failed. Inspect statusMessage for details. The order can be replaced (replaceOrder) to retry, or deleted (deleteOrder) to remove it.
statusMessagestring

Human-readable detail about the current status, set by the OTA Channel Manager. Populated for Error; empty otherwise.

partnerIdUUID

Globally unique identifier of the OTA Channel Manager partner that originated the order. The partner must exist and be active in the OTA Channel Manager Partner Setup; otherwise the order is rejected.

sellToOrderReferencestring

The partner’s own reference for the order. Unique per partner; combined with partnerId it identifies the order end-to-end. Maximum 50 characters.

buyFromOrderReferencestring

The OTA Channel Manager’s own document number for the order, used as a stable identifier for partner-side reconciliation. Maximum 20 characters.

receivedAtdatetime
UTC timestamp recorded when the OTA Channel Manager accepted the order. ISO 8601.
itemslist of objects
sellToEmailstring

Email address of the customer the order is sold to. Stored on the order and on each issued wallet for the partner’s own use; the OTA Channel Manager does not send anything to this address. Maximum 100 characters. Can be overridden per item.

sellToNamestring
Name of the customer the order is sold to. Maximum 100 characters. Can be overridden per item.
sellToLanguagestring

Language code (uppercased) for the customer the order is sold to. Used to localize the description fields on items and assets via Item Translation. Must be a valid Business Central language code. Maximum 10 characters. Can be overridden per item.

paymentReferencestring

Reference to the partner-side payment transaction. May be supplied at order creation, or later via confirmOrder. Required to move an order from Draft to Issued. Maximum 50 characters.

jobIdstring
Background job identifier assigned by the OTA Channel Manager when ticket issuance has been performed for an order. Empty until issuance has begun.
manifestUrlstring
URL of the printable wallet manifest, populated once asset issuance has completed.