Documentation ¶
Overview ¶
Package checkout implements all checkout related logic and includes all checkout related models.
Models included in this package:
PDT: Payment Data Transfer IPN: Instant Payment Notification Checkout: YenePay's Payment Order
Index ¶
- type CartCheckoutItem
- type CartParams
- type ExpressCheckoutItem
- type ExpressParams
- type Option
- type OptionsParams
- type PdtParams
- type PdtRequest
- type PdtResponse
- type Type
- type YenePayCheckOut
- func (checkout *YenePayCheckOut) CartCheckoutURL(checkoutOptions *Option, cartItems []CartCheckoutItem) string
- func (checkout *YenePayCheckOut) ExpressCheckoutURL(checkoutOptions *Option, checkoutItem *ExpressCheckoutItem) string
- func (checkout *YenePayCheckOut) IsIPNAuthentic(ipnModel interface{}, useSandbox bool) (bool, error)
- func (checkout *YenePayCheckOut) RequestPDT(pdtReq PdtRequest) (interface{}, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CartCheckoutItem ¶ added in v0.5.0
CartCheckoutItem - model
func NewCartCheckoutItem ¶ added in v0.5.0
func NewCartCheckoutItem(params CartParams) *CartCheckoutItem
NewCartCheckoutItem - CartCheckoutItem Constructor
type CartParams ¶ added in v0.5.0
type CartParams CartCheckoutItem
CartParams - argument for constructor
type ExpressCheckoutItem ¶ added in v0.5.0
type ExpressCheckoutItem struct { ItemID string `validate:"required,min=1"` ItemName string `validate:"required,min=1"` UnitPrice float64 `validate:"min=0.1"` Quantity int `validate:"min=1"` Discount float64 `validate:"min=0.0"` HandlingFee float64 `validate:"min=0.0"` DeliveryFee float64 `validate:"min=0.0"` Tax1 float64 `validate:"min=0.0"` Tax2 float64 `validate:"min=0.0"` }
ExpressCheckoutItem - model
func NewExpressCheckoutItem ¶ added in v0.5.0
func NewExpressCheckoutItem( params ExpressParams, ) *ExpressCheckoutItem
NewExpressCheckoutItem - ExpressCheckoutItem Constructor
type ExpressParams ¶ added in v0.5.0
type ExpressParams ExpressCheckoutItem
ExpressParams - argument type for constructor
type Option ¶ added in v0.6.0
type Option struct { UseSandbox bool Process Type MerchantID string `validate:"required"` SuccessURL string CancelURL string IPNURL string FailureURL string ExpiresAfter int MerchantOrderID string TotalItemsDeliveryFee float64 TotalItemsTax1 float64 TotalItemsTax2 float64 TotalItemsDiscount float64 TotalItemsHandlingFee float64 }
Option - checkout option model
func NewOption ¶ added in v0.6.0
func NewOption( params OptionsParams, ) *Option
NewOption - Option Constructor
func (*Option) GetExpressFields ¶ added in v0.6.0
func (option *Option) GetExpressFields() interface{}
GetExpressFields - Return Only Required Fields for Express Checkout I.e. Exclude all Fields that start with 'Total'
type OptionsParams ¶ added in v0.5.0
type OptionsParams Option
OptionsParams - arugment for constructor
type PdtParams ¶ added in v0.5.0
type PdtParams PdtRequest
PdtParams - arguments for PDT request constructor.
type PdtRequest ¶ added in v0.6.0
type PdtRequest struct { PdtToken string `validate:"required,min=1"` TransactionID string MerchantOrderID string UseSandbox bool `json:"-"` RequestType string }
PdtRequest - request model for transaction verification
func NewPdtRequest ¶ added in v0.6.0
func NewPdtRequest( params PdtParams, ) *PdtRequest
NewPdtRequest - PDT Constructor
type PdtResponse ¶ added in v0.6.0
type PdtResponse struct { PdtToken string `validate:"required,min=1"` TransactionID string MerchantOrderID string UseSandbox bool `json:"-"` RequestType string }
PdtResponse - result of transaction verificaiton(pdt request)
type Type ¶ added in v0.6.0
type Type string
Type - model
const CartCheckout Type = "Cart"
CartCheckout - Cart Checkout Type
const ExpressCheckout Type = "Express"
ExpressCheckout - Express Checkout Type
type YenePayCheckOut ¶ added in v0.3.0
type YenePayCheckOut struct { }
YenePayCheckOut - main checkout model
func NewYenePayCheckOut ¶ added in v0.3.0
func NewYenePayCheckOut() *YenePayCheckOut
NewYenePayCheckOut - YenePayCheckOut Constructor
func (*YenePayCheckOut) CartCheckoutURL ¶ added in v0.6.0
func (checkout *YenePayCheckOut) CartCheckoutURL(checkoutOptions *Option, cartItems []CartCheckoutItem) string
CartCheckoutURL - Generate Checkout URL for Cart Checkout
func (*YenePayCheckOut) ExpressCheckoutURL ¶ added in v0.6.0
func (checkout *YenePayCheckOut) ExpressCheckoutURL(checkoutOptions *Option, checkoutItem *ExpressCheckoutItem) string
ExpressCheckoutURL - Generate Checkout URL for Express Checkout
func (*YenePayCheckOut) IsIPNAuthentic ¶ added in v0.5.0
func (checkout *YenePayCheckOut) IsIPNAuthentic(ipnModel interface{}, useSandbox bool) (bool, error)
IsIPNAuthentic - check IPN authenticity (WIP)
func (*YenePayCheckOut) RequestPDT ¶ added in v0.5.0
func (checkout *YenePayCheckOut) RequestPDT(pdtReq PdtRequest) (interface{}, error)
RequestPDT - Request PDT model (WIP)