• Integration to Axiata One Off/Subscription services should be done through Checkout.
  • The One Off/Subscription response will be async
  • Axiata does use our Pin API.
  • Axiata subscriptions do not support free/trial periods.
  • Merchants required to provide notification_url for both One Off/Subscription services.
  • The response states if the One Off charge/Subscription created is asynchronous (which means we will send an HTTP notification for One Off/Subscription if it is success/fail).

For details of request and response parameters please consult the API Reference.

Subscription

Subscription will be done through Checkout but the differences described here.
Redirect the customer to https://checkout.sla-alacrity.com/purchase/axiata

Include the following parameters in the query string:

NameDescriptionTypeUsage
merchantThe merchant URI that identifies your merchant and can be obtained via the Alacrity portal.stringmandatory
serviceThe unique URI for your service which can be obtained via the Alacrity portal.stringmandatory
redirect_urlYour URL that we will automatically redirect the customer back to after checkout.stringmandatory
transaction_idA unique ID generated by you that identifies this transaction.stringmandatory

If any of the above parameters are missing you will be returned to your redirect URL as below, except for redirect_url.

Example Request

https://checkout.sla-alacrity.com/purchase/axiata?merchant={merchant_uri}&service={service_uri}&transaction_id={transaction_id}&redirect_url={url}

HTTP/1.1 200 OK
Content-Type: application/json

{
  "success":
  {
    "type": "subscription",
    "uuid": "c537bf6a-8603-466c-9eaa-bf6d3faed28c",
    "bill_id": "6ab07c272683N",
    "operator": "axiata-lk",
    "merchant": "partner:02c76113-0ca7-4aed-88e2-75267bf85e82",
    "campaign": "campaign:940d351138df895e8dedf51e5d7b90788cdc23d0",
    "environment": "test",
    "msisdn": "94770000000",
    "currency": "LKR",
    "amount": "0.5",
    "mode": "API",
    "frequency": "daily",
    "next_payment_timestamp": "2015-08-27T10:58:12.026Z",
    "transaction":
    {
      "status": "CHARGED",
    	"bill_id": "6ab07c272683N",
      "timestamp": "2015-08-26T10:58:12.026+00:00",
      "transaction_id": "1910173"
    }
  }
}
HTTP/1.1 200 OK
Content-Type: application/json

{
  "error":
  {
    "type": "subscription",
    "operator": "axiata-lk",
    "merchant": "partner:02c76113-0ca7-4aed-88e2-75267bf85e82",
    "campaign": "campaign:940d351138df895e8dedf51e5d7b90788cdc23d0",
    "environment": "test",
    "msisdn": "94770000000",
    "currency": "LKR",
    "amount": "0.5",
    "mode": "API",
    "frequency": "daily",
    "transaction":
    {
      "status": "ACCOUNT_NOT_FOUND",
      "message": "Account could not be found",
      "timestamp": "2015-08-26T10:58:12.026+00:00",
      "transaction_id": "1910173"
    }
  }
}
NameDescriptionTypeUsage
typeAn indication of the transaction type. Below is a list of the possible values:
  • charge: Immediate charge transaction.
  • refund: Immediate refund transaction.
  • subscription: Subscription's initial charge transaction.
  • stringmandatory
    uuidThe universally unique identifier for the subscription.stringmandatory
    bill_idThe unique identifier representing all renewal attempts for one bill period.stringmandatory
    operatorThe mobile operator code.stringmandatory
    merchantThe Alacrity merchant URI that identifies which merchant this transaction belongs to.stringmandatory
    campaignThe Alacrity service URI that identifies the service that this transaction belongs to.stringmandatory
    environmentThe environment that your API credential belong to. Below is a list of the possible values:
  • test: sandbox credentials.
  • preproduction: UAT credentials.
  • production: live credentials.
  • stringmandatory
    msisdnThe subscriber MSISDN that the subscription has been created for.stringmandatory
    currencyCurrency code as defined in ISO4217.stringmandatory
    amountThe decimal amount that has been charged.numericmandatory
    modeAn indication of the transaction mode. Below is a list of the possible values:
  • API Synchronous API response
  • RENEWAL Renewal notification
  • PARTIAL Partial renewal notification
  • STEP_DOWN Step Down renewal notification
  • MOSMS Mobile Originated SMS action notification
  • PORTAL Self Service Portal action notification
  • SYSTEM System logic action notification
  • CUSTOMER_CARE_PORTAL Self Customer Care action notification
  • CUSTOMER_CARE_PORTAL_LINK Self Customer Care Direct unsub link action notification
  • CONFIRMSMS Confirmation SMS received notification
  • CC_API Operator Customer Care API unsub action notification
  • OPCO_API Operator Notification API unsub action notification

  • stringmandatory
    frequencyThe frequency of subscription renewal. Below is a list of the possible values:
  • daily
  • weekly
  • fortnightly
  • monthly
  • next_payment_timestampThe timestamp for the next scheduled renewal in UTC time standard.stringoptional
    statusThe transaction status. A list of the possible values found herestringmandatory
    messageThe error description if any.stringoptional
    timestampThe transaction timestamp in UTC time standard.stringmandatory
    transaction_idThe API generated and unique transaction's identifier.integermandatory

    Subscription Status

    You may refer to Subscription Status

    Subscription Delete

    You may refer to Subscription API Usage

    One Off Charge

    Redirect the customer to https://checkout.sla-alacrity.com/purchase/axiata

    Include the following parameters in the query string:

    NameDescriptionTypeUsage
    merchantThe merchant URI that identifies your merchant and can be obtained via the Alacrity portal.stringmandatory
    serviceThe unique URI for your service which can be obtained via the Alacrity portal.stringmandatory
    redirect_urlYour URL that we will automatically redirect the customer back to after checkout.stringmandatory
    transaction_idA unique ID generated by you that identifies this transaction.stringmandatory
    priceThe decimal amount that you want to chargenumericmandatory

    If any of the above parameters are missing you will be returned to your redirect URL as below, except for redirect_url.

    Example Request

    https://checkout.sla-alacrity.com/purchase/axiata?merchant={merchant_uri}&service={service_uri}&transaction_id={transaction_id}&price={price}&redirect_url={url}

    Success

    If the process is successfully finished you will receive the following via http redirect callback:

    http://your-redirect-url?status=success&transaction_id={transaction_id}&uuid={uuid}

    Errors

    Other errors will be returned to your redirect URL and will have the following format:

    http://your-redirect-url/?status=error&transaction_id={transaction_id}&message={reason_for_the_error}

    Possible Error Messages

    HTTP/1.1 200 OK
    Content-Type: application/json
    
    {
      "success":
      {
        "type": "charge",
        "uuid": "c537bf6a-8603-466c-9eaa-bf6d3faed28c",
        "operator": "axiata-lk",
        "merchant": "partner:02c76113-0ca7-4aed-88e2-75267bf85e82",
        "campaign": "campaign:940d351138df895e8dedf51e5d7b90788cdc23d0",
        "environment": "test",
        "msisdn": "94770000000",
        "currency": "LKR",
        "amount": "0.5",
        "transaction":
        {
          "status": "CHARGED",
          "timestamp": "2015-08-26T10:58:12.026+08:00",
          "transaction_id": "1910173"
        }
      }
    }
    
    HTTP/1.1 200 OK
    Content-Type: application/json
    
    {
      "error":
      {
        "type": "charge",
        "operator": "axiata-lk",
        "uuid": "c537bf6a-8603-466c-9eaa-bf6d3faed28c",
        "merchant": "partner:02c76113-0ca7-4aed-88e2-75267bf85e82",
        "campaign": "campaign:940d351138df895e8dedf51e5d7b90788cdc23d0",
        "environment": "test",
        "msisdn": "94770000000",
        "currency": "LKR",
        "amount": "0.5",
        "transaction":
        {
          "status": "ACCOUNT_NOT_FOUND",
          "timestamp": "2015-08-26T10:59:10.000+08:00",
          "transaction_id": "1910174"
        }
      }
    }
    
    NameDescriptionTypeUsage
    typeAn indication of the transaction type. Below is a list of possible values:
  • charge: Immediate charge transaction.
  • refund: Immediate refund transaction.
  • subscription: Subscription's initial charge transaction.
  • stringmandatory
    uuidThe universally unique identifier for the charge.stringoptional
    operatorThe mobile operator code.stringmandatory
    merchantThe Alacrity merchant URI that identifies which merchant this transaction belongs to.stringmandatory
    campaignThe Alacrity service URI that identifies the service that this transaction belongs to.stringmandatory
    environmentThe environment that your API credential belong to. Below is a list of possible values:
  • test: sandbox credentials.
  • preproduction: uat credentials.
  • production: live credentials.
  • stringmandatory
    msisdnThe subscribers MSISDN that has been refunded.stringmandatory
    currencyCurrency code as defined in ISO4217.stringmandatory
    amountThe decimal amount that has been refunded.numericmandatory
    statusThe transaction status. A list of possible values found herestringmandatory
    messageThe error description if any.stringoptional
    timestampThe transaction timestamp in UTC time standard.stringmandatory
    transaction_idThe API generated and unique transactions identifier.integermandatory

    HTTP Notifications

    You may refer to HTTP Notifications