mundi_api 0.9.1 → 0.13.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (144) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1755 -698
  3. data/lib/mundi_api.rb +75 -35
  4. data/lib/mundi_api/api_helper.rb +59 -7
  5. data/lib/mundi_api/controllers/charges_controller.rb +136 -97
  6. data/lib/mundi_api/controllers/customers_controller.rb +264 -253
  7. data/lib/mundi_api/controllers/invoices_controller.rb +97 -23
  8. data/lib/mundi_api/controllers/orders_controller.rb +247 -30
  9. data/lib/mundi_api/controllers/plans_controller.rb +108 -106
  10. data/lib/mundi_api/controllers/recipients_controller.rb +571 -0
  11. data/lib/mundi_api/controllers/sellers_controller.rb +244 -0
  12. data/lib/mundi_api/controllers/subscriptions_controller.rb +298 -108
  13. data/lib/mundi_api/models/create_access_token_request.rb +7 -9
  14. data/lib/mundi_api/models/create_address_request.rb +30 -14
  15. data/lib/mundi_api/models/create_anticipation_request.rb +53 -0
  16. data/lib/mundi_api/models/create_bank_account_request.rb +114 -0
  17. data/lib/mundi_api/models/create_bank_transfer_payment_request.rb +3 -5
  18. data/lib/mundi_api/models/create_boleto_payment_request.rb +18 -11
  19. data/lib/mundi_api/models/create_cancel_charge_request.rb +2 -4
  20. data/lib/mundi_api/models/create_cancel_subscription_request.rb +2 -4
  21. data/lib/mundi_api/models/create_capture_charge_request.rb +3 -5
  22. data/lib/mundi_api/models/create_card_options_request.rb +2 -4
  23. data/lib/mundi_api/models/create_card_request.rb +24 -17
  24. data/lib/mundi_api/models/create_card_token_request.rb +7 -9
  25. data/lib/mundi_api/models/create_charge_request.rb +8 -10
  26. data/lib/mundi_api/models/create_checkout_boleto_payment_request.rb +4 -6
  27. data/lib/mundi_api/models/create_checkout_card_installment_option_request.rb +3 -5
  28. data/lib/mundi_api/models/create_checkout_card_payment_request.rb +3 -5
  29. data/lib/mundi_api/models/create_checkout_payment_request.rb +55 -11
  30. data/lib/mundi_api/models/create_credit_card_payment_request.rb +28 -12
  31. data/lib/mundi_api/models/create_customer_request.rb +10 -12
  32. data/lib/mundi_api/models/create_device_request.rb +33 -0
  33. data/lib/mundi_api/models/create_discount_request.rb +5 -7
  34. data/lib/mundi_api/models/create_location_request.rb +42 -0
  35. data/lib/mundi_api/models/create_order_item_request.rb +15 -8
  36. data/lib/mundi_api/models/create_order_request.rb +57 -13
  37. data/lib/mundi_api/models/create_payment_request.rb +46 -13
  38. data/lib/mundi_api/models/create_phone_request.rb +4 -6
  39. data/lib/mundi_api/models/create_phones_request.rb +3 -5
  40. data/lib/mundi_api/models/create_plan_item_request.rb +7 -9
  41. data/lib/mundi_api/models/create_plan_request.rb +19 -21
  42. data/lib/mundi_api/models/create_price_bracket_request.rb +5 -7
  43. data/lib/mundi_api/models/create_pricing_scheme_request.rb +5 -7
  44. data/lib/mundi_api/models/create_recipient_request.rb +88 -0
  45. data/lib/mundi_api/models/create_seller_request.rb +21 -23
  46. data/lib/mundi_api/models/create_setup_request.rb +4 -6
  47. data/lib/mundi_api/models/create_shipping_request.rb +7 -9
  48. data/lib/mundi_api/models/create_split_request.rb +51 -0
  49. data/lib/mundi_api/models/create_subscription_item_request.rb +18 -11
  50. data/lib/mundi_api/models/create_subscription_request.rb +46 -30
  51. data/lib/mundi_api/models/create_token_request.rb +3 -5
  52. data/lib/mundi_api/models/create_transfer_request.rb +42 -0
  53. data/lib/mundi_api/models/create_usage_request.rb +4 -6
  54. data/lib/mundi_api/models/create_voucher_payment_request.rb +6 -8
  55. data/lib/mundi_api/models/get_access_token_response.rb +6 -8
  56. data/lib/mundi_api/models/get_address_response.rb +35 -19
  57. data/lib/mundi_api/models/get_anticipation_limit_response.rb +42 -0
  58. data/lib/mundi_api/models/get_anticipation_limits_response.rb +42 -0
  59. data/lib/mundi_api/models/get_anticipation_response.rb +117 -0
  60. data/lib/mundi_api/models/get_balance_response.rb +52 -0
  61. data/lib/mundi_api/models/get_bank_account_response.rb +161 -0
  62. data/lib/mundi_api/models/get_bank_transfer_transaction_response.rb +22 -9
  63. data/lib/mundi_api/models/get_billing_address_response.rb +29 -13
  64. data/lib/mundi_api/models/get_boleto_transaction_response.rb +96 -11
  65. data/lib/mundi_api/models/get_card_response.rb +16 -18
  66. data/lib/mundi_api/models/get_card_token_response.rb +8 -10
  67. data/lib/mundi_api/models/get_charge_response.rb +18 -20
  68. data/lib/mundi_api/models/get_checkout_boleto_payment_response.rb +43 -0
  69. data/lib/mundi_api/models/get_checkout_card_installment_options_response.rb +42 -0
  70. data/lib/mundi_api/models/get_checkout_card_payment_response.rb +49 -0
  71. data/lib/mundi_api/models/get_checkout_payment_response.rb +238 -0
  72. data/lib/mundi_api/models/get_checkout_payment_settings_response.rb +9 -11
  73. data/lib/mundi_api/models/get_credit_card_transaction_response.rb +36 -14
  74. data/lib/mundi_api/models/get_customer_response.rb +24 -17
  75. data/lib/mundi_api/models/get_device_response.rb +33 -0
  76. data/lib/mundi_api/models/get_discount_response.rb +9 -11
  77. data/lib/mundi_api/models/get_gateway_recipient_response.rb +69 -0
  78. data/lib/mundi_api/models/get_invoice_item_response.rb +27 -11
  79. data/lib/mundi_api/models/get_invoice_response.rb +29 -22
  80. data/lib/mundi_api/models/get_location_response.rb +42 -0
  81. data/lib/mundi_api/models/get_order_item_response.rb +28 -12
  82. data/lib/mundi_api/models/get_order_response.rb +64 -20
  83. data/lib/mundi_api/models/get_period_response.rb +6 -8
  84. data/lib/mundi_api/models/get_phone_response.rb +4 -6
  85. data/lib/mundi_api/models/get_phones_response.rb +3 -5
  86. data/lib/mundi_api/models/get_plan_item_response.rb +12 -14
  87. data/lib/mundi_api/models/get_plan_response.rb +22 -24
  88. data/lib/mundi_api/models/get_price_bracket_response.rb +5 -7
  89. data/lib/mundi_api/models/get_pricing_scheme_response.rb +5 -7
  90. data/lib/mundi_api/models/get_recipient_response.rb +150 -0
  91. data/lib/mundi_api/models/get_safety_pay_transaction_response.rb +21 -8
  92. data/lib/mundi_api/models/get_seller_response.rb +13 -15
  93. data/lib/mundi_api/models/get_sellers_request.rb +87 -0
  94. data/lib/mundi_api/models/get_setup_response.rb +5 -7
  95. data/lib/mundi_api/models/get_shipping_response.rb +6 -8
  96. data/lib/mundi_api/models/get_split_response.rb +52 -0
  97. data/lib/mundi_api/models/get_subscription_item_response.rb +24 -17
  98. data/lib/mundi_api/models/get_subscription_response.rb +44 -37
  99. data/lib/mundi_api/models/get_token_response.rb +6 -8
  100. data/lib/mundi_api/models/get_transaction_response.rb +37 -14
  101. data/lib/mundi_api/models/get_transfer_response.rb +89 -0
  102. data/lib/mundi_api/models/get_usage_response.rb +27 -11
  103. data/lib/mundi_api/models/get_voucher_transaction_response.rb +27 -14
  104. data/lib/mundi_api/models/list_access_tokens_response.rb +3 -5
  105. data/lib/mundi_api/models/list_addresses_response.rb +3 -5
  106. data/lib/mundi_api/models/list_anticipation_response.rb +49 -0
  107. data/lib/mundi_api/models/list_cards_response.rb +3 -5
  108. data/lib/mundi_api/models/list_charges_response.rb +3 -5
  109. data/lib/mundi_api/models/list_customers_response.rb +3 -5
  110. data/lib/mundi_api/models/list_invoices_response.rb +3 -5
  111. data/lib/mundi_api/models/list_order_response.rb +3 -5
  112. data/lib/mundi_api/models/list_plans_response.rb +3 -5
  113. data/lib/mundi_api/models/list_recipient_response.rb +49 -0
  114. data/lib/mundi_api/models/list_seller_response.rb +49 -0
  115. data/lib/mundi_api/models/list_subscription_items_response.rb +3 -5
  116. data/lib/mundi_api/models/list_subscriptions_response.rb +3 -5
  117. data/lib/mundi_api/models/list_transactions_response.rb +3 -5
  118. data/lib/mundi_api/models/list_transfer_response.rb +49 -0
  119. data/lib/mundi_api/models/list_usages_response.rb +3 -5
  120. data/lib/mundi_api/models/paging_response.rb +4 -6
  121. data/lib/mundi_api/models/update_address_request.rb +15 -8
  122. data/lib/mundi_api/models/update_card_request.rb +7 -9
  123. data/lib/mundi_api/models/update_charge_card_request.rb +5 -7
  124. data/lib/mundi_api/models/update_charge_due_date_request.rb +2 -4
  125. data/lib/mundi_api/models/update_charge_payment_method_request.rb +6 -8
  126. data/lib/mundi_api/models/update_customer_request.rb +23 -16
  127. data/lib/mundi_api/models/update_invoice_status_request.rb +33 -0
  128. data/lib/mundi_api/models/update_metadata_request.rb +2 -4
  129. data/lib/mundi_api/models/update_order_item_request.rb +60 -0
  130. data/lib/mundi_api/models/update_order_status_request.rb +33 -0
  131. data/lib/mundi_api/models/update_plan_item_request.rb +7 -9
  132. data/lib/mundi_api/models/update_plan_request.rb +16 -18
  133. data/lib/mundi_api/models/update_price_bracket_request.rb +5 -7
  134. data/lib/mundi_api/models/update_pricing_scheme_request.rb +5 -7
  135. data/lib/mundi_api/models/update_recipient_bank_account_request.rb +34 -0
  136. data/lib/mundi_api/models/update_recipient_request.rb +78 -0
  137. data/lib/mundi_api/models/update_seller_request.rb +97 -0
  138. data/lib/mundi_api/models/update_subscription_affiliation_id_request.rb +33 -0
  139. data/lib/mundi_api/models/update_subscription_billing_date_request.rb +2 -4
  140. data/lib/mundi_api/models/update_subscription_card_request.rb +3 -5
  141. data/lib/mundi_api/models/update_subscription_item_request.rb +16 -9
  142. data/lib/mundi_api/models/update_subscription_payment_method_request.rb +4 -6
  143. data/lib/mundi_api/mundi_api_client.rb +32 -20
  144. metadata +39 -3
data/lib/mundi_api.rb CHANGED
@@ -21,42 +21,45 @@ require_relative 'mundi_api/http/auth/basic_auth.rb'
21
21
 
22
22
  # Models
23
23
  require_relative 'mundi_api/models/base_model.rb'
24
+ require_relative 'mundi_api/models/get_checkout_boleto_payment_response.rb'
25
+ require_relative 'mundi_api/models/get_checkout_card_payment_response.rb'
26
+ require_relative 'mundi_api/models' \
27
+ '/get_checkout_card_installment_options_response.rb'
28
+ require_relative 'mundi_api/models/create_cancel_charge_request.rb'
29
+ require_relative 'mundi_api/models/update_subscription_billing_date_request.rb'
30
+ require_relative 'mundi_api/models/list_subscription_items_response.rb'
31
+ require_relative 'mundi_api/models/list_usages_response.rb'
32
+ require_relative 'mundi_api/models' \
33
+ '/update_subscription_payment_method_request.rb'
34
+ require_relative 'mundi_api/models/create_card_options_request.rb'
35
+ require_relative 'mundi_api/models/update_subscription_card_request.rb'
36
+ require_relative 'mundi_api/models/list_order_response.rb'
37
+ require_relative 'mundi_api/models/create_usage_request.rb'
38
+ require_relative 'mundi_api/models/update_charge_due_date_request.rb'
39
+ require_relative 'mundi_api/models/create_cancel_subscription_request.rb'
40
+ require_relative 'mundi_api/models/list_transactions_response.rb'
41
+ require_relative 'mundi_api/models/list_charges_response.rb'
42
+ require_relative 'mundi_api/models/list_invoices_response.rb'
43
+ require_relative 'mundi_api/models/list_subscriptions_response.rb'
44
+ require_relative 'mundi_api/models/list_plans_response.rb'
45
+ require_relative 'mundi_api/models/list_addresses_response.rb'
46
+ require_relative 'mundi_api/models/list_cards_response.rb'
47
+ require_relative 'mundi_api/models/list_customers_response.rb'
48
+ require_relative 'mundi_api/models/paging_response.rb'
24
49
  require_relative 'mundi_api/models/create_subscription_request.rb'
25
- require_relative 'mundi_api/models/get_boleto_transaction_response.rb'
26
50
  require_relative 'mundi_api/models/get_order_response.rb'
27
- require_relative 'mundi_api/models/update_address_request.rb'
28
- require_relative 'mundi_api/models/create_cancel_charge_request.rb'
29
51
  require_relative 'mundi_api/models/create_charge_request.rb'
30
- require_relative 'mundi_api/models/get_usage_response.rb'
31
- require_relative 'mundi_api/models/paging_response.rb'
32
52
  require_relative 'mundi_api/models/update_card_request.rb'
33
- require_relative 'mundi_api/models/update_customer_request.rb'
34
53
  require_relative 'mundi_api/models/update_plan_item_request.rb'
35
54
  require_relative 'mundi_api/models/update_subscription_item_request.rb'
36
- require_relative 'mundi_api/models/list_customers_response.rb'
37
- require_relative 'mundi_api/models/list_cards_response.rb'
38
- require_relative 'mundi_api/models/list_addresses_response.rb'
39
- require_relative 'mundi_api/models/list_plans_response.rb'
40
- require_relative 'mundi_api/models/list_subscriptions_response.rb'
41
- require_relative 'mundi_api/models/list_invoices_response.rb'
42
- require_relative 'mundi_api/models/list_charges_response.rb'
43
- require_relative 'mundi_api/models/list_transactions_response.rb'
44
- require_relative 'mundi_api/models/create_cancel_subscription_request.rb'
45
- require_relative 'mundi_api/models/update_charge_due_date_request.rb'
46
- require_relative 'mundi_api/models/create_usage_request.rb'
47
- require_relative 'mundi_api/models/list_order_response.rb'
48
55
  require_relative 'mundi_api/models/create_plan_item_request.rb'
49
- require_relative 'mundi_api/models/create_subscription_item_request.rb'
56
+ require_relative 'mundi_api/models/create_access_token_request.rb'
50
57
  require_relative 'mundi_api/models/create_shipping_request.rb'
51
58
  require_relative 'mundi_api/models/update_plan_request.rb'
52
- require_relative 'mundi_api/models/update_subscription_card_request.rb'
53
59
  require_relative 'mundi_api/models/get_transaction_response.rb'
54
- require_relative 'mundi_api/models/get_billing_address_response.rb'
55
- require_relative 'mundi_api/models/get_invoice_response.rb'
56
60
  require_relative 'mundi_api/models/get_card_response.rb'
57
61
  require_relative 'mundi_api/models/get_address_response.rb'
58
62
  require_relative 'mundi_api/models/get_charge_response.rb'
59
- require_relative 'mundi_api/models/get_subscription_item_response.rb'
60
63
  require_relative 'mundi_api/models/get_pricing_scheme_response.rb'
61
64
  require_relative 'mundi_api/models/get_discount_response.rb'
62
65
  require_relative 'mundi_api/models/create_price_bracket_request.rb'
@@ -64,7 +67,6 @@ require_relative 'mundi_api/models/get_price_bracket_response.rb'
64
67
  require_relative 'mundi_api/models/get_customer_response.rb'
65
68
  require_relative 'mundi_api/models/create_discount_request.rb'
66
69
  require_relative 'mundi_api/models/get_shipping_response.rb'
67
- require_relative 'mundi_api/models/create_card_options_request.rb'
68
70
  require_relative 'mundi_api/models/create_setup_request.rb'
69
71
  require_relative 'mundi_api/models/get_setup_response.rb'
70
72
  require_relative 'mundi_api/models/get_subscription_response.rb'
@@ -78,14 +80,9 @@ require_relative 'mundi_api/models/update_pricing_scheme_request.rb'
78
80
  require_relative 'mundi_api/models/update_price_bracket_request.rb'
79
81
  require_relative 'mundi_api/models/update_charge_card_request.rb'
80
82
  require_relative 'mundi_api/models/update_charge_payment_method_request.rb'
81
- require_relative 'mundi_api/models/list_usages_response.rb'
82
- require_relative 'mundi_api/models/list_subscription_items_response.rb'
83
- require_relative 'mundi_api/models/update_subscription_billing_date_request.rb'
84
- require_relative 'mundi_api/models/get_invoice_item_response.rb'
85
83
  require_relative 'mundi_api/models/get_period_response.rb'
86
84
  require_relative 'mundi_api/models/get_plan_item_response.rb'
87
85
  require_relative 'mundi_api/models/get_plan_response.rb'
88
- require_relative 'mundi_api/models/create_boleto_payment_request.rb'
89
86
  require_relative 'mundi_api/models/create_phone_request.rb'
90
87
  require_relative 'mundi_api/models/create_phones_request.rb'
91
88
  require_relative 'mundi_api/models/get_phone_response.rb'
@@ -98,7 +95,6 @@ require_relative 'mundi_api/models/create_bank_transfer_payment_request.rb'
98
95
  require_relative 'mundi_api/models/get_bank_transfer_transaction_response.rb'
99
96
  require_relative 'mundi_api/models/get_safety_pay_transaction_response.rb'
100
97
  require_relative 'mundi_api/models/get_access_token_response.rb'
101
- require_relative 'mundi_api/models/create_access_token_request.rb'
102
98
  require_relative 'mundi_api/models/list_access_tokens_response.rb'
103
99
  require_relative 'mundi_api/models/create_customer_request.rb'
104
100
  require_relative 'mundi_api/models/create_token_request.rb'
@@ -111,12 +107,54 @@ require_relative 'mundi_api/models/create_order_request.rb'
111
107
  require_relative 'mundi_api/models/create_checkout_card_installment_option_request.rb'
112
108
  require_relative 'mundi_api/models/create_checkout_boleto_payment_request.rb'
113
109
  require_relative 'mundi_api/models/create_checkout_card_payment_request.rb'
114
- require_relative 'mundi_api/models/create_checkout_payment_request.rb'
115
110
  require_relative 'mundi_api/models/get_checkout_payment_settings_response.rb'
116
111
  require_relative 'mundi_api/models/create_seller_request.rb'
117
112
  require_relative 'mundi_api/models/get_seller_response.rb'
118
113
  require_relative 'mundi_api/models/create_order_item_request.rb'
119
114
  require_relative 'mundi_api/models/get_order_item_response.rb'
115
+ require_relative 'mundi_api/models/create_transfer_request.rb'
116
+ require_relative 'mundi_api/models/get_transfer_response.rb'
117
+ require_relative 'mundi_api/models/create_recipient_request.rb'
118
+ require_relative 'mundi_api/models/create_bank_account_request.rb'
119
+ require_relative 'mundi_api/models/get_recipient_response.rb'
120
+ require_relative 'mundi_api/models/get_bank_account_response.rb'
121
+ require_relative 'mundi_api/models/update_recipient_request.rb'
122
+ require_relative 'mundi_api/models/get_gateway_recipient_response.rb'
123
+ require_relative 'mundi_api/models/list_recipient_response.rb'
124
+ require_relative 'mundi_api/models/update_recipient_bank_account_request.rb'
125
+ require_relative 'mundi_api/models/list_transfer_response.rb'
126
+ require_relative 'mundi_api/models/get_balance_response.rb'
127
+ require_relative 'mundi_api/models/get_anticipation_response.rb'
128
+ require_relative 'mundi_api/models/create_anticipation_request.rb'
129
+ require_relative 'mundi_api/models/list_anticipation_response.rb'
130
+ require_relative 'mundi_api/models/get_anticipation_limit_response.rb'
131
+ require_relative 'mundi_api/models/get_anticipation_limits_response.rb'
132
+ require_relative 'mundi_api/models/create_split_request.rb'
133
+ require_relative 'mundi_api/models/get_split_response.rb'
134
+ require_relative 'mundi_api/models/get_device_response.rb'
135
+ require_relative 'mundi_api/models/create_device_request.rb'
136
+ require_relative 'mundi_api/models/get_location_response.rb'
137
+ require_relative 'mundi_api/models/create_location_request.rb'
138
+ require_relative 'mundi_api/models/get_invoice_response.rb'
139
+ require_relative 'mundi_api/models' \
140
+ '/update_subscription_affiliation_id_request.rb'
141
+ require_relative 'mundi_api/models/update_invoice_status_request.rb'
142
+ require_relative 'mundi_api/models/get_billing_address_response.rb'
143
+ require_relative 'mundi_api/models/update_address_request.rb'
144
+ require_relative 'mundi_api/models/create_subscription_item_request.rb'
145
+ require_relative 'mundi_api/models/get_subscription_item_response.rb'
146
+ require_relative 'mundi_api/models/update_order_status_request.rb'
147
+ require_relative 'mundi_api/models/update_order_item_request.rb'
148
+ require_relative 'mundi_api/models/get_sellers_request.rb'
149
+ require_relative 'mundi_api/models/update_seller_request.rb'
150
+ require_relative 'mundi_api/models/list_seller_response.rb'
151
+ require_relative 'mundi_api/models/get_usage_response.rb'
152
+ require_relative 'mundi_api/models/update_customer_request.rb'
153
+ require_relative 'mundi_api/models/get_checkout_payment_response.rb'
154
+ require_relative 'mundi_api/models/get_boleto_transaction_response.rb'
155
+ require_relative 'mundi_api/models/create_checkout_payment_request.rb'
156
+ require_relative 'mundi_api/models/create_boleto_payment_request.rb'
157
+ require_relative 'mundi_api/models/get_invoice_item_response.rb'
120
158
 
121
159
  # Exceptions
122
160
  require_relative 'mundi_api/exceptions/api_exception.rb'
@@ -126,10 +164,12 @@ require_relative 'mundi_api/configuration.rb'
126
164
 
127
165
  # Controllers
128
166
  require_relative 'mundi_api/controllers/base_controller.rb'
129
- require_relative 'mundi_api/controllers/charges_controller.rb'
130
- require_relative 'mundi_api/controllers/customers_controller.rb'
131
- require_relative 'mundi_api/controllers/invoices_controller.rb'
132
- require_relative 'mundi_api/controllers/plans_controller.rb'
133
167
  require_relative 'mundi_api/controllers/subscriptions_controller.rb'
134
168
  require_relative 'mundi_api/controllers/orders_controller.rb'
169
+ require_relative 'mundi_api/controllers/plans_controller.rb'
170
+ require_relative 'mundi_api/controllers/invoices_controller.rb'
171
+ require_relative 'mundi_api/controllers/customers_controller.rb'
172
+ require_relative 'mundi_api/controllers/charges_controller.rb'
173
+ require_relative 'mundi_api/controllers/recipients_controller.rb'
135
174
  require_relative 'mundi_api/controllers/tokens_controller.rb'
175
+ require_relative 'mundi_api/controllers/sellers_controller.rb'
@@ -89,7 +89,7 @@ module MundiApi
89
89
  elsif array_serialization == 'tsv'
90
90
  "#{seperator}#{key}=#{value.map do |element|
91
91
  CGI.escape(element.to_s)
92
- end.join('\t')}"
92
+ end.join("\t")}"
93
93
  else
94
94
  "#{seperator}#{APIHelper.serialize_array(
95
95
  key, value, formatting: array_serialization
@@ -152,19 +152,52 @@ module MundiApi
152
152
  def self.form_encode_parameters(form_parameters)
153
153
  encoded = {}
154
154
  form_parameters.each do |key, value|
155
- encoded.merge!(APIHelper.form_encode(value, key))
155
+ encoded.merge!(APIHelper.form_encode(value, key, formatting:
156
+ Configuration.array_serialization))
156
157
  end
157
158
  encoded
158
159
  end
159
160
 
161
+ def self.custom_merge(a, b)
162
+ x = {}
163
+ a.each do |key, value_a|
164
+ b.each do |k, value_b|
165
+ next unless key == k
166
+ x[k] = []
167
+ if value_a.instance_of? Array
168
+ value_a.each do |v|
169
+ x[k].push(v)
170
+ end
171
+ else
172
+ x[k].push(value_a)
173
+ end
174
+ if value_b.instance_of? Array
175
+ value_b.each do |v|
176
+ x[k].push(v)
177
+ end
178
+ else
179
+ x[k].push(value_b)
180
+ end
181
+ a.delete(k)
182
+ b.delete(k)
183
+ end
184
+ end
185
+ x.merge!(a)
186
+ x.merge!(b)
187
+ x
188
+ end
189
+
160
190
  # Form encodes an object.
161
191
  # @param [Dynamic] An object to form encode.
162
192
  # @param [String] The name of the object.
163
193
  # @return [Hash] A form encoded representation of the object in the form
164
194
  # of a hash.
165
- def self.form_encode(obj, instance_name)
195
+ def self.form_encode(obj, instance_name, formatting: 'indexed')
166
196
  retval = {}
167
197
 
198
+ serializable_types = [String, Numeric, TrueClass,
199
+ FalseClass, Date, DateTime]
200
+
168
201
  # If this is a structure, resolve it's field names.
169
202
  obj = obj.to_hash if obj.is_a? BaseModel
170
203
 
@@ -172,14 +205,33 @@ module MundiApi
172
205
  if obj.nil?
173
206
  nil
174
207
  elsif obj.instance_of? Array
175
- obj.each_with_index do |value, index|
176
- retval.merge!(APIHelper.form_encode(value, instance_name + '[' +
177
- index.to_s + ']'))
208
+ if formatting == 'indexed'
209
+ obj.each_with_index do |value, index|
210
+ retval.merge!(APIHelper.form_encode(value, instance_name + '[' +
211
+ index.to_s + ']'))
212
+ end
213
+ elsif serializable_types.map { |x| obj[0].is_a? x }.any?
214
+ obj.each do |value|
215
+ abc = if formatting == 'unindexed'
216
+ APIHelper.form_encode(value, instance_name + '[]',
217
+ formatting: formatting)
218
+ else
219
+ APIHelper.form_encode(value, instance_name,
220
+ formatting: formatting)
221
+ end
222
+ retval = APIHelper.custom_merge(retval, abc)
223
+ # print retval
224
+ end
225
+ else
226
+ obj.each_with_index do |value, index|
227
+ retval.merge!(APIHelper.form_encode(value, instance_name + '[' +
228
+ index.to_s + ']', formatting: formatting))
229
+ end
178
230
  end
179
231
  elsif obj.instance_of? Hash
180
232
  obj.each do |key, value|
181
233
  retval.merge!(APIHelper.form_encode(value, instance_name + '[' +
182
- key + ']'))
234
+ key + ']', formatting: formatting))
183
235
  end
184
236
  else
185
237
  retval[instance_name] = obj
@@ -14,13 +14,16 @@ module MundiApi
14
14
  self.class.instance
15
15
  end
16
16
 
17
- # Get a charge from its id
17
+ # Updates the card from a charge
18
18
  # @param [String] charge_id Required parameter: Charge id
19
+ # @param [UpdateChargeCardRequest] request Required parameter: Request for
20
+ # updating a charge's card
19
21
  # @return GetChargeResponse response from the API call
20
- def get_charge(charge_id)
22
+ def update_charge_card(charge_id,
23
+ request)
21
24
  # Prepare query url.
22
25
  _query_builder = Configuration.base_uri.dup
23
- _query_builder << '/charges/{charge_id}'
26
+ _query_builder << '/charges/{charge_id}/card'
24
27
  _query_builder = APIHelper.append_url_with_template_parameters(
25
28
  _query_builder,
26
29
  'charge_id' => charge_id
@@ -29,13 +32,15 @@ module MundiApi
29
32
 
30
33
  # Prepare headers.
31
34
  _headers = {
32
- 'accept' => 'application/json'
35
+ 'accept' => 'application/json',
36
+ 'content-type' => 'application/json; charset=utf-8'
33
37
  }
34
38
 
35
39
  # Prepare and execute HttpRequest.
36
- _request = @http_client.get(
40
+ _request = @http_client.patch(
37
41
  _query_url,
38
- headers: _headers
42
+ headers: _headers,
43
+ parameters: request.to_json
39
44
  )
40
45
  BasicAuth.apply(_request)
41
46
  _context = execute_request(_request)
@@ -46,13 +51,16 @@ module MundiApi
46
51
  GetChargeResponse.from_hash(decoded)
47
52
  end
48
53
 
49
- # Retries a charge
54
+ # Updates a charge's payment method
50
55
  # @param [String] charge_id Required parameter: Charge id
56
+ # @param [UpdateChargePaymentMethodRequest] request Required parameter:
57
+ # Request for updating the payment method from a charge
51
58
  # @return GetChargeResponse response from the API call
52
- def retry_charge(charge_id)
59
+ def update_charge_payment_method(charge_id,
60
+ request)
53
61
  # Prepare query url.
54
62
  _query_builder = Configuration.base_uri.dup
55
- _query_builder << '/charges/{charge_id}/retry'
63
+ _query_builder << '/charges/{charge_id}/payment-method'
56
64
  _query_builder = APIHelper.append_url_with_template_parameters(
57
65
  _query_builder,
58
66
  'charge_id' => charge_id
@@ -61,13 +69,15 @@ module MundiApi
61
69
 
62
70
  # Prepare headers.
63
71
  _headers = {
64
- 'accept' => 'application/json'
72
+ 'accept' => 'application/json',
73
+ 'content-type' => 'application/json; charset=utf-8'
65
74
  }
66
75
 
67
76
  # Prepare and execute HttpRequest.
68
- _request = @http_client.post(
77
+ _request = @http_client.patch(
69
78
  _query_url,
70
- headers: _headers
79
+ headers: _headers,
80
+ parameters: request.to_json
71
81
  )
72
82
  BasicAuth.apply(_request)
73
83
  _context = execute_request(_request)
@@ -109,16 +119,13 @@ module MundiApi
109
119
  GetChargeResponse.from_hash(decoded)
110
120
  end
111
121
 
112
- # Updates the card from a charge
122
+ # Get a charge from its id
113
123
  # @param [String] charge_id Required parameter: Charge id
114
- # @param [UpdateChargeCardRequest] request Required parameter: Request for
115
- # updating a charge's card
116
124
  # @return GetChargeResponse response from the API call
117
- def update_charge_card(charge_id,
118
- request)
125
+ def get_charge(charge_id)
119
126
  # Prepare query url.
120
127
  _query_builder = Configuration.base_uri.dup
121
- _query_builder << '/charges/{charge_id}/card'
128
+ _query_builder << '/charges/{charge_id}'
122
129
  _query_builder = APIHelper.append_url_with_template_parameters(
123
130
  _query_builder,
124
131
  'charge_id' => charge_id
@@ -127,15 +134,13 @@ module MundiApi
127
134
 
128
135
  # Prepare headers.
129
136
  _headers = {
130
- 'accept' => 'application/json',
131
- 'content-type' => 'application/json; charset=utf-8'
137
+ 'accept' => 'application/json'
132
138
  }
133
139
 
134
140
  # Prepare and execute HttpRequest.
135
- _request = @http_client.patch(
141
+ _request = @http_client.get(
136
142
  _query_url,
137
- headers: _headers,
138
- parameters: request.to_json
143
+ headers: _headers
139
144
  )
140
145
  BasicAuth.apply(_request)
141
146
  _context = execute_request(_request)
@@ -146,16 +151,112 @@ module MundiApi
146
151
  GetChargeResponse.from_hash(decoded)
147
152
  end
148
153
 
149
- # Updates a charge's payment method
154
+ # Retries a charge
150
155
  # @param [String] charge_id Required parameter: Charge id
151
- # @param [UpdateChargePaymentMethodRequest] request Required parameter:
152
- # Request for updating the payment method from a charge
153
156
  # @return GetChargeResponse response from the API call
154
- def update_charge_payment_method(charge_id,
155
- request)
157
+ def retry_charge(charge_id)
156
158
  # Prepare query url.
157
159
  _query_builder = Configuration.base_uri.dup
158
- _query_builder << '/charges/{charge_id}/payment-method'
160
+ _query_builder << '/charges/{charge_id}/retry'
161
+ _query_builder = APIHelper.append_url_with_template_parameters(
162
+ _query_builder,
163
+ 'charge_id' => charge_id
164
+ )
165
+ _query_url = APIHelper.clean_url _query_builder
166
+
167
+ # Prepare headers.
168
+ _headers = {
169
+ 'accept' => 'application/json'
170
+ }
171
+
172
+ # Prepare and execute HttpRequest.
173
+ _request = @http_client.post(
174
+ _query_url,
175
+ headers: _headers
176
+ )
177
+ BasicAuth.apply(_request)
178
+ _context = execute_request(_request)
179
+ validate_response(_context)
180
+
181
+ # Return appropriate response type.
182
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
183
+ GetChargeResponse.from_hash(decoded)
184
+ end
185
+
186
+ # Lists all charges
187
+ # @param [Integer] page Optional parameter: Page number
188
+ # @param [Integer] size Optional parameter: Page size
189
+ # @param [String] code Optional parameter: Filter for charge's code
190
+ # @param [String] status Optional parameter: Filter for charge's status
191
+ # @param [String] payment_method Optional parameter: Filter for charge's
192
+ # payment method
193
+ # @param [String] customer_id Optional parameter: Filter for charge's
194
+ # customer id
195
+ # @param [String] order_id Optional parameter: Filter for charge's order
196
+ # id
197
+ # @param [DateTime] created_since Optional parameter: Filter for the
198
+ # beginning of the range for charge's creation
199
+ # @param [DateTime] created_until Optional parameter: Filter for the end of
200
+ # the range for charge's creation
201
+ # @return ListChargesResponse response from the API call
202
+ def get_charges(page = nil,
203
+ size = nil,
204
+ code = nil,
205
+ status = nil,
206
+ payment_method = nil,
207
+ customer_id = nil,
208
+ order_id = nil,
209
+ created_since = nil,
210
+ created_until = nil)
211
+ # Prepare query url.
212
+ _query_builder = Configuration.base_uri.dup
213
+ _query_builder << '/charges'
214
+ _query_builder = APIHelper.append_url_with_query_parameters(
215
+ _query_builder,
216
+ {
217
+ 'page' => page,
218
+ 'size' => size,
219
+ 'code' => code,
220
+ 'status' => status,
221
+ 'payment_method' => payment_method,
222
+ 'customer_id' => customer_id,
223
+ 'order_id' => order_id,
224
+ 'created_since' => created_since,
225
+ 'created_until' => created_until
226
+ },
227
+ array_serialization: Configuration.array_serialization
228
+ )
229
+ _query_url = APIHelper.clean_url _query_builder
230
+
231
+ # Prepare headers.
232
+ _headers = {
233
+ 'accept' => 'application/json'
234
+ }
235
+
236
+ # Prepare and execute HttpRequest.
237
+ _request = @http_client.get(
238
+ _query_url,
239
+ headers: _headers
240
+ )
241
+ BasicAuth.apply(_request)
242
+ _context = execute_request(_request)
243
+ validate_response(_context)
244
+
245
+ # Return appropriate response type.
246
+ decoded = APIHelper.json_deserialize(_context.response.raw_body)
247
+ ListChargesResponse.from_hash(decoded)
248
+ end
249
+
250
+ # Updates the metadata from a charge
251
+ # @param [String] charge_id Required parameter: The charge id
252
+ # @param [UpdateMetadataRequest] request Required parameter: Request for
253
+ # updating the charge metadata
254
+ # @return GetChargeResponse response from the API call
255
+ def update_charge_metadata(charge_id,
256
+ request)
257
+ # Prepare query url.
258
+ _query_builder = Configuration.base_uri.dup
259
+ _query_builder << '/Charges/{charge_id}/metadata'
159
260
  _query_builder = APIHelper.append_url_with_template_parameters(
160
261
  _query_builder,
161
262
  'charge_id' => charge_id
@@ -257,16 +358,16 @@ module MundiApi
257
358
  GetChargeResponse.from_hash(decoded)
258
359
  end
259
360
 
260
- # Updates the metadata from a charge
261
- # @param [String] charge_id Required parameter: The charge id
262
- # @param [UpdateMetadataRequest] request Required parameter: Request for
263
- # updating the charge metadata
361
+ # Updates the due date from a charge
362
+ # @param [String] charge_id Required parameter: Charge Id
363
+ # @param [UpdateChargeDueDateRequest] request Required parameter: Request
364
+ # for updating the due date
264
365
  # @return GetChargeResponse response from the API call
265
- def update_charge_metadata(charge_id,
366
+ def update_charge_due_date(charge_id,
266
367
  request)
267
368
  # Prepare query url.
268
369
  _query_builder = Configuration.base_uri.dup
269
- _query_builder << '/Charges/{charge_id}/metadata'
370
+ _query_builder << '/Charges/{charge_id}/due-date'
270
371
  _query_builder = APIHelper.append_url_with_template_parameters(
271
372
  _query_builder,
272
373
  'charge_id' => charge_id
@@ -293,67 +394,5 @@ module MundiApi
293
394
  decoded = APIHelper.json_deserialize(_context.response.raw_body)
294
395
  GetChargeResponse.from_hash(decoded)
295
396
  end
296
-
297
- # Lists all charges
298
- # @param [Integer] page Optional parameter: Page number
299
- # @param [Integer] size Optional parameter: Page size
300
- # @param [String] code Optional parameter: Filter for charge's code
301
- # @param [String] status Optional parameter: Filter for charge's status
302
- # @param [String] payment_method Optional parameter: Filter for charge's
303
- # payment method
304
- # @param [String] customer_id Optional parameter: Filter for charge's
305
- # customer id
306
- # @param [String] order_id Optional parameter: Filter for charge's order
307
- # id
308
- # @param [DateTime] created_since Optional parameter: Filter for the
309
- # beginning of the range for charge's creation
310
- # @param [DateTime] created_until Optional parameter: Filter for the end of
311
- # the range for charge's creation
312
- # @return ListChargesResponse response from the API call
313
- def get_charges(page = nil,
314
- size = nil,
315
- code = nil,
316
- status = nil,
317
- payment_method = nil,
318
- customer_id = nil,
319
- order_id = nil,
320
- created_since = nil,
321
- created_until = nil)
322
- # Prepare query url.
323
- _query_builder = Configuration.base_uri.dup
324
- _query_builder << '/charges'
325
- _query_builder = APIHelper.append_url_with_query_parameters(
326
- _query_builder,
327
- 'page' => page,
328
- 'size' => size,
329
- 'code' => code,
330
- 'status' => status,
331
- 'payment_method' => payment_method,
332
- 'customer_id' => customer_id,
333
- 'order_id' => order_id,
334
- 'created_since' => created_since,
335
- 'created_until' => created_until,
336
- array_serialization: Configuration.array_serialization
337
- )
338
- _query_url = APIHelper.clean_url _query_builder
339
-
340
- # Prepare headers.
341
- _headers = {
342
- 'accept' => 'application/json'
343
- }
344
-
345
- # Prepare and execute HttpRequest.
346
- _request = @http_client.get(
347
- _query_url,
348
- headers: _headers
349
- )
350
- BasicAuth.apply(_request)
351
- _context = execute_request(_request)
352
- validate_response(_context)
353
-
354
- # Return appropriate response type.
355
- decoded = APIHelper.json_deserialize(_context.response.raw_body)
356
- ListChargesResponse.from_hash(decoded)
357
- end
358
397
  end
359
398
  end