Qliro In Store API

The InStore API from Qliro — 2 operation(s) for instore.

Operations 2

POST /InStore/orders Initiates new order #
GET /InStore/orders/{id} Gets existing order details #

Specifications

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/qliro:qliro-instore-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

qliro-instore-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Qliro.Payments.MerchantApi In Store API
  version: v1
servers:
- url: https://pago.qit.nu/checkout/merchantapi
tags:
- name: InStore
paths:
  /InStore/orders:
    post:
      tags:
      - InStore
      summary: Initiates new order
      description: When merchant is ready to initiate InStore order this request should be used
      operationId: createInStoreOrder
      requestBody:
        x-name: createInStoreOrderRequest
        description: Order to be created
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateInStoreOrderRequest'
        required: true
        x-position: 1
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CreateOrderResponse'
        '400':
          description: See ErrorCode and DetailedErrorMessage for more details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseModel'
        '500':
          description: System error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseModel'
  /InStore/orders/{id}:
    get:
      tags:
      - InStore
      summary: Gets existing order details
      description: Once an order is created, customer will receive an SMS containing PaymentLink to proceed with order
      operationId: getInStoreOrder
      parameters:
      - name: id
        in: path
        required: true
        description: QliroOne Order Id
        schema:
          type: integer
          format: int64
        x-position: 1
      responses:
        '200':
          description: Response contains order information along with PaymentLink for customer to proceed with order.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetInStoreOrderResponse'
        '400':
          description: 'Possible reasons: arguments cannot be null, invalid input, invalid order id'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseModel'
        '404':
          description: Order not found
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
        '500':
          description: System error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponseModel'
components:
  schemas:
    MetadataContainer:
      type: object
      additionalProperties: false
      properties:
        HasRisk:
          type:
          - boolean
          - 'null'
          description: If true, order item considered as risk item. Default is false.
          example: true
        Subscription:
          description: It indicates that order item is a subscription if Enabled is true.
          oneOf:
          - $ref: '#/components/schemas/Subscription'
        TravelInformation:
          oneOf:
          - $ref: '#/components/schemas/TravelInformation'
        Ingrid:
          oneOf:
          - $ref: '#/components/schemas/Ingrid'
        MerchantData:
          type:
          - string
          - 'null'
          maxLength: 250
    CreateOrderResponse:
      type: object
      additionalProperties: false
      properties:
        OrderId:
          type: integer
          format: int64
          example: 12345
        PaymentLink:
          type:
          - string
          - 'null'
    Gender:
      type: integer
      description: ''
      x-enumNames:
      - Unknown
      - Female
      - Male
      enum:
      - 0
      - 1
      - 2
    JuridicalType:
      type: integer
      description: ''
      x-enumNames:
      - Physical
      - Company
      enum:
      - 0
      - 1
    Address:
      type: object
      additionalProperties: false
      properties:
        FirstName:
          type:
          - string
          - 'null'
          description: The first name of a physical customer's address.
          maxLength: 100
          minLength: 0
          example: John
        LastName:
          type:
          - string
          - 'null'
          description: The Last name of a physical customer's address.
          maxLength: 100
          minLength: 0
          example: Doe
        CompanyName:
          type:
          - string
          - 'null'
          description: Address holders company name, only applicable for Company Customers
          maxLength: 100
          minLength: 0
          example: Qliro AB
        Street:
          type:
          - string
          - 'null'
          description: The street name and number of the address.
          maxLength: 100
          minLength: 0
          example: Sveavägen 151
        Street2:
          type:
          - string
          - 'null'
          description: 'The secondary address line for apartment, suite, department, unit, building, floor etc. Used for company customers and for physical customers in the following countries:

            Australia, Bosnia and Herzegovina, Canada, Croatia, Cyprus, Czech Rebublic, Estonia, France, Greece, Hungary, Iceland, Ireland, Italy, Lithuania,

            Luxembourg, Macedonia, Malta, Montenegro, Poland, Portugal, Romania, Serbia, Slovakia, Slovenia, Spain, UK, US, Åland.'
          maxLength: 40
          minLength: 0
          example: lgh 1001
        PostalCode:
          type:
          - string
          - 'null'
          description: The postal code of the address.
          maxLength: 15
          minLength: 0
          example: 12345
        City:
          type:
          - string
          - 'null'
          description: The city of the address.
          maxLength: 100
          minLength: 0
          example: Stockholm
        CareOf:
          type:
          - string
          - 'null'
          description: Used if the addressee doesn't have a standard address.
          maxLength: 100
          minLength: 0
          example: Jane Doe
        Area:
          type:
          - string
          - 'null'
          description: 'The State/Province/Region of the address. Used in the following countries:

            Australia, Bosnia and Herzegovina, Canada, Cyprus, Ireland, Italy, Lithuania,Luxembourg, Macedonia, Malta, Montenegro, Romania, US, Åland.'
          maxLength: 100
          minLength: 0
          example: New York
        AreaCode:
          type:
          - string
          - 'null'
          description: Geographical area code in ISO3166-2 format.
          maxLength: 10
          minLength: 0
          example: US-NY
    Metadata:
      type: object
      additionalProperties: false
      properties:
        ShippingMethodMerchantReference:
          type:
          - string
          - 'null'
          example: UniqueMerchantReference
        ShippingMethodSecondaryOptionMerchantReference:
          type:
          - string
          - 'null'
          example: UniqueMerchantReference
        ShippingMethodAccessCode:
          type:
          - string
          - 'null'
          example: ACCESS_CODE
        AdditionalShippingProperties:
          oneOf:
          - $ref: '#/components/schemas/AdditionalShippingPropertiesData'
        MerchantData:
          type:
          - string
          - 'null'
    MerchantProvidedMetadataTag:
      type: object
      additionalProperties: false
      properties:
        Key:
          type:
          - string
          - 'null'
          description: Merchant provided metadata element key. Max string length is 50.
          maxLength: 50
          minLength: 0
          example: PromoCode
        Value:
          type:
          - string
          - 'null'
          description: Merchant provided metadata element value. Max string length is 250.
          maxLength: 250
          minLength: 0
          example: ABC123
    Traveler:
      type: object
      additionalProperties: false
      properties:
        FirstName:
          type:
          - string
          - 'null'
        LastName:
          type:
          - string
          - 'null'
        IsMainTraveller:
          type: boolean
        Gender:
          $ref: '#/components/schemas/Gender'
        DateOfBirth:
          type: string
          format: date-time
    CustomerInformation:
      type: object
      additionalProperties: false
      required:
      - MobileNumber
      properties:
        PersonalNumber:
          type:
          - string
          - 'null'
          description: A national identification number to identify the customer.
          maxLength: 50
          minLength: 0
          example: 111111-1111
        Email:
          type:
          - string
          - 'null'
          description: The customer's email address
          maxLength: 255
          minLength: 0
          example: email@domain.com
        MobileNumber:
          type: string
          description: The customer's mobile number
          maxLength: 50
          minLength: 0
          example: '+46101010101'
        Address:
          description: The customer's address. If provided and complete, the address will be presented as an alternative to the address fetched by Qliro Checkout. For B2B customer treat this address as billing address
          oneOf:
          - $ref: '#/components/schemas/Address'
        LockCustomerAddress:
          type:
          - boolean
          - 'null'
          description: If true, provided valid Address become order ShippingAddress. If no valid address is provided, this flag will be ignored.
          example: false
    CustomerVerifiedEmailData:
      type: object
      additionalProperties: false
      properties:
        UpdateVerifiedEmailLink:
          type:
          - string
          - 'null'
          example: https://www.qliro.com/sv-se
        VerifiedEmail:
          type:
          - string
          - 'null'
          example: verified@email.com
        VerifiedEmailDiffers:
          type: boolean
          example: true
    GetOrderResponseBase:
      type: object
      additionalProperties: false
      properties:
        OrderId:
          type: integer
          description: Qliro Checkout order id.
          format: int64
          example: 12345
        MerchantReference:
          type:
          - string
          - 'null'
          description: A string generated by the merchant to identify the order uniquely in their system. Maximum length is 25 characters.
          example: MerchantUniqueReference
        TotalPrice:
          type: number
          format: decimal
          example: 1576.65
        Currency:
          type:
          - string
          - 'null'
          example: SEK
        Country:
          type:
          - string
          - 'null'
          example: SE
        Language:
          type:
          - string
          - 'null'
          example: sv-se
        CustomerCheckoutStatus:
          type:
          - string
          - 'null'
          example: Success
        CustomerVerifiedEmail:
          oneOf:
          - $ref: '#/components/schemas/CustomerVerifiedEmailData'
        Customer:
          oneOf:
          - $ref: '#/components/schemas/Customer'
        BillingAddress:
          oneOf:
          - $ref: '#/components/schemas/Address2'
        ShippingAddress:
          oneOf:
          - $ref: '#/components/schemas/Address2'
        OrderItems:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/OrderItem2'
        PaymentMethod:
          oneOf:
          - $ref: '#/components/schemas/PaymentMethod'
        SignupForNewsletter:
          type:
          - boolean
          - 'null'
          example: true
        AskForNewsletterSignupChecked:
          type:
          - boolean
          - 'null'
          example: true
        IdentityVerification:
          oneOf:
          - $ref: '#/components/schemas/IdentityVerification'
        MerchantProvidedMetadata:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/MerchantProvidedMetadataTag'
    Address2:
      type: object
      additionalProperties: false
      properties:
        FirstName:
          type:
          - string
          - 'null'
          example: First
        LastName:
          type:
          - string
          - 'null'
          example: Last
        CompanyName:
          type:
          - string
          - 'null'
          example: null
        CareOf:
          type:
          - string
          - 'null'
        Street:
          type:
          - string
          - 'null'
          example: Street
        Street2:
          type:
          - string
          - 'null'
          example: Street2
        PostalCode:
          type:
          - string
          - 'null'
          example: 12345
        City:
          type:
          - string
          - 'null'
          example: City
        CountryCode:
          type:
          - string
          - 'null'
          example: SE
        Area:
          type:
          - string
          - 'null'
          example: Area
        AreaCode:
          type:
          - string
          - 'null'
          description: Currently only used for US. Will contain the ISO-3166-2 code for the current state (Area)
          example: US-CA
    OrderItem:
      type: object
      additionalProperties: false
      required:
      - MerchantReference
      - Quantity
      - PricePerItemIncVat
      properties:
        MerchantReference:
          type: string
          description: A string generated by the merchant to identify the order item. The combination of MerchantReference and Price Per Item Including Vat is used to uniquely identify the order item. Maximum length is 200 characters.
          minLength: 1
          pattern: ^[\p{L}\s(.)'\-_&,\/–+0-9:]{1,200}$
          example: RedHat
        Description:
          type:
          - string
          - 'null'
          description: A name or description of the order item.
          maxLength: 4000
          example: Red hat original product
        Type:
          type:
          - string
          - 'null'
          description: Can be 'Product', 'Discount', 'Fee' or 'Shipping'
          example: Product
        Quantity:
          type: integer
          description: The number of these items in the cart.
          format: int32
          maximum: 2147483647
          minimum: 1
          example: 3
        PricePerItemIncVat:
          type: number
          description: The price per item including Value Added Tax. This can be specified with 0, 1 or 2 decimals, e.g. 99, 99.9 or 99.99.
          format: decimal
          example: 375.55
        PricePerItemExVat:
          type: number
          description: The price per item excluding Value Added Tax. This can be specified with 0, 1 or 2 decimals, e.g. 99, 99.9 or 99.99.
          format: decimal
          example: 300.35
        Metadata:
          description: Only available in create order and update order requests. Can be used to indicate if an item includes some kind of risk. If an item has been flagged with the property HasRisk, then depending on the merchant setup in Qliro Checkout, some payment methods will be disabled. This behavior is customizable in the merchant preferences. It can also be used to indicate that an order item is a subscription. If it is indicated as a subscription Qliro Checkout will show some additional terms for Qliro invoice if Qliro invoice is enabled for the merchant.
          oneOf:
          - $ref: '#/components/schemas/MetadataContainer'
    Ingrid:
      type: object
      additionalProperties: false
      properties:
        Weight:
          type:
          - integer
          - 'null'
          format: int32
        Sku:
          type:
          - string
          - 'null'
        ShippingDate:
          oneOf:
          - $ref: '#/components/schemas/ShippingDateRange'
        Attributes:
          type:
          - array
          - 'null'
          items:
            type: string
        Dimensions:
          oneOf:
          - $ref: '#/components/schemas/ItemDimensions'
        OutOfStock:
          type:
          - boolean
          - 'null'
        Discount:
          type:
          - number
          - 'null'
          format: decimal
    IdentityVerification:
      type: object
      additionalProperties: false
      properties:
        RequireIdentityVerification:
          type:
          - boolean
          - 'null'
          example: false
        IdentityVerified:
          type:
          - boolean
          - 'null'
          example: false
    ErrorResponseModel:
      type: object
      additionalProperties: false
      properties:
        ErrorCode:
          type:
          - string
          - 'null'
          description: Unique error code
          example: ORDER_NOT_FOUND
        DetailedErrorMessage:
          type:
          - string
          - 'null'
          description: Detailed error message
          example: Order not found
        ErrorReference:
          type: string
          description: A tracking ID from Qliro Checkout
          format: guid
          example: d7da92f4-1ad9-48c3-9cd3-26559c98e64c
    Customer:
      type: object
      additionalProperties: false
      properties:
        FirstName:
          type:
          - string
          - 'null'
          example: FirstName
        LastName:
          type:
          - string
          - 'null'
          example: LastName
        PersonalNumber:
          type:
          - string
          - 'null'
          example: 111111-1111
        VatNumber:
          type:
          - string
          - 'null'
          example: SE111111111101
        Email:
          type:
          - string
          - 'null'
          example: email@domain.com
        MobileNumber:
          type:
          - string
          - 'null'
          example: '+46101010101'
        JuridicalType:
          example: Physical
          oneOf:
          - $ref: '#/components/schemas/JuridicalType'
        DateOfBirth:
          type:
          - string
          - 'null'
          format: date-time
          example: '1990-01-01'
        Gender:
          example: Male
          oneOf:
          - $ref: '#/components/schemas/Gender'
    ItemDimensions:
      type: object
      additionalProperties: false
      properties:
        Height:
          type:
          - integer
          - 'null'
          format: int32
        Length:
          type:
          - integer
          - 'null'
          format: int32
        Width:
          type:
          - integer
          - 'null'
          format: int32
    TravelInformation:
      type: object
      additionalProperties: false
      properties:
        DepartureCountry:
          type:
          - string
          - 'null'
        DepartureCity:
          type:
          - string
          - 'null'
        DepartureIATACode:
          type:
          - string
          - 'null'
        ArrivalCountry:
          type:
          - string
          - 'null'
        ArrivalCity:
          type:
          - string
          - 'null'
        ArrivalIATACode:
          type:
          - string
          - 'null'
        StopOverCountry:
          type:
          - string
          - 'null'
        StopOverCity:
          type:
          - string
          - 'null'
        StopOverIATACode:
          type:
          - string
          - 'null'
        TravelType:
          type:
          - string
          - 'null'
        BookingDate:
          type: string
          format: date-time
        DepartureDate:
          type: string
          format: date-time
        ReturnDate:
          type: string
          format: date-time
        DaysToDeparture:
          type: integer
          format: int32
        NoOfPassengers:
          type: integer
          format: int32
        Travelers:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Traveler'
        Class:
          type:
          - string
          - 'null'
        Airline:
          type:
          - string
          - 'null'
        NoOfLuggage:
          type: integer
          format: int32
    OrderItem2:
      type: object
      additionalProperties: false
      properties:
        MerchantReference:
          type:
          - string
          - 'null'
          example: MerchantUniqueReference
        Description:
          type:
          - string
          - 'null'
          example: Original product
        Quantity:
          type: integer
          format: int32
          example: 5
        PricePerItemIncVat:
          type: number
          format: decimal
          example: 10
        PricePerItemExVat:
          type: number
          format: decimal
          example: 8
        Type:
          example: Product
          oneOf:
          - $ref: '#/components/schemas/OrderItemType'
        Metadata:
          oneOf:
          - $ref: '#/components/schemas/Metadata'
        PaymentTransactionId:
          type: integer
          format: int64
          example: 123456
    ShippingDateRange:
      type: object
      additionalProperties: false
      properties:
        Start:
          type:
          - string
          - 'null'
          format: date-time
        End:
          type:
          - string
          - 'null'
          format: date-time
    AgentData:
      type: object
      additionalProperties: false
      properties:
        Id:
          type:
          - string
          - 'null'
        Name:
          type:
          - string
          - 'null'
        MapLongitude:
          type:
          - number
          - 'null'
          format: double
        MapLatitude:
          type:
          - number
          - 'null'
          format: double
        Address1:
          type:
          - string
          - 'null'
        Address2:
          type:
          - string
          - 'null'
        ZipCode:
          type:
          - string
          - 'null'
        City:
          type:
          - string
          - 'null'
    CreateInStoreOrderRequest:
      allOf:
      - $ref: '#/components/schemas/RequestBase'
      - type: object
        additionalProperties: false
        required:
        - MerchantReference
        - Currency
        - Country
        - Language
        - MerchantTermsUrl
        - MerchantOrderManagementStatusPushUrl
        - MerchantCheckoutStatusPushUrl
        - OrderItems
        - CustomerInformation
        properties:
          MerchantReference:
            type: string
            description: A string generated by the merchant to identify the order uniquely in their system. Maximum length is 25 characters.
            minLength: 1
            pattern: ^[A-Za-z0-9_-]{1,25}$
            example: MerchantUniqueReference
          Currency:
            type: string
            description: Three uppercase characters, in accordance with ISO 4217.
            minLength: 1
            example: SEK
          Country:
            type: string
            description: Two upper case characters. In accordance with ISO 3166-1.
            minLength: 1
            example: SE
          Language:
            type: string
            description: Locale indicative for language & other location-specific details.
            minLength: 1
            example: sv-se
          MerchantTermsUrl:
            type: string
            description: A URL where the customer can find the merchant's terms and conditions.
            format: uri
            minLength: 1
            example: https://merchant.com/terms/
          MerchantIntegrityPolicyUrl:
            type:
            - string
            - 'null'
            description: A URL where the customer can find the merchant's integrity policy.
            format: uri
            example: https://merchant.com/policy/
          MerchantOrderValidationUrl:
            type:
            - string
            - 'null'
            description: If specified, Qliro will use this URL to try to validate the order before completing the purchase. Info about authentication for this request can be found below. Should use https.
            example: https://merchant.com/orderValidation/
          MerchantOrderManagementStatusPushUrl:
            type: string
            description: Qliro will use this URL to send notifications on payment status changes during the order management process, for example when the payment created by MarkItemsAsShipped call becomes successful. Info about authentication for this request can be found below. Should use https.
            minLength: 1
            example: https://ordermanagement.merchant.com/ordermanagementstatus
          MerchantCheckoutStatusPushUrl:
            type: string
            description: Qliro will use this URL to send customer checkout status updates. For example when the checkout status switches from OnHold to Completed. Info about authentication for this request can be found below. Should use https.
            minLength: 1
            example: https://ordermanagement.merchant.com/checkoutstatus
          OrderItems:
            type: array
            description: 'List of items customer added to the cart. '
            items:
              $ref: '#/components/schemas/OrderItem'
          CustomerInformation:
            description: 'Customer information used to try to identify the customer without user interaction. '
            oneOf:
            - $ref: '#/components/schemas/CustomerInformation'
          MinimumCustomerAge:
            type:
            - integer
            - 'null'
            description: If specified, the customer will have to be at least this old to complete a purchase with Qliro Checkout. This will prevent the customer from authenticating as a company.
            format: int32
            maximum: 2147483647
            minimum: 0
            example: 18
    OrderItemType:
      type: integer
      description: ''
      x-enumNames:
      - Product
      - Discount
      - Fee
      - Shipping
      enum:
      - 0
      - 1
      - 2
      - 3
    PaymentMethod:
      type: object
      additionalProperties: false
      properties:
        PaymentMethodName:
          type:
          - string
          - 'null'
          example: PaymentMethodName
        PaymentTypeCode:
          type:
          - string
          - 'null'
          example: PaymentTypeCode
    RequestBase:
      type: object
      x-abstract: true
      additionalProperties: false
      required:
      - MerchantApiKey
      properties:
        MerchantApiKey:
          type: string
          description: Will be provided by Qliro Checkout when setting up merchant account
          maxLength: 50
          minLength: 0
          example: MerchantApiKey
    Subscription:
      type: object
      additionalProperties: false
      properties:
        Enabled:
          type: boolean
    PaymentLinkData:
      type: object
      additionalProperties: false
      properties:
        Link:
          type:
          - string
          - 'null'
          example: https://secure.qit.nu/instore/?encryptedId=abc
    AdditionalShippingPropertiesData:
      type: object
      additionalProperties: false
      properties:
        ShippingProvider:
          type:
          - string
          - 'null'
        ServiceId:
          type:
          - string
          - 'null'
        Agent:
          oneOf:
          - $ref: '#/components/schemas/AgentData'
    GetInStoreOrderResponse:
      allOf:
      - $ref: '#/components/schemas/GetOrderResponseBase'
      - type: object
        additionalProperties: false
        properties:
          PaymentLink:
            oneOf:
            - $ref: '#/components/schemas/PaymentLinkData'
x-generator: NSwag v14.0.3.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))