Current section
Files
Jump to
Current section
Files
lib/ex_paymob/transaction.ex
defmodule ExPaymob.Transaction do
@moduledoc """
Transaction retrieval and inquiry API.
"""
alias ExPaymob.Request
@doc """
Retrieves a transaction by ID.
## Examples
ExPaymob.Transaction.retrieve("12345")
"""
@spec retrieve(String.t() | integer(), keyword()) :: {:ok, map()} | {:error, ExPaymob.Error.t()}
def retrieve(transaction_id, opts \\ []) do
Request.new(opts)
|> Request.put_method(:get)
|> Request.put_endpoint("/api/acceptance/transactions/#{transaction_id}")
|> Request.make_request()
end
@doc """
Inquires about a transaction using merchant order ID or order ID.
## Parameters
* `merchant_order_id` - Your merchant order reference
* `order_id` - Paymob order ID
"""
@spec inquire(map(), keyword()) :: {:ok, map()} | {:error, ExPaymob.Error.t()}
def inquire(params, opts \\ []) do
Request.new(opts)
|> Request.put_method(:post)
|> Request.put_endpoint("/api/ecommerce/orders/transaction_inquiry")
|> Request.put_params(params)
|> Request.make_request()
end
end