Packages

Library to create payment gateways

Current section

Files

Jump to
ex_payments_template lib base_payment credit_card_behaviour.ex
Raw

lib/base_payment/credit_card_behaviour.ex

defmodule BasePayment.CreditCardBehaviour do
@moduledoc """
Credit card behaviour for payment gateways.
"""
alias BasePayment.{CardTokenPayload, CreditCardPayload, SuccessResponse, ErrorResponse}
@callback create_token(payload :: %CardTokenPayload{}) :: {:ok, %SuccessResponse{}} | {:error, %ErrorResponse{}}
@callback process_payment(payload :: %CreditCardPayload{}) :: {:ok, %SuccessResponse{}} | {:error, %ErrorResponse{}}
end