Norce Checkout - Qliro Checkout Adapter API
Version: 1.0.0
Build 2025-11-05 12:16:31
The Qliro Checkout Adapter API is used to create and manage a Qliro Checkout Order.
Related Documentation
For conceptual documentation and usage guides, see:
- Qliro Provider - Qliro integration overview and configuration
- Payment Adapters - Overview of NCO payment adapters
- NCO Introduction - Getting started with Norce Checkout
Base URLs
https://checkout-qliro-adapter.test.norce.tech- Test server
Authentication
Bearer
- Type: apiKey
- Description: Authorization header using the bearer scheme. Example: 'Bearer a3bcdABCaB12abc3AbCDAB5AbcABCaBcABC5ab3c5A0='
Endpoints
POST /api/checkout/v1/orders/{order_id}/payments
Create a new Qliro Checkout order
Requires an existing Norce order.
Parameters
- x-merchant (header) required
- Merchant identifier.
- Type:
string - Example:
norce
- x-channel (header) required
- Channel identifier
- Type:
string - Example:
1
- order_id (path) required
- Order identifier
- Type:
string
Responses
200
OK
Content-Type: application/json
Schema: QliroCheckoutOrder
400
Bad Request
Content-Type: application/json
Schema: Error
404
Not Found
Content-Type: application/json
409
Conflict
Content-Type: application/json
Schema: Error
POST /api/checkout/v1/orders/{order_id}/payments/recurring
Create a new Qliro Checkout order using a recurring token from a previous Qliro purchase.
Requires an existing Norce order and Qliro recurring token
Parameters
- x-merchant (header) required
- Merchant identifier.
- Type:
string - Example:
norce
- x-channel (header) required
- Channel identifier
- Type:
string - Example:
1
- order_id (path) required
- Order identifier
- Type:
string
Request Body
Recurring token that should be used for completing the order
Content-Type: application/json
Responses
200
OK
Content-Type: application/json
Schema: QliroCheckoutRecurringOrder
400
Bad Request
Content-Type: application/json
Schema: Error
404
Not Found
Content-Type: application/json
409
Conflict
Content-Type: application/json
Schema: Error
GET /api/checkout/v1/orders/{order_id}/payments/{payment_id}
Get an existing Qliro Checkout order
Used to get the html snippet, for example after the Qliro Checkout Order has been confirmed.
Parameters
- x-merchant (header) required
- Merchant identifier.
- Type:
string - Example:
norce
- x-channel (header) required
- Channel identifier
- Type:
string - Example:
1
- order_id (path) required
- Order identifier
- Type:
string
- payment_id (path) required
- Payment identifier
- Type:
string
Responses
200
OK
Content-Type: application/json
Schema: QliroCheckoutOrder
404
Not Found
Content-Type: application/json
POST /api/checkout/v1/orders/{order_id}/payments/{payment_id}/remove
Remove a Qliro Checkout order
Requires an existing Norce order. Will do soft delete on any payments or shippings by setting state to removed. Will delete any hooks added when creating a Qliro Checkout order.
Parameters
- x-merchant (header) required
- Merchant identifier.
- Type:
string - Example:
norce
- x-channel (header) required
- Channel identifier
- Type:
string - Example:
1
- order_id (path) required
- Order identifier
- Type:
string
- payment_id (path) required
- Payment identifier
- Type:
string
Responses
200
OK
400
Bad Request
Content-Type: application/json
Schema: Error
401
Unauthorized
Content-Type: application/json
Schema: Error
404
Not Found
Content-Type: application/json
POST /api/checkout/v1/callback/orders/{order_id}/payments/{payment_id}/validate
Validate
Parameters
- order_id (path) required
- Order identifier
- Type:
string
- payment_id (path) required
- Payment identifier
- Type:
string
- merchant (query) required
- Merchant identifier
- Type:
string
- channel (query) required
- Merchant channel
- Type:
string
Request Body
Qliro order
Content-Type: application/json
Responses
200
OK
400
Bad Request
Content-Type: application/json
Schema: QliroCheckoutValidationErrorResponse
401
Unauthorized
Content-Type: application/json
Schema: Error
404
Not Found
Content-Type: application/json
Schema: Error
POST /api/checkout/v1/callback/orders/{order_id}/payments/{payment_id}/push
Push
Called whenever a Qliro order’s CheckoutOrderStatus is changed
Parameters
- order_id (path) required
- Order identifier
- Type:
string
- payment_id (path) required
- Payment identifier
- Type:
string
- merchant (query) required
- Merchant identifier
- Type:
string
- channel (query) required
- Merchant channel
- Type:
string
Responses
200
OK
Content-Type: application/json
Schema: QliroCheckoutPushResponse
POST /api/checkout/v1/callback/orders/{order_id}/payments/{payment_id}/notification
** Qliro will use this URL to send notifications for general status updates. For example if you are using integrated shipping providers (e.g. nShift or Ingrid) this url will be called when we complete or if we get an error from the shipping provider api:s.**
Called whenever a Qliro order’s is complete or if we get an error from the shipping provider api:s.
Parameters
- order_id (path) required
- Order identifier
- Type:
string
- payment_id (path) required
- Payment identifier
- Type:
string
- merchant (query) required
- Merchant identifier
- Type:
string
- channel (query) required
- Merchant channel
- Type:
string
Request Body
The Notification data
Content-Type: application/json
Responses
200
OK
Content-Type: application/json
Schema: QliroCheckoutPushResponse
POST /api/checkout/v1/callback/orders/{order_id}/payments/{payment_id}/save-recurring-details
Saves the customer's payment details for a recurring order.
Called when a user agrees to save their payment details for recurring payments.
Parameters
- order_id (path) required
- The unique identifier of the order.
- Type:
string
- payment_id (path) required
- The unique identifier of the payment.
- Type:
string
- merchant (query) required
- The unique identifier of the merchant.
- Type:
string
- channel (query) required
- The merchant's sales channel.
- Type:
string
Request Body
The payment details to be saved.
Content-Type: application/json
Responses
200
OK
Content-Type: application/json
Schema: QliroCheckoutPushResponse
POST /api/checkout/v1/callback/orders/{order_id}/payments/{payment_id}/customer-update
Refresh customer information on Norce order from qliro order
Updates customer information on Norce order with latest customer information from Qliro Checkout
Parameters
- order_id (path) required
- Order identifier
- Type:
string
- payment_id (path) required
- Payment identifier
- Type:
string
- merchant (query) required
- Merchant identifier
- Type:
string
- channel (query) required
- Merchant channel
- Type:
string
Responses
200
OK
POST /api/checkout/v1/callback/orders/{order_id}/payments/{payment_id}/shipping-option-update
Shipping option update. The Norce order will be updated with the latest selected delivery information from qliro
Shipping option updated notifications. Will update the Norce order with latest shipping selection from qliro
Parameters
- order_id (path) required
- Order identifier
- Type:
string
- payment_id (path) required
- Payment identifier
- Type:
string
- merchant (query) required
- Merchant identifier
- Type:
string
- channel (query) required
- Merchant channel
- Type:
string
Request Body
Shipping option update object
Content-Type: application/json
Responses
200
OK
POST /api/checkout/v1/callback/orders/{order_id}/payments/{payment_id}/cart-changed
Handle Cart changed
Cart changed.
Parameters
- x-merchant (header) required
- Merchant identifier.
- Type:
string - Example:
norce
- x-channel (header) required
- Channel identifier
- Type:
string - Example:
1
- order_id (path) required
- Order identifier
- Type:
string
- payment_id (path) required
- Payment identifier
- Type:
string
Request Body
Updated order
Content-Type: application/json
Responses
200
OK
Content-Type: application/json
Schema: Array of PatchOperation
404
Not Found
Content-Type: application/json
POST /api/checkout/v1/callback/orders/{order_id}/payments/{payment_id}/state-changed
Handle State changed
State changed.
Parameters
- x-merchant (header) required
- Merchant identifier.
- Type:
string - Example:
norce
- x-channel (header) required
- Channel identifier
- Type:
string - Example:
1
- order_id (path) required
- Order identifier
- Type:
string
- payment_id (path) required
- Payment identifier
- Type:
string
Request Body
Updated order
Content-Type: application/json
Responses
200
OK
Content-Type: application/json
Schema: Array of PatchOperation
400
Bad Request
Content-Type: application/json
404
Not Found
Content-Type: application/json
POST /api/checkout/v1/callback/orders/{order_id}/payments/{payment_id}/update-payment
Handle order changes
Responds with patch for updated payment given an updated order.
Parameters
- x-merchant (header) required
- Merchant identifier.
- Type:
string - Example:
norce
- x-channel (header) required
- Channel identifier
- Type:
string - Example:
1
- order_id (path) required
- Order identifier
- Type:
string
- payment_id (path) required
- Payment identifier
- Type:
string
Request Body
Updated order
Content-Type: application/json
Responses
200
OK
Content-Type: application/json
Schema: Array of PatchOperation
404
Not Found
Content-Type: application/json
POST /api/order/v1/orders/{order_id}/payments/{payment_id}/refresh
Refresh the list of available PaymentActions for an order
Refreshes the list of available payment actions on payment, to reflect the current payment state
Parameters
- x-merchant (header) required
- Merchant identifier.
- Type:
string - Example:
norce
- x-channel (header) required
- Channel identifier
- Type:
string - Example:
1
- order_id (path) required
- Type:
string
- Type:
- payment_id (path) required
- Type:
string
- Type:
Responses
200
OK
400
Bad Request
Content-Type: application/json
404
Not Found
Content-Type: application/json
POST /api/order/v1/orders/{order_id}/payments/{payment_id}/cancel
Cancel Qliro Order
Used to cancel a Qliro order
Parameters
- x-merchant (header) required
- Merchant identifier.
- Type:
string - Example:
norce
- x-channel (header) required
- Channel identifier
- Type:
string - Example:
1
- order_id (path) required
- Type:
string
- Type:
- payment_id (path) required
- Type:
string
- Type:
Responses
200
OK
Content-Type: application/json
Schema: QliroCheckoutOrder
POST /api/order/v1/orders/{order_id}/payments/{payment_id}/capture
Capture Qliro order
Used to capture a Qliro order
Parameters
- x-merchant (header) required
- Merchant identifier.
- Type:
string - Example:
norce
- x-channel (header) required
- Channel identifier
- Type:
string - Example:
1
- order_id (path) required
- Order identifier
- Type:
string
- payment_id (path) required
- Payment identifier
- Type:
string
Responses
200
OK
Content-Type: application/json
Schema: QliroCheckoutOrder
POST /api/order/v1/orders/{order_id}/payments/{payment_id}/refund
Refund Qliro order
Used to refund a Qliro order
Parameters
- x-merchant (header) required
- Merchant identifier.
- Type:
string - Example:
norce
- x-channel (header) required
- Channel identifier
- Type:
string - Example:
1
- order_id (path) required
- Order identifier
- Type:
string
- payment_id (path) required
- Payment identifier
- Type:
string
Responses
200
OK
Content-Type: application/json
Schema: QliroCheckoutOrder
Schemas
Addon
Properties
- reference (
string) - price (
number)
Address
Properties
- type
- givenName (
string) - familyName (
string) - careOf (
string) - reference (
string) - organizationName (
string) - streetAddress (
string) - streetAddress2 (
string) - postalCode (
string) - city (
string) - region (
string) - country (
string) - phone (
string) - email (
string) - nationalIdentificationNumber (
string) - organizationIdentificationNumber (
string) - attributes (
object)
Cart
Properties
- reference (
string) - items (
array) - Array ofItem - discounts (
array) - Array ofDiscount - total
- attributes (
object)
Consent
Properties
- id (
string) - checked (
boolean) - text (
string) - required (
boolean)
Customer
Properties
- billing
- shipping
- type
- attributes (
object)
CustomerCheckoutStatus
CustomerType
DeliveryDetails
Properties
- carrier (
string) - class (
string) - product
- pickupLocation
Discount
Properties
- type
- name (
string) - code (
string) - value
- attributes (
object)
DiscountType
Error
Properties
- code (
string)- Error code
- Example:
"cart-not-found"
- message (
string)- Detailed error information
- Example:
"Cart with id:{id} now found."
- qliroError
- Error if originating from Qliro
GetOrderResponse
Properties
- OrderId (
integer) - MerchantReference (
string) - TotalPrice (
number) - Currency (
string) - Country (
string) - Language (
string) - CustomerCheckoutStatus
- Customer
- BillingAddress
- ShippingAddress
- OrderItems (
array) - Array ofOrderItem - PaymentMethod
- SelectedShippingMethod (
string) - SelectedShippingSecondaryOption (
string) - SignupForNewsletter (
boolean) - AskForNewsletterSignupChecked (
boolean) - IdentityVerification
- MerchantProvidedMetadata (
array) - Array ofMerchantProvidedMetadata - OrderHtmlSnippet (
string) - MerchantSavedCreditCard
Hook
Properties
- id (
string) - adapterId (
string) - subscribeTo (
string) - target (
string) - invoke (
string)
IdentityVerification
Properties
- RequireIdentityVerification (
boolean) - IdentityVerified (
boolean)
Item
Properties
- id (
string) - reference (
string) - name (
string) - sku (
string) - url (
string) - imageUrl (
string) - quantity (
integer) - unit (
string) - price
- total
- originalTotal
- vatRate (
number) - discounts (
array) - Array ofDiscount - logistics
- attributes (
object)
Logistics
Properties
- weight (
integer) - height (
integer) - width (
integer) - length (
integer) - tags (
array) - shippingDate (
string)
MerchantProvidedMetadata
Properties
- Key (
string) - Value (
string)
MerchantSavedCreditCard
Properties
- id (
string) - brandName (
string) - expiryYear (
integer) - expiryMonth (
integer) - bin (
string) - last4Digits (
string) - maskedNumber (
string)
NorceOrder
Properties
- id (
string) - merchant (
string) - channel (
string) - reference (
string) - created (
string) - lastModified (
string) - state
- culture (
string) - currency (
string) - country (
string) - cart
- shippings (
array) - Array ofShipping - payments (
array) - Array ofPayment - customer
- consents (
array) - Array ofConsent - hooks (
array) - Array ofHook - total
- attributes (
object)
OrderItem
Properties
- MerchantReference (
string) - Description (
string) - Type
- Quantity (
integer) - PricePerItemIncVat (
number) - PricePerItemExVat (
number) - PaymentTransactionId (
integer)
OrderItemType
OrderStatus
PatchOperation
Properties
- op (
string) - path (
string) - value
Payment
Properties
- id (
string) - adapterId (
string) - name (
string) - merchant (
string) - channel (
string) - currency (
string) - type
- orderId (
string) - amount (
number) - upperLimitAmount (
number) - state
- reference (
string) - attributes (
object) - actions (
array) - Array ofPaymentAction - recurring
PaymentAction
Properties
- id (
string) - adapterId (
string) - type (
string) - url (
string)
PaymentMethod
Properties
- PaymentMethodName (
string) - PaymentTypeCode (
string)
PaymentState
PaymentType
PickupLocation
Properties
- reference (
string) - name (
string) - address
PickupLocationAddress
Properties
- streetAddress (
string) - city (
string) - postalCode (
string) - country (
string)
Price
Properties
- includingVat (
number) - excludingVat (
number)
ProblemDetails
Properties
- type (
string) - title (
string) - status (
integer) - detail (
string) - instance (
string)
Product
Properties
- reference (
string) - name (
string)
QliroAddress
Properties
- FirstName (
string) - LastName (
string) - CompanyName (
string) - CareOf (
string) - Street (
string) - Street2 (
string) - PostalCode (
string) - City (
string) - CountryCode (
string) - Area (
string) - AreaCode (
string)
QliroCheckoutNotificationRequest
Properties
- OrderId (
integer) - MerchantReference (
string) - IsSuccess (
boolean) - ErrorMessage (
string) - Timestamp (
string) - EventType (
string) - Provider (
string) - Payload
QliroCheckoutOrder
Properties
- paymentId (
string)- Norce Payment Id
- htmlSnippet (
string)- Qliro checkout order html snippet.
- Example:
""
QliroCheckoutPushResponse
Properties
- callbackResponse (
string)
QliroCheckoutRecurringOrder
Properties
- paymentId (
string)- Norce Payment Id
QliroCheckoutShippingMethodChanged
Properties
- method (
string) - methodName (
string) - secondaryOption (
string) - pickupLocation
- price (
number)- Represents the price of the shipping method selected
- priceExVat (
number) - totalShippingPrice (
number)- Price of the shipping method selected plus any additionalServices that might cost extra
- totalShippingPriceExVat (
number) - additionalShippingServices (
array) - shippingServicesNames (
array)
QliroCheckoutShippingMethodChangedPickupLocation
Properties
- name (
string) - description (
array)
QliroCheckoutValidationErrorResponse
Properties
- declineReasonMessage (
string)
QliroCustomer
Properties
- FirstName (
string) - LastName (
string) - PersonalNumber (
string) - VatNumber (
string) - Email (
string) - MobileNumber (
string) - JuridicalType
- DateOfBirth (
string) - Gender (
integer)
QliroCustomerType
QliroError
Properties
- errorCode (
string) - errorMessage (
string) - errorReference (
string)
Recurring
Properties
- token (
string) - description (
string) - attributes (
object)
RecurringTokenModel
Properties
- token (
string)
Shipping
Properties
- id (
string) - merchant (
string) - channel (
string) - state
- reference (
string) - tmsReference (
string) - orderId (
string) - adapterId (
string) - name (
string) - total
- vatRate (
number) - deliveryDetails
- addons (
array) - Array ofAddon - attributes (
object)
ShippingState
State
Properties
- currentStatus
- transitions (
array) - Array ofTransition
Transition
Properties
- status
- timeStamp (
string)