mollie-api-ruby 2.2.1 → 3.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (197) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +7 -0
  3. data/README.md +37 -8
  4. data/examples/apis/api_docs.rb +1 -1
  5. data/examples/apis/chargebacks.rb +17 -0
  6. data/examples/apis/connect.rb +1 -1
  7. data/examples/apis/customers.rb +7 -6
  8. data/examples/apis/invoices.rb +2 -2
  9. data/examples/apis/issuers.rb +2 -2
  10. data/examples/apis/mandates.rb +5 -5
  11. data/examples/apis/methods.rb +2 -2
  12. data/examples/apis/organizations.rb +1 -1
  13. data/examples/apis/payments.rb +43 -9
  14. data/examples/apis/permissions.rb +2 -2
  15. data/examples/apis/profiles.rb +7 -7
  16. data/examples/apis/refunds.rb +1 -1
  17. data/examples/apis/settlements.rb +5 -5
  18. data/examples/apis/subscriptions.rb +7 -7
  19. data/examples/config.ru +6 -7
  20. data/lib/{mollie/api/cacert.pem → cacert.pem} +0 -0
  21. data/lib/mollie-api-ruby.rb +1 -0
  22. data/lib/mollie.rb +39 -0
  23. data/lib/mollie/base.rb +91 -0
  24. data/lib/mollie/chargeback.rb +36 -0
  25. data/lib/mollie/client.rb +125 -0
  26. data/lib/mollie/customer.rb +36 -0
  27. data/lib/mollie/customer/mandate.rb +33 -0
  28. data/lib/mollie/customer/payment.rb +6 -0
  29. data/lib/mollie/customer/subscription.rb +65 -0
  30. data/lib/mollie/exception.rb +8 -0
  31. data/lib/mollie/invoice.rb +66 -0
  32. data/lib/mollie/issuer.rb +5 -0
  33. data/lib/mollie/list.rb +40 -0
  34. data/lib/mollie/method.rb +38 -0
  35. data/lib/mollie/organization.rb +24 -0
  36. data/lib/mollie/payment.rb +142 -0
  37. data/lib/mollie/payment/chargeback.rb +6 -0
  38. data/lib/mollie/payment/refund.rb +6 -0
  39. data/lib/mollie/permission.rb +26 -0
  40. data/lib/mollie/profile.rb +78 -0
  41. data/lib/mollie/profile/api_key.rb +19 -0
  42. data/lib/mollie/refund.rb +42 -0
  43. data/lib/mollie/relation.rb +36 -0
  44. data/lib/mollie/settlement.rb +36 -0
  45. data/lib/mollie/settlement/chargeback.rb +6 -0
  46. data/lib/mollie/settlement/payment.rb +6 -0
  47. data/lib/mollie/settlement/refund.rb +6 -0
  48. data/lib/mollie/util.rb +57 -0
  49. data/lib/mollie/version.rb +3 -0
  50. data/mollie.gemspec +2 -2
  51. data/test/helper.rb +5 -1
  52. data/test/mollie/base_test.rb +182 -0
  53. data/test/mollie/chargeback_test.rb +35 -0
  54. data/test/mollie/client_test.rb +122 -0
  55. data/test/mollie/customer/mandate_test.rb +43 -0
  56. data/test/mollie/customer/payment_test.rb +23 -0
  57. data/test/mollie/customer/subscription_test.rb +66 -0
  58. data/test/mollie/customer_test.rb +128 -0
  59. data/test/mollie/invoice_test.rb +55 -0
  60. data/test/mollie/issuer_test.rb +19 -0
  61. data/test/mollie/list_test.rb +40 -0
  62. data/test/mollie/method_test.rb +29 -0
  63. data/test/mollie/organization_test.rb +41 -0
  64. data/test/mollie/payment/chargeback_test.rb +22 -0
  65. data/test/mollie/payment/refund_test.rb +22 -0
  66. data/test/mollie/payment_test.rb +161 -0
  67. data/test/mollie/permission_test.rb +21 -0
  68. data/test/mollie/profile/apikey_test.rb +31 -0
  69. data/test/mollie/profile_test.rb +98 -0
  70. data/test/mollie/refund_test.rb +40 -0
  71. data/test/mollie/settlement/chargeback_test.rb +22 -0
  72. data/test/mollie/settlement/payment_test.rb +22 -0
  73. data/test/mollie/settlement/refund_test.rb +22 -0
  74. data/test/mollie/settlement_test.rb +156 -0
  75. data/website-docs/chargebacks/list-all.rb +12 -0
  76. data/website-docs/connect/authorize.rb +15 -0
  77. data/website-docs/connect/tokens.rb +14 -0
  78. data/website-docs/customers/create-payment.rb +13 -0
  79. data/website-docs/customers/create.rb +12 -0
  80. data/website-docs/customers/delete.rb +10 -0
  81. data/website-docs/customers/get.rb +10 -0
  82. data/website-docs/customers/list-payments.rb +10 -0
  83. data/website-docs/customers/list.rb +12 -0
  84. data/website-docs/customers/update.rb +11 -0
  85. data/website-docs/invoices/get.rb +10 -0
  86. data/website-docs/invoices/list.rb +12 -0
  87. data/website-docs/issuers/get.rb +10 -0
  88. data/website-docs/issuers/list.rb +12 -0
  89. data/website-docs/mandates/create.rb +16 -0
  90. data/website-docs/mandates/delete.rb +10 -0
  91. data/website-docs/mandates/get.rb +10 -0
  92. data/website-docs/mandates/list.rb +12 -0
  93. data/website-docs/methods/get.rb +10 -0
  94. data/website-docs/methods/list.rb +12 -0
  95. data/website-docs/organisations/get.rb +10 -0
  96. data/website-docs/payments/create-refund.rb +14 -0
  97. data/website-docs/payments/create.rb +16 -0
  98. data/website-docs/payments/delete-refund.rb +13 -0
  99. data/website-docs/payments/delete.rb +12 -0
  100. data/website-docs/payments/get-chargeback.rb +11 -0
  101. data/website-docs/payments/get-refund.rb +11 -0
  102. data/website-docs/payments/get.rb +10 -0
  103. data/website-docs/payments/list-chargeback.rb +13 -0
  104. data/website-docs/payments/list-refunds.rb +13 -0
  105. data/website-docs/payments/list.rb +12 -0
  106. data/website-docs/payments/payment-webhook.rb +21 -0
  107. data/website-docs/permissions/get.rb +10 -0
  108. data/website-docs/permissions/list.rb +12 -0
  109. data/website-docs/profiles/create.rb +15 -0
  110. data/website-docs/profiles/delete.rb +10 -0
  111. data/website-docs/profiles/get-key.rb +11 -0
  112. data/website-docs/profiles/get.rb +10 -0
  113. data/website-docs/profiles/list-keys.rb +13 -0
  114. data/website-docs/profiles/list.rb +12 -0
  115. data/website-docs/profiles/reset-key.rb +13 -0
  116. data/website-docs/profiles/update.rb +12 -0
  117. data/website-docs/refunds/list.rb +12 -0
  118. data/website-docs/settlements/get.rb +10 -0
  119. data/website-docs/settlements/list-chargebacks.rb +13 -0
  120. data/website-docs/settlements/list-payments.rb +13 -0
  121. data/website-docs/settlements/list-refunds.rb +13 -0
  122. data/website-docs/settlements/list.rb +12 -0
  123. data/website-docs/settlements/next.rb +9 -0
  124. data/website-docs/settlements/open.rb +9 -0
  125. data/website-docs/subscriptions/create.rb +14 -0
  126. data/website-docs/subscriptions/delete.rb +10 -0
  127. data/website-docs/subscriptions/get.rb +10 -0
  128. data/website-docs/subscriptions/list.rb +12 -0
  129. metadata +134 -104
  130. data/lib/mollie/api/client.rb +0 -161
  131. data/lib/mollie/api/client/version.rb +0 -7
  132. data/lib/mollie/api/exception.rb +0 -10
  133. data/lib/mollie/api/object/base.rb +0 -18
  134. data/lib/mollie/api/object/customer.rb +0 -28
  135. data/lib/mollie/api/object/customer/mandate.rb +0 -37
  136. data/lib/mollie/api/object/customer/subscription.rb +0 -69
  137. data/lib/mollie/api/object/invoice.rb +0 -70
  138. data/lib/mollie/api/object/issuer.rb +0 -9
  139. data/lib/mollie/api/object/list.rb +0 -44
  140. data/lib/mollie/api/object/method.rb +0 -42
  141. data/lib/mollie/api/object/organization.rb +0 -28
  142. data/lib/mollie/api/object/payment.rb +0 -137
  143. data/lib/mollie/api/object/payment/refund.rb +0 -47
  144. data/lib/mollie/api/object/permission.rb +0 -12
  145. data/lib/mollie/api/object/profile.rb +0 -78
  146. data/lib/mollie/api/object/profile/apikey.rb +0 -23
  147. data/lib/mollie/api/object/settlement.rb +0 -32
  148. data/lib/mollie/api/resource/base.rb +0 -53
  149. data/lib/mollie/api/resource/customers.rb +0 -11
  150. data/lib/mollie/api/resource/customers/mandates.rb +0 -27
  151. data/lib/mollie/api/resource/customers/payments.rb +0 -27
  152. data/lib/mollie/api/resource/customers/subscriptions.rb +0 -27
  153. data/lib/mollie/api/resource/invoices.rb +0 -11
  154. data/lib/mollie/api/resource/issuers.rb +0 -11
  155. data/lib/mollie/api/resource/methods.rb +0 -11
  156. data/lib/mollie/api/resource/organizations.rb +0 -11
  157. data/lib/mollie/api/resource/payments.rb +0 -11
  158. data/lib/mollie/api/resource/payments/refunds.rb +0 -27
  159. data/lib/mollie/api/resource/permissions.rb +0 -31
  160. data/lib/mollie/api/resource/profiles.rb +0 -11
  161. data/lib/mollie/api/resource/profiles/apikeys.rb +0 -33
  162. data/lib/mollie/api/resource/refunds.rb +0 -11
  163. data/lib/mollie/api/resource/settlements.rb +0 -19
  164. data/lib/mollie/api/resource/settlements/payments.rb +0 -27
  165. data/lib/mollie/api/util.rb +0 -53
  166. data/test/mollie/api/client_test.rb +0 -111
  167. data/test/mollie/api/object/base_test.rb +0 -21
  168. data/test/mollie/api/object/customer/mandate_test.rb +0 -47
  169. data/test/mollie/api/object/customer/subscription_test.rb +0 -70
  170. data/test/mollie/api/object/customer_test.rb +0 -35
  171. data/test/mollie/api/object/invoice_test.rb +0 -59
  172. data/test/mollie/api/object/issuer_test.rb +0 -23
  173. data/test/mollie/api/object/list_test.rb +0 -44
  174. data/test/mollie/api/object/method_test.rb +0 -33
  175. data/test/mollie/api/object/organization_test.rb +0 -45
  176. data/test/mollie/api/object/payment/refund_test.rb +0 -46
  177. data/test/mollie/api/object/payment_test.rb +0 -106
  178. data/test/mollie/api/object/permission_test.rb +0 -25
  179. data/test/mollie/api/object/profile/apikey_test.rb +0 -35
  180. data/test/mollie/api/object/profile_test.rb +0 -72
  181. data/test/mollie/api/object/settlement_test.rb +0 -140
  182. data/test/mollie/api/resource/base_test.rb +0 -83
  183. data/test/mollie/api/resource/customers/mandates_test.rb +0 -23
  184. data/test/mollie/api/resource/customers/payments_test.rb +0 -23
  185. data/test/mollie/api/resource/customers/subscriptions_test.rb +0 -23
  186. data/test/mollie/api/resource/customers_test.rb +0 -13
  187. data/test/mollie/api/resource/invoices_test.rb +0 -13
  188. data/test/mollie/api/resource/issuers_test.rb +0 -13
  189. data/test/mollie/api/resource/methods_test.rb +0 -13
  190. data/test/mollie/api/resource/organizations_test.rb +0 -13
  191. data/test/mollie/api/resource/payments/refunds_test.rb +0 -23
  192. data/test/mollie/api/resource/payments_test.rb +0 -13
  193. data/test/mollie/api/resource/permissions_test.rb +0 -13
  194. data/test/mollie/api/resource/profiles/apikeys_test.rb +0 -23
  195. data/test/mollie/api/resource/profiles_test.rb +0 -13
  196. data/test/mollie/api/resource/settlements_test.rb +0 -13
  197. data/test/mollie/api/util_test.rb +0 -47
@@ -0,0 +1,33 @@
1
+ module Mollie
2
+ class Customer
3
+ class Mandate < Base
4
+ STATUS_VALID = "valid"
5
+ STATUS_INVALID = "invalid"
6
+
7
+ attr_accessor :id,
8
+ :status,
9
+ :method,
10
+ :customer_id,
11
+ :details,
12
+ :created_datetime,
13
+ :mandate_reference
14
+
15
+
16
+ def details=(details)
17
+ @details = OpenStruct.new(details) if details.is_a?(Hash)
18
+ end
19
+
20
+ def created_datetime=(created_datetime)
21
+ @created_datetime = Time.parse(created_datetime.to_s) rescue nil
22
+ end
23
+
24
+ def valid?
25
+ status == STATUS_VALID
26
+ end
27
+
28
+ def invalid?
29
+ status == STATUS_INVALID
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,6 @@
1
+ module Mollie
2
+ class Customer
3
+ class Payment < Mollie::Payment
4
+ end
5
+ end
6
+ end
@@ -0,0 +1,65 @@
1
+ module Mollie
2
+ class Customer
3
+ class Subscription < Base
4
+ STATUS_ACTIVE = "active"
5
+ STATUS_PENDING = "pending" # Waiting for a valid mandate.
6
+ STATUS_CANCELLED = "cancelled"
7
+ STATUS_SUSPENDED = "suspended" # Active, but mandate became invalid.
8
+ STATUS_COMPLETED = "completed"
9
+
10
+ attr_accessor :resource,
11
+ :id,
12
+ :customer_id,
13
+ :mode,
14
+ :created_datetime,
15
+ :status,
16
+ :amount,
17
+ :times,
18
+ :interval,
19
+ :description,
20
+ :method,
21
+ :cancelled_datetime,
22
+ :links
23
+
24
+ def active?
25
+ status == STATUS_ACTIVE
26
+ end
27
+
28
+ def pending?
29
+ status == STATUS_PENDING
30
+ end
31
+
32
+ def suspended?
33
+ status == STATUS_SUSPENDED
34
+ end
35
+
36
+ def cancelled?
37
+ status == STATUS_CANCELLED
38
+ end
39
+
40
+ def completed?
41
+ status == STATUS_COMPLETED
42
+ end
43
+
44
+ def created_datetime=(created_datetime)
45
+ @created_datetime = Time.parse(created_datetime.to_s) rescue nil
46
+ end
47
+
48
+ def cancelled_datetime=(cancelled_datetime)
49
+ @cancelled_datetime = Time.parse(cancelled_datetime.to_s) rescue nil
50
+ end
51
+
52
+ def amount=(amount)
53
+ @amount = BigDecimal.new(amount.to_s)
54
+ end
55
+
56
+ def times=(times)
57
+ @times = times.to_i
58
+ end
59
+
60
+ def webhook_url
61
+ links && links['webhook_url']
62
+ end
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,8 @@
1
+ module Mollie
2
+ class Exception < StandardError
3
+ @field = nil
4
+ @code = nil
5
+
6
+ attr_accessor :field, :code
7
+ end
8
+ end
@@ -0,0 +1,66 @@
1
+ module Mollie
2
+ class Invoice < Base
3
+ STATUS_OPEN = "open"
4
+ STATUS_PAID = "paid"
5
+ STATUS_OVERDUE = "overdue"
6
+
7
+ class Amount < Base
8
+ attr_accessor :net, :vat, :gross
9
+
10
+ def net=(net)
11
+ @net = BigDecimal.new(net.to_s)
12
+ end
13
+
14
+ def vat=(vat)
15
+ @vat = BigDecimal.new(vat.to_s, 2)
16
+ end
17
+
18
+ def gross=(gross)
19
+ @gross = BigDecimal.new(gross.to_s)
20
+ end
21
+ end
22
+
23
+ class Line < Base
24
+ attr_accessor :period, :description, :count, :vat_percentage, :amount
25
+
26
+ def amount=(amount)
27
+ @amount = BigDecimal.new(amount.to_s)
28
+ end
29
+ end
30
+
31
+ attr_accessor :resource, :id, :reference, :vat_number, :status,
32
+ :issue_date, :due_date, :amount, :lines, :links
33
+
34
+ def open?
35
+ status == STATUS_OPEN
36
+ end
37
+
38
+ def paid?
39
+ status == STATUS_PAID
40
+ end
41
+
42
+ def overdue?
43
+ status == STATUS_OVERDUE
44
+ end
45
+
46
+ def amount=(amount)
47
+ @amount = Amount.new(amount)
48
+ end
49
+
50
+ def issue_date=(issue_date)
51
+ @issue_date = Time.parse(issue_date) rescue nil
52
+ end
53
+
54
+ def due_date=(due_date)
55
+ @due_date = Time.parse(due_date) rescue nil
56
+ end
57
+
58
+ def lines=(lines)
59
+ @lines = lines.map { |line| Line.new(line) }
60
+ end
61
+
62
+ def pdf
63
+ links && links['pdf']
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,5 @@
1
+ module Mollie
2
+ class Issuer < Base
3
+ attr_accessor :id, :name, :method
4
+ end
5
+ end
@@ -0,0 +1,40 @@
1
+ module Mollie
2
+ class List < Base
3
+ include Enumerable
4
+
5
+ attr_accessor :total_count,
6
+ :offset,
7
+ :count,
8
+ :links,
9
+ :data
10
+
11
+ def initialize(list_attributes, klass)
12
+ list_attributes['data'] ||= []
13
+ super list_attributes
14
+
15
+ @data = self.data.map do |attributes|
16
+ klass.new attributes
17
+ end
18
+ end
19
+
20
+ def each(&block)
21
+ @data.each(&block)
22
+ end
23
+
24
+ def first_url
25
+ links && links['first']
26
+ end
27
+
28
+ def previous_url
29
+ links && links['previous']
30
+ end
31
+
32
+ def next_url
33
+ links && links['next']
34
+ end
35
+
36
+ def last_url
37
+ links && links['last']
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,38 @@
1
+ module Mollie
2
+ class Method < Base
3
+ IDEAL = "ideal"
4
+ CREDITCARD = "creditcard"
5
+ MISTERCASH = "mistercash"
6
+ SOFORT = "sofort"
7
+ BANKTRANSFER = "banktransfer"
8
+ DIRECTDEBIT = "directdebit"
9
+ BITCOIN = "bitcoin"
10
+ PAYPAL = "paypal"
11
+ KBC = "kbc"
12
+ BELFIUS = "belfius"
13
+ PAYSAFECARD = "paysafecard"
14
+ PODIUMCADEAUKAART = "podiumcadeaukaart"
15
+ GIFTCARD = "giftcard"
16
+
17
+ attr_accessor :id,
18
+ :description,
19
+ :amount,
20
+ :image
21
+
22
+ def normal_image
23
+ image['normal']
24
+ end
25
+
26
+ def bigger_image
27
+ image['bigger']
28
+ end
29
+
30
+ def minimum_amount
31
+ BigDecimal.new(amount['minimum'].to_s)
32
+ end
33
+
34
+ def maximum_amount
35
+ BigDecimal.new(amount['maximum'].to_s)
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,24 @@
1
+ module Mollie
2
+ class Organization < Base
3
+ attr_accessor :id,
4
+ :name,
5
+ :email,
6
+ :address,
7
+ :postal_code,
8
+ :city,
9
+ :country,
10
+ :country_code,
11
+ :registration_type,
12
+ :registration_number,
13
+ :registration_datetime,
14
+ :verified_datetime
15
+
16
+ def registration_datetime=(registration_datetime)
17
+ @registration_datetime = Time.parse(registration_datetime.to_s) rescue nil
18
+ end
19
+
20
+ def verified_datetime=(verified_datetime)
21
+ @verified_datetime = Time.parse(verified_datetime.to_s) rescue nil
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,142 @@
1
+ module Mollie
2
+ class Payment < Base
3
+ STATUS_OPEN = "open"
4
+ STATUS_CANCELLED = "cancelled"
5
+ STATUS_EXPIRED = "expired"
6
+ STATUS_PAID = "paid"
7
+ STATUS_PAIDOUT = "paidout"
8
+ STATUS_FAILED = "failed"
9
+ STATUS_REFUNDED = "refunded"
10
+ STATUS_PENDING = "pending"
11
+ STATUS_CHARGED_BACK = "charged_back"
12
+
13
+ RECURRINGTYPE_NONE = nil
14
+ RECURRINGTYPE_FIRST = "first"
15
+ RECURRINGTYPE_RECURRING = "recurring"
16
+
17
+ attr_accessor :id,
18
+ :mode,
19
+ :created_datetime,
20
+ :status,
21
+ :paid_datetime,
22
+ :cancelled_datetime,
23
+ :expired_datetime,
24
+ :expiry_period,
25
+ :amount,
26
+ :amount_refunded,
27
+ :amount_remaining,
28
+ :description,
29
+ :method,
30
+ :metadata,
31
+ :locale,
32
+ :profile_id,
33
+ :settlement_id,
34
+ :customer_id,
35
+ :recurring_type,
36
+ :mandate_id,
37
+ :subscription_id,
38
+ :country_code,
39
+ :links,
40
+ :details
41
+
42
+ def open?
43
+ status == STATUS_OPEN
44
+ end
45
+
46
+ def cancelled?
47
+ status == STATUS_CANCELLED
48
+ end
49
+
50
+ def expired?
51
+ status == STATUS_EXPIRED
52
+ end
53
+
54
+ def paid?
55
+ !!paid_datetime
56
+ end
57
+
58
+ def paidout?
59
+ status == STATUS_PAIDOUT
60
+ end
61
+
62
+ def refunded?
63
+ status == STATUS_REFUNDED
64
+ end
65
+
66
+ def failed?
67
+ status == STATUS_FAILED
68
+ end
69
+
70
+ def pending?
71
+ status == STATUS_PENDING
72
+ end
73
+
74
+ def charged_back?
75
+ status == STATUS_CHARGED_BACK
76
+ end
77
+
78
+ def details=(details)
79
+ @details = OpenStruct.new(details) if details.is_a?(Hash)
80
+ end
81
+
82
+ def metadata=(metadata)
83
+ @metadata = OpenStruct.new(metadata) if metadata.is_a?(Hash)
84
+ end
85
+
86
+ def created_datetime=(created_datetime)
87
+ @created_datetime = Time.parse(created_datetime.to_s) rescue nil
88
+ end
89
+
90
+ def paid_datetime=(paid_datetime)
91
+ @paid_datetime = Time.parse(paid_datetime.to_s) rescue nil
92
+ end
93
+
94
+ def cancelled_datetime=(cancelled_datetime)
95
+ @cancelled_datetime = Time.parse(cancelled_datetime.to_s) rescue nil
96
+ end
97
+
98
+ def expired_datetime=(expired_datetime)
99
+ @expired_datetime = Time.parse(expired_datetime.to_s) rescue nil
100
+ end
101
+
102
+ def amount=(amount)
103
+ @amount = BigDecimal.new(amount.to_s) if amount
104
+ end
105
+
106
+ def amount_remaining=(amount_remaining)
107
+ @amount_remaining = BigDecimal.new(amount_remaining.to_s) if amount_remaining
108
+ end
109
+
110
+ def amount_refunded=(amount_refunded)
111
+ @amount_refunded = BigDecimal.new(amount_refunded.to_s) if amount_refunded
112
+ end
113
+
114
+ def payment_url
115
+ links && links['payment_url']
116
+ end
117
+
118
+ def webhook_url
119
+ links && links['webhook_url']
120
+ end
121
+
122
+ def redirect_url
123
+ links && links['redirect_url']
124
+ end
125
+
126
+ def refunds_url
127
+ links && links['refunds']
128
+ end
129
+
130
+ def settlement
131
+ links && links['settlement']
132
+ end
133
+
134
+ def refunds
135
+ Relation.new(self, Payment::Refund)
136
+ end
137
+
138
+ def chargebacks
139
+ Relation.new(self, Payment::Chargeback)
140
+ end
141
+ end
142
+ end
@@ -0,0 +1,6 @@
1
+ module Mollie
2
+ class Payment
3
+ class Chargeback < Mollie::Chargeback
4
+ end
5
+ end
6
+ end