Ooredoo Kuwait

There are a few differences between Ooredoo Kuwait and other Operators.

  • The PIN length is 4 digits.

Subscription Integration

Ooredoo Kuwait subscriptions generally follow the standard integration process as other Operators except for a couple of minor differences outlined below.

Typical Flow

The typical flow for Ooredoo Kuwait is as follows:

  1. User visits a landing page and selects to subscribe to the service
  2. Depending on the flow, the merchant redirects to SLA Digital Checkout or makes PIN API call
  3. Merchant calls subscription Create API with Token returned from Checkout or with PIN
  4. Merchant grants or denies access to content based on the response from Create API call
  5. Welcome SMS should be sent using the SMS API

HTTP Notifications

Notifications follow the same format as other HTTP Notifications:

{
  "success": {
    "type": "subscription",
    "uuid": "175529b9-XXXX-4025-b748-XXXXXXXX",
    "bill_id": "XXXX123XXX",
    "operator": "ooredoo-kw",
    "merchant": "partner:ccd9970c66f04e449aXXXXXXXXXXXXX",
    "campaign": "campaign:57617c7477ff3c282XXXXXXXXXXXXX",
    "environment": "production",
    "msisdn": "965XXXXXXXX",
    "currency": "KWD",
    "amount": "1.0",
    "mode": "API",
    "frequency": "daily",
    "next_payment_timestamp": "2020-11-13T09:45:10.572Z",
    "transaction": {
      "status": "CHARGED",
      "bill_id" : "xx80e2xxxxxx",
      "timestamp" : "2021-01-11 04:15:13 UTC",
      "transaction_id" : "x33xxxxxx"
    }
  }

MO SMS

Each service has a unique shortcode and keyword. This will be assigned when configured with Ooredoo Kuwait.

One Off Charge

Services can follow the same flow as outlined for Checkout.

If utilising PIN APIs, there is one small difference that is outlined below to the standard PIN API which is that the amount must be included in the API call as shown below. You can then proceed to follow the usual One Off Charge API

PIN API

PIN API with Ooredoo Kuwait has one minor difference from the standard API call in that an amount parameter must be included.

HTTP Request

POST /v2.2/pin?msisdn={msisdn}&campaign={campaign}&merchant={merchant}template={template}&language={language}&amount={amount}

Request Parameters

NameDescriptionTypeUsage
msisdnThe subscriber's MSISDN that you want to send the PIN to.stringmandatory
campaignThe Alacrity service URI that identifies the service that this transaction belongs to.stringmandatory
merchantThe Alacrity merchant URI that identifies which merchant this transaction belongs to.stringmandatory
templateThe template to be used which will determine the content of the SMS message. Below is a list of the valid options:
  • charge (default)
  • subscription
  • stringoptional
    languageThe language code as defined in ISO639-1. The chosen language will be used in the SMS message. Below is a list of current supported languages.
  • en for English,
  • ar for Arabic
  • stringoptional
    amountThe decimal amount that you want to charge.numericmandatory
    POST /v2.2/pin?
    msisdn=965987654321&
    campaign=campaign:56yhws-87e376-yuio43-45yhh7&
    merchant=partner:00ow34-al6g67-12o6hh-00ff66&
    template=subscription&
    language=en&
    amount=0.5 HTTP/1.1
    Host: api.sla-alacrity.com
    Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
    Accept: application/json
    
    HTTP/1.1 200 OK
    Content-Type: application/json
    
    {
      "success": true
    }
    
    HTTP/1.1 200 OK
    Content-Type: application/json
    
    {
      "error":
      {
        "category": "PIN API",
        "code": "3001",
        "message": "PIN sending failed"
      }
    }