Shopifex v0.5.2 Shopifex.PaymentGuard behaviour View Source
Context behaviour responsible for fetching and using payment grants.
Link to this section Summary
Callbacks
After payment has been accepted, this function is meant to persist the
payment. Default behaviour is to create a grant schema record. charge_id
is
the external id for the Shopify charge record.
Gets a plan with a given identifier
Returns a payment record which grants access to the payment guard. Filters
where remaining_usages
is greater than 0 or has a nil value (unlimited usage).
Display the available payment plans for the user to select.
Updates the grant to reflect the usage of it in some way. Defaults to decrementing
the remaining_usages
property if it's not nil. If it is nil, the grant has
unlimited usages
Link to this section Types
Specs
Link to this section Callbacks
Specs
create_grant( shop :: Ecto.Schema.t(), plan :: plan(), charge_id :: pos_integer() ) :: {:ok, map()}
After payment has been accepted, this function is meant to persist the
payment. Default behaviour is to create a grant schema record. charge_id
is
the external id for the Shopify charge record.
Specs
get_plan(plan_id :: String.t() | pos_integer()) :: plan()
Gets a plan with a given identifier
Specs
grant_for_guard(Ecto.Schema.t(), Ecto.Schema.t()) :: Ecto.Schema.t()
Returns a payment record which grants access to the payment guard. Filters
where remaining_usages
is greater than 0 or has a nil value (unlimited usage).
Specs
show_plans( conn :: Plug.Conn.t(), guard_identifier :: String.t(), redirect_after :: String.t() ) :: Plug.Conn.t()
Display the available payment plans for the user to select.
Specs
use_grant(Ecto.Schema.t(), Ecto.Schema.t()) :: Ecto.Schema.t()
Updates the grant to reflect the usage of it in some way. Defaults to decrementing
the remaining_usages
property if it's not nil. If it is nil, the grant has
unlimited usages