Difference between revisions of "MOR API subscription create"

From Kolmisoft Wiki
Jump to navigationJump to search
 
(5 intermediate revisions by 2 users not shown)
Line 18: Line 18:


* [[MOR API hash construction | hash]] - SHA1 hash constructed using '''API_Secret_Key''' ([[MOR API hash construction | More described in Constructing hash]]). '''Required'''.
* [[MOR API hash construction | hash]] - SHA1 hash constructed using '''API_Secret_Key''' ([[MOR API hash construction | More described in Constructing hash]]). '''Required'''.
* u - username for authentication. '''Required'''.
* u - username for authentication (admin, reseller, accountant). '''Required'''.
* subscription_start_period_day - Start Period on the day, possible values between 1 and 31, default 1.
* subscription_start_period_month - Start Period on the month, possible values between 1 and 12, default 1.
* subscription_charge_balance_on - Charge Balance on, possible values are 1,2,3 (where 1: Period Start, 2: Period End, 3: Every Day), default 1 (daily and one-time fee subscriptions inserted in the database as 3).
* subscription_activation_start - Unix timestamp of Subscription activation start.  
* subscription_activation_start - Unix timestamp of Subscription activation start.  
* subscription_activation_end - Unix timestamp of Subscription activation end.  
* subscription_activation_end - Unix timestamp of Subscription activation end.  
* subscription_memo - memo of Subscription.  
* subscription_memo - memo of Subscription.  
* subscription_until_canceled - subscription is until cancel (0 - off, 1 - on, default - off).  
* subscription_until_canceled - subscription is until canceled (0 - off, 1 - on, default - off).  
* subscription_no_expiration_at_the_end_of_a_month - subscription has no expiration at the end of month. (0 - off, 1 - on, default - off). '''Only for Flat Rate''' and '''Dynamic Flat-Rate'''.  
* subscription_no_expiration_at_the_end_of_a_month - subscription has no expiration at the end of the month. (0 - off, 1 - on, default - off). '''Only for Flat Rate''' and '''Dynamic Flat-Rate'''.  
* ignore_balance - for Prepaid user subscription will be applied even if Prepaid User does not have sufficient balance (0 - off, 1 - on, default - off).
* ignore_balance - for Prepaid user subscription will be applied even if Prepaid User does not have sufficient balance (0 - off, 1 - on, default - off).
* subscription_discount_percent - Subscription Discount Percent. Possible values are from 0 to 100.
* subscription_charge_for_past - Charge for past, possible values are 0, 1 (where 0: no, 1: yes), default 0


<br><br>
<br><br>
'''NOTE'''. When Flat-Rate Service is subscribed Subscription will be created for full month.
'''NOTE'''. When Flat-Rate Service is subscribed Subscription will be created for a full month.
<br><br>
<br><br>


Line 36: Line 41:
We send:
We send:


  HTML POST: http://<SERVER_IP>/billing/api/subscription_create?u=username&service_id=10&user_id=2&subscription_memo=acc_one&hash=e0f93111f867ca5d424c0f0ebb6b678159086d00
  HTML POST: http://<SERVER_IP>/billing/api/subscription_create?u=admin&service_id=10&user_id=2&subscription_memo=acc_one&hash=e0f93111f867ca5d424c0f0ebb6b678159086d00


'''* Note that username are not included in hash'''
'''* Note that username are not included in hash'''
Line 48: Line 53:
     <status>
     <status>
       <success>Subscription was successfully created</success>
       <success>Subscription was successfully created</success>
      <id>231</id>
     </status>
     </status>
   </page>
   </page>
Line 60: Line 66:
* <error>Service was not found</error> - Service with specified service_id was not found.
* <error>Service was not found</error> - Service with specified service_id was not found.
<br><br>
<br><br>
=See also=
=See also=



Latest revision as of 08:29, 15 March 2023

Deescription

MOR API Create subscription

Usage

  • Call: /api/subscription_create
  • Methods: POST, GET(if allowed, not recomended)



Parameters

Parameters which are included into hash:

  • user_id - User ID . Required.
  • service_id - Service ID. Required.

Parameters which are not included into hash:

  • hash - SHA1 hash constructed using API_Secret_Key ( More described in Constructing hash). Required.
  • u - username for authentication (admin, reseller, accountant). Required.
  • subscription_start_period_day - Start Period on the day, possible values between 1 and 31, default 1.
  • subscription_start_period_month - Start Period on the month, possible values between 1 and 12, default 1.
  • subscription_charge_balance_on - Charge Balance on, possible values are 1,2,3 (where 1: Period Start, 2: Period End, 3: Every Day), default 1 (daily and one-time fee subscriptions inserted in the database as 3).
  • subscription_activation_start - Unix timestamp of Subscription activation start.
  • subscription_activation_end - Unix timestamp of Subscription activation end.
  • subscription_memo - memo of Subscription.
  • subscription_until_canceled - subscription is until canceled (0 - off, 1 - on, default - off).
  • subscription_no_expiration_at_the_end_of_a_month - subscription has no expiration at the end of the month. (0 - off, 1 - on, default - off). Only for Flat Rate and Dynamic Flat-Rate.
  • ignore_balance - for Prepaid user subscription will be applied even if Prepaid User does not have sufficient balance (0 - off, 1 - on, default - off).
  • subscription_discount_percent - Subscription Discount Percent. Possible values are from 0 to 100.
  • subscription_charge_for_past - Charge for past, possible values are 0, 1 (where 0: no, 1: yes), default 0



NOTE. When Flat-Rate Service is subscribed Subscription will be created for a full month.

Request

We have service_id = 10, user_id = 2, subscription_memo = acc_one, API Secret Key = 456789.

We send:

HTML POST: http://<SERVER_IP>/billing/api/subscription_create?u=admin&service_id=10&user_id=2&subscription_memo=acc_one&hash=e0f93111f867ca5d424c0f0ebb6b678159086d00

* Note that username are not included in hash

Returns

Success

 <?xml version="1.0" encoding="UTF-8"?>
 <page>
   <status>
     <success>Subscription was successfully created</success>
     <id>231</id>
   </status>
 </page>




Errors

  • <error>Access Denied</error> - user does not exist or cannot use this functionality.
  • <error>You are not authorised to use this functionality</error> - accountant does not have Manage Subscription permission.
  • <error>Incorrect hash</error> - Hash was not correct. Check API_Secret_Key and order or params while concatenating hash_string.
  • <error>User has insufficient balance</error> - Subscription price is bigger than Subscription User balance.
  • <error>Service was not found</error> - Service with specified service_id was not found.



See also