1. 1 : (function(root, factory) {
  2. 2 : if (typeof define === 'function' && define.amd) {
  3. 3 : // AMD. Register as an anonymous module.
  4. 4 : define(['ApiClient'], factory);
  5. 5 : } else if (typeof module === 'object' && module.exports) {
  6. 6 : // CommonJS-like environments that support module.exports, like Node.
  7. 7 : module.exports = factory(require('../ApiClient'));
  8. 8 : } else {
  9. 9 : // Browser globals (root is window)
  10. 10 : if (!root.OrbipayPaymentsapiClient) {
  11. 11 : root.OrbipayPaymentsapiClient = {};
  12. 12 : }
  13. 13 : root.OrbipayPaymentsapiClient.PaymentScheduleVo = factory(root.OrbipayPaymentsapiClient.ApiClient);
  14. 14 : }
  15. 15 : }(this, function(ApiClient) {
  16. 16 : 'use strict';
  17. 17 :
  18. 18 :
  19. 19 :
  20. 20 :
  21. 21 : /**
  22. 22 : * The PaymentScheduleVo model module.
  23. 23 : * @module models/PaymentScheduleVo
  24. 24 : */
  25. 25 :
  26. 26 : /**
  27. 27 : * <h3 style="color:red"> This class subject to change without prior notice, Please dont use this class directly. </h3>
  28. 28 :
  29. 29 : * Constructs a new <code>PaymentScheduleVo</code>.
  30. 30 : * The schedule for the payments that are created as part of a payment setup like recurring payment or autopay.
  31. 31 : * @alias module:models/PaymentScheduleVo
  32. 32 : * @class
  33. 33 : */
  34. 34 : var exports = function() {
  35. 35 : var _this = this;
  36. 36 :
  37. 37 :
  38. 38 :
  39. 39 :
  40. 40 :
  41. 41 :
  42. 42 :
  43. 43 :
  44. 44 :
  45. 45 : };
  46. 46 :
  47. 47 : /**
  48. 48 : * Constructs a <code>PaymentScheduleVo</code> from a plain JavaScript object, optionally creating a new instance.
  49. 49 : * Copies all relevant properties from <code>data</code> to <code>obj</code> if supplied or a new instance if not.
  50. 50 : * @param {Object} data The plain JavaScript object bearing properties of interest.
  51. 51 : * @param {module:models/PaymentScheduleVo} obj Optional instance to populate.
  52. 52 : * @return {module:models/PaymentScheduleVo} The populated <code>PaymentScheduleVo</code> instance.
  53. 53 : */
  54. 54 : exports.constructFromObject = function(data, obj) {
  55. 55 : if (data) {
  56. 56 : obj = obj || new exports();
  57. 57 :
  58. 58 : if (data.hasOwnProperty('payment_recurring_type')) {
  59. 59 : obj['payment_recurring_type'] = ApiClient.convertToType(data['payment_recurring_type'], 'String');
  60. 60 : }
  61. 61 : if (data.hasOwnProperty('payment_recurring_count')) {
  62. 62 : obj['payment_recurring_count'] = ApiClient.convertToType(data['payment_recurring_count'], 'String');
  63. 63 : }
  64. 64 : if (data.hasOwnProperty('payment_amount_type')) {
  65. 65 : obj['payment_amount_type'] = ApiClient.convertToType(data['payment_amount_type'], 'String');
  66. 66 : }
  67. 67 : if (data.hasOwnProperty('payment_start_date')) {
  68. 68 : obj['payment_start_date'] = ApiClient.convertToType(data['payment_start_date'], 'String');
  69. 69 : }
  70. 70 : if (data.hasOwnProperty('payment_end_date')) {
  71. 71 : obj['payment_end_date'] = ApiClient.convertToType(data['payment_end_date'], 'String');
  72. 72 : }
  73. 73 : if (data.hasOwnProperty('payment_limit_amount')) {
  74. 74 : obj['payment_limit_amount'] = ApiClient.convertToType(data['payment_limit_amount'], 'String');
  75. 75 : }
  76. 76 : if (data.hasOwnProperty('payment_plan_id')) {
  77. 77 : obj['payment_plan_id'] = ApiClient.convertToType(data['payment_plan_id'], 'String');
  78. 78 : }
  79. 79 : if (data.hasOwnProperty('payment_defer_days')) {
  80. 80 : obj['payment_defer_days'] = ApiClient.convertToType(data['payment_defer_days'], 'String');
  81. 81 : }
  82. 82 : }
  83. 83 : return obj;
  84. 84 : };
  85. 85 :
  86. 86 : /**
  87. 87 : * The frequency of the payments created as part of a payment setup.
  88. 88 : * @member {module:models/PaymentScheduleVo.PaymentRecurringTypeEnum} payment_recurring_type
  89. 89 : */
  90. 90 : exports.prototype['payment_recurring_type'] = undefined;
  91. 91 : /**
  92. 92 : * The maximum number of payments that can be created as part of a recurring payment setup.
  93. 93 : * @member {String} payment_recurring_count
  94. 94 : */
  95. 95 : exports.prototype['payment_recurring_count'] = undefined;
  96. 96 : /**
  97. 97 : * The amount type that is used to set the amount for payments created as part of a recurring payment or autopay setup.
  98. 98 : * @member {module:models/PaymentScheduleVo.PaymentAmountTypeEnum} payment_amount_type
  99. 99 : */
  100. 100 : exports.prototype['payment_amount_type'] = undefined;
  101. 101 : /**
  102. 102 : * The date on which the first payment will be drafted as part of a recurring payment setup. This is to be specified in the ISO8601 full-date format, namely, YYYY-MM-DD.
  103. 103 : * @member {String} payment_start_date
  104. 104 : */
  105. 105 : exports.prototype['payment_start_date'] = undefined;
  106. 106 : /**
  107. 107 : * The date by which the last payment will be drafted as part of a recurring payment setup. This is to be specified in the ISO8601 full-date format, namely, YYYY-MM-DD.
  108. 108 : * @member {String} payment_end_date
  109. 109 : */
  110. 110 : exports.prototype['payment_end_date'] = undefined;
  111. 111 : /**
  112. 112 : * The upper limit for the payment amount in the case of recurring or autopay payments.
  113. 113 : * @member {String} payment_limit_amount
  114. 114 : */
  115. 115 : exports.prototype['payment_limit_amount'] = undefined;
  116. 116 : /**
  117. 117 : * The reference to the payment plan, offered by the biller, that is used to set up the recurring payment. The list of payment plans offered is published as part of the biller set-up.
  118. 118 : * @member {String} payment_plan_id
  119. 119 : */
  120. 120 : exports.prototype['payment_plan_id'] = undefined;
  121. 121 : /**
  122. 122 : * The number of days from the bill due date that the customer wishes to delay the autopay payment by.
  123. 123 : * @member {String} payment_defer_days
  124. 124 : */
  125. 125 : exports.prototype['payment_defer_days'] = undefined;
  126. 126 :
  127. 127 :
  128. 128 : /**
  129. 129 : * Allowed values for the <code>payment_recurring_type</code> property.
  130. 130 : * @enum {String}
  131. 131 : * @readonly
  132. 132 : */
  133. 133 : exports.PaymentRecurringTypeEnum = {
  134. 134 : /**
  135. 135 : * value: "daily"
  136. 136 : * @const
  137. 137 : */
  138. 138 : "daily": "daily",
  139. 139 : /**
  140. 140 : * value: "weekly"
  141. 141 : * @const
  142. 142 : */
  143. 143 : "weekly": "weekly",
  144. 144 : /**
  145. 145 : * value: "monthly"
  146. 146 : * @const
  147. 147 : */
  148. 148 : "monthly": "monthly",
  149. 149 : /**
  150. 150 : * value: "semi_monthly"
  151. 151 : * @const
  152. 152 : */
  153. 153 : "semi_monthly": "semi_monthly",
  154. 154 : /**
  155. 155 : * value: "bi_weekly"
  156. 156 : * @const
  157. 157 : */
  158. 158 : "bi_weekly": "bi_weekly",
  159. 159 : /**
  160. 160 : * value: "quarterly"
  161. 161 : * @const
  162. 162 : */
  163. 163 : "quarterly": "quarterly",
  164. 164 : /**
  165. 165 : * value: "half_yearly"
  166. 166 : * @const
  167. 167 : */
  168. 168 : "half_yearly": "half_yearly",
  169. 169 : /**
  170. 170 : * value: "annual"
  171. 171 : * @const
  172. 172 : */
  173. 173 : "annual": "annual" };
  174. 174 :
  175. 175 : /**
  176. 176 : * Allowed values for the <code>payment_amount_type</code> property.
  177. 177 : * @enum {String}
  178. 178 : * @readonly
  179. 179 : */
  180. 180 : exports.PaymentAmountTypeEnum = {
  181. 181 : /**
  182. 182 : * value: "current_balance"
  183. 183 : * @const
  184. 184 : */
  185. 185 : "current_balance": "current_balance",
  186. 186 : /**
  187. 187 : * value: "minimum_payment_due"
  188. 188 : * @const
  189. 189 : */
  190. 190 : "minimum_payment_due": "minimum_payment_due",
  191. 191 : /**
  192. 192 : * value: "past_payment_due"
  193. 193 : * @const
  194. 194 : */
  195. 195 : "past_payment_due": "past_payment_due",
  196. 196 : /**
  197. 197 : * value: "statement_balance"
  198. 198 : * @const
  199. 199 : */
  200. 200 : "statement_balance": "statement_balance",
  201. 201 : /**
  202. 202 : * value: "other"
  203. 203 : * @const
  204. 204 : */
  205. 205 : "other": "other" };
  206. 206 :
  207. 207 :
  208. 208 : return exports;
  209. 209 : }));
  210. 210 :
  211. 211 :