Telenor Sverige Content charger API

Perform charge and refund

Operations 2

POST /charge Creates a charge transaction #
POST /refund Creates a refund transaction #

Specifications

Schemas & Data

📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-wi-fi-quote-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-lan-quote-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-site-migration-quote-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-site-quote-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-quote-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-quote-group-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-service-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-access-type-with-access-speed-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-access-type-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-product-type-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-fixed-network-offer-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-service-parameter-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-service-details-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-vpn-ncmc-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-dhcp-relay-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-static-route-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-add-vpn-ncmc-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-termination-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-sid-with-provider-connection-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-account-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-sid-with-attribute-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-case-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-close-case-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-case-log-dto-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-add-contact-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-create-site-request-v2-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-safe-contact-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-update-contact-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-add-contact-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-site-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-cancellation-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-order-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-case-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-order-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-cancellation-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-list-cancellations-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-charge-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-refund-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-refund-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-charge-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-media-type-schema.json

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/telenor-sverige:telenor-sverige-content-charger-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

telenor-sverige-content-charger-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Content charger API
  description: 'The Telenor Content Charger is a real-time charging service offered to content providers who wishes to charge end-users for premium content. The service is independent of the carrier over which the premium content is delivered. The content may be delivered over SMS, MMS, WAP, WEB, voice, video or any other available carrier. The following steps need to be accomplished prior to the launch of the content provider’s commercial service,

    1. Sign the Content Charger agreement with Telenor. 2. Complete the service details template and send it to Telenor. 3. Integration instructions and integration details are sent from Telenor. **The below table defines the statusIndicator codes that these APIs may return**


    | StatusIndicator | Description |

    | ---------------- | ------------------------------------------------------------------------------------------|

    | 0 | Transaction completed successfully. |

    | 100 | Invalid MSISDN |

    | 101 | Invalid content provider ID. |

    | 102 | Content provider not active. |

    | 103 | Invalid password. |

    | 104 | Invalid merchant ID. |

    | 105 | Invalid UCI. |

    | 106 | Unrecognised UCI. |

    | 107 | Invalid reference transaction ID. |

    | 108 | Invalid product group. |

    | 109 | Invalid product. |

    | 110 | Invalid sub product. |

    | 111 | Invalid amount. |

    | 112 | Invalid VAT. |

    | 113 | Invalid currency. |

    | 114 | Invalid invoice text. |

    | 115 | Invalid client transaction ID. |

    | 116 | Invalid revenue share ID. |

    | 117 | Invalid content provider statistical ID |

    | 118 | Invalid reservation time. |

    | 119 | Missing mandatory parameter. |

    | 120 | Transaction already refunded. |

    | 121 | Not allowed to refund transaction. Belongs to another content provider. |

    | 122 | Illegal operation. Content provider administrator can only do refunds. |

    | 123 | Client Transaction ID is ongoing or has already been used. It cannot be reused |

    | | within the next 5 to 10 minutes to avoid double charge of an end-user. |

    | 124 | Invalid transaction fee ID in the RSID field. |

    | 125 | Invalid amount. The charge amount should be less than the configured maximum amount. |

    | 126 | Invalid amount. The charge amount should be more than the configured minimum amount. |

    | 127 | Invalid Service Id |

    | 128 | Bad transactionfee type in PRISA. |

    | 129 | The amount exceeds the refundable amount. |

    | 130 | Invalid SOAP action. |

    | 131 | Invalid article ID. |

    | 132 | Quantity can be between 1 and 99999. |

    | 133 | Not compatible for flexible billing. |

    | 134 | Partial refund using amount is not allowed for the content purchased using article id. |

    | 135 | A refund transaction cannot have both the amount and the quantity. |

    | 136 | Quantity is not allowed in this transaction. |

    | 137 | Amount is not allowed in this transaction. |

    | 200 | The end-user does not exist. |

    | 201 | The end-user is barred. |

    | 202 | The end-user belongs to a mobile virtual network operator which does not allow charge. |

    | 203 | The end-user is not allowed to purchase premium services. |

    | 204 | The end-user has not sufficient funds. |

    | 206 | The end-user is barred from using the specific service. |

    | 207 | The end-user needs to be registered by Telenor Sweden to buy this content. |

    | 208 | The end-user is not allowed to buy this content due to Swedish law. |

    | 209 | The end-user has not completed registration which means purchase is blocked. |

    | 210 | Mandatory customer data missing in operators backend systems. |

    | 211 | The end-user has reached the purchase limit for the current invoice month. |

    | 212 | Customer has reached Vimlas amount limit. |

    | 213 | This content is not allowed for the customers network operator. |

    | 300 | Communication error with internal Telenor systems. |

    | 301 | Communication error with internal Telenor systems. |

    | 302 | Communication error with internal Telenor systems. |

    | 303 | Communication timeout with internal Telenor systems. Please retry again in a few minutes. |

    | 331 | A transaction is already occurring for this customer. Please retry the transaction.'
  version: 4.0 K
servers:
- url: https://charging.telenor.se/content
tags:
- name: Content charger
  description: Perform charge and refund
paths:
  /charge:
    post:
      tags:
      - Content charger
      summary: Creates a charge transaction
      operationId: addCharge
      requestBody:
        description: Charge transaction that needs to be added to SIV
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Charge'
        required: true
      responses:
        '200':
          description: OK Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChargeResponse'
  /refund:
    post:
      tags:
      - Content charger
      summary: Creates a refund transaction
      operationId: addRefund
      requestBody:
        description: Refund transaction that needs to be added to SIV
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Refund'
        required: true
      responses:
        '200':
          description: OK Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RefundResponse'
components:
  schemas:
    Refund:
      required:
      - clientTransactionId
      - contentProviderId
      - password
      - referenceTransactionId
      type: object
      properties:
        contentProviderId:
          type: string
          maxLength: 10
          description: The content provider’s ID received from Telenor when the Content Charger agreement has been signed.
        password:
          type: string
          minLength: 16
          maxLength: 20
          description: Password provided by Telenor.
        clientTransactionId:
          type: string
          maxLength: 50
          description: 'For the content provider’s own convenience and for transaction safety. Transferred from the request to the response to help the

            content provider match a response to a request.

            '
        referenceTransactionId:
          type: string
          minLength: 6
          maxLength: 15
          description: 'Identifies the transaction request to be refunded. This is the ID sent by Telenor in the TransactionID field of the charge response.

            '
        amount:
          type: string
          description: '1. The amount including VAT in the selected currency. The unit is 100 times the currency.

            For example, the end-user price 3 SEK is sent as the amount 300. <br>

            2. A "Full Refund" is triggered when the quantity and amount fields are left empty in the request.

            3. In case of partial refunds, use this amount field only if there was no quantity sent in the corresponding charge transaction.

            4. Multiple partial refunds are supported until the total remaining amount reaches zero.

            5. If a partial refund has already been processed, a "Full Refund" request (empty fields) will return an error.

            6. If a partial refund is already performed and the rest of the balance needs to be refunded, then the API expects the specific remaining amount or quantity instead of leaving the field empty.

            '
        quantity:
          type: integer
          description: '1. It should be a number between 1 and 99999. It supports a precision of upto 2 decimal places.

            2. Multiple partial refunds are supported until the total remaining quantity reaches zero.

            '
    ChargeResponse:
      type: object
      properties:
        transactionId:
          type: string
          minLength: 6
          maxLength: 15
          description: 'This is the ID used by Telenor to identify the charge request. Every reference to a single transaction

            from the content provider must use this ID as reference.

            '
        statusIndicator:
          type: string
          description: 'Indicator of transaction status. Zero (0) indicates success.

            A complete list of status indicators can be found at the top of this page.

            '
        statusDescription:
          type: string
          maxLength: 60
          description: A text describing the error (if any).
        clientTransactionId:
          type: string
          description: 'For the content provider’s own convenience and for transaction safety. Transferred from the

            request to the response to help the content provider match a response to a request.

            '
    RefundResponse:
      type: object
      properties:
        transactionId:
          type: string
          minLength: 6
          maxLength: 15
          description: This is the ID used by Telenor to identify the refund transaction request.
        statusIndicator:
          type: string
          description: 'Indicator of transaction status. Zero (0) indicates success.

            A complete list of status indicators can be found at the top of this page.

            '
        statusDescription:
          type: string
          maxLength: 60
          description: A text describing the error (if any).
        clientTransactionId:
          type: string
          description: 'For the content provider’s own convenience and for transaction safety. Transferred from the

            request to the response to help the content provider match a response to a request.

            '
        referenceTransactionId:
          type: string
          description: 'Identifies the transaction request to be refunded. Copied from the ReferenceTransactionID field of

            the refund request.'
    Charge:
      required:
      - clientTransactionId
      - contentProviderId
      - currency
      - merchantId
      - msisdn
      - password
      - product
      type: object
      properties:
        contentProviderId:
          type: string
          maxLength: 10
          description: The content provider’s ID received from Telenor when the Content Charger agreement has been signed.
        password:
          type: string
          minLength: 16
          maxLength: 20
          description: Password provided by Telenor.
        merchantId:
          type: string
          maxLength: 10
          description: 'The MerchantID points out the name and contact details to the content provider’s/merchant’s

            customer support. These contact details will be printed on the enduser invoice. When the content provider account

            is created, the content provider must provide a list of merchants who may supply content to the end-user.

            Merchant details are: name (20 characters) and contact details (60 characters).

            '
        msisdn:
          type: string
          minLength: 11
          maxLength: 15
          description: Identifies an end-user. Use international format, e.g. 46708222222.
        product:
          type: string
          minLength: 2
          maxLength: 20
          description: For the content provider’s own convenience. Used for grouping transaction types on the settlement from Telenor.
        amount:
          type: string
          description: "1. The amount including VAT in the selected currency. The unit is 100 times the currency.\n   For example, the end-user price 3 SEK is sent as the amount 300. Amount or ServiceID is mandatory.  <br>\n2. If quantity field is set, then the amount field must hold the cost per item.\n   For example: If the cost per item is 100 kr and the quantity is 5 items, then the total cost = 500 kr.\n   In this case, we want the input parameters as amount = 10000 and quantity = 5.\n"
        vat:
          type: string
          description: 'The VAT-rate for the purchase. The field will be transferred to the end-user’s invoice only as information.

            The unit is 100 times the VAT percentage. For example 6 percent VAT is presented as 600.

            Default value is 2500, which will be printed as “(25% moms ingår)” on the end-user invoice next to the InvoiceText field.

            '
        currency:
          type: string
          maxLength: 3
          description: 3 character ISO-4217 code for currency. “SEK” is the only value allowed.
        rsid:
          type: string
          maxLength: 10
          description: RSID is used for special business agreements. It will be supplied by Telenor if needed.
        clientTransactionId:
          type: string
          maxLength: 50
          description: 'For the content provider’s own convenience and for transaction safety. Transferred from the

            request to the response in order to help the content provider match a response to a request.

            '
        invoiceText:
          type: string
          minLength: 2
          maxLength: 40
          description: 'Description of the purchased item. The field will be transferred to the end-user invoice along with the

            VAT, merchant name and merchant contact details. The default value is “Förmedlad tjänst”.

            '
        quantity:
          type: integer
          description: It should be a number between 1 and 99999. It supports a precision of upto 2 decimal places.
        articleId:
          type: string
          description: Used with Flexible Billing.
x-provenance:
  method: harvested
  publisher: Telenor Sverige
  source: https://developer.telenor.se/content-charger/openapi
  note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
    stamped by stamp-openapi-provenance.py (roadmap#793)