File tree Expand file tree Collapse file tree 2 files changed +34
-3
lines changed Expand file tree Collapse file tree 2 files changed +34
-3
lines changed Original file line number Diff line number Diff line change 358358
359359defmodule Conekta.OrderCreateChargeResponse do
360360 @ moduledoc false
361- defstruct amount: nil
361+ defstruct amount: nil ,
362+ created_at: nil ,
363+ currency: nil ,
364+ customer_id: nil ,
365+ description: nil ,
366+ fee: nil ,
367+ id: nil ,
368+ livemode: nil ,
369+ object: nil ,
370+ order_id: nil ,
371+ paid_at: nil ,
372+ payment_method: nil ,
373+ status: nil
362374end
363375
364376defmodule Conekta.WebHookLogs do
Original file line number Diff line number Diff line change @@ -7,6 +7,7 @@ defmodule Conekta.Orders do
77 Endpoint: https://api.conekta.io/orders
88 """
99 alias Conekta.Client
10+ alias Conekta.ErrorResponse
1011 alias Conekta.Handler
1112 alias Conekta.OrderChargesResponse
1213 alias Conekta.OrderCreateChargeResponse
@@ -116,7 +117,7 @@ defmodule Conekta.Orders do
116117 end
117118 end
118119
119- defp parse_response ( % { "data" => % { "object" => "order" } = data } ) do
120+ defp parse_response ( % { "data" => % { "object" => "order" } = data } ) do
120121 data
121122 |> Poison . encode! ( )
122123 |> Poison . decode! ( as: % OrdersCreateResponse { } )
@@ -130,13 +131,31 @@ defmodule Conekta.Orders do
130131 |> then ( & { :ok , & 1 } )
131132 end
132133
133- defp parse_response ( data ) do
134+ defp parse_response ( % { "object" => "charge" } = data ) do
135+ data
136+ |> Poison . encode! ( )
137+ |> Poison . decode! ( as: % OrderCreateChargeResponse { } )
138+ |> then ( & { :ok , & 1 } )
139+ end
140+
141+ defp parse_response ( % { "data" => % { "object" => "charge" } = data } ) do
134142 data
135143 |> Poison . encode! ( )
136144 |> Poison . decode! ( as: % OrderCreateChargeResponse { } )
137145 |> then ( & { :ok , & 1 } )
138146 end
139147
148+ defp parse_response ( % { "object" => "error" } = data ) do
149+ data
150+ |> Poison . encode! ( )
151+ |> Poison . decode! ( as: % ErrorResponse { } )
152+ |> then ( & { :ok , & 1 } )
153+ end
154+
155+ defp parse_response ( data ) do
156+ { :ok , data }
157+ end
158+
140159 def refund ( order_id , refund ) do
141160 case Client . post_request ( "orders/" <> order_id <> "/refunds" , refund ) do
142161 { :ok , content } ->
You can’t perform that action at this time.
0 commit comments