{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/telenor-sverige/json-schema/telenor-sverige-charge-schema.json",
  "title": "Charge",
  "x-generated": "2026-10-28",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/telenor-sverige-content-charger-openapi.yml#/components/schemas/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\ncustomer support. These contact details will be printed on the enduser invoice. When the content provider account\nis created, the content provider must provide a list of merchants who may supply content to the end-user.\nMerchant details are: name (20 characters) and contact details (60 characters).\n"
    },
    "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.\nThe unit is 100 times the VAT percentage. For example 6 percent VAT is presented as 600.\nDefault value is 2500, which will be printed as “(25% moms ingår)” on the end-user invoice next to the InvoiceText field.\n"
    },
    "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\nrequest to the response in order to help the content provider match a response to a request.\n"
    },
    "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\nVAT, merchant name and merchant contact details. The default value is “Förmedlad tjänst”.\n"
    },
    "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."
    }
  }
}