Documentation ¶
Index ¶
- Constants
- type Banks
- type CallbackResponse
- type CheckTransactionRequest
- type CheckTransactionResponse
- type Client
- func (c *Client) Call(method, path string, header map[string]string, body io.Reader, v interface{}) error
- func (c *Client) ExecuteRequest(req *fasthttp.Request, v interface{}) error
- func (c *Client) NewRequest(method, fullPath string, headers map[string]string, body io.Reader) (*fasthttp.Request, error)
- type CoreDuitku
- func (gw *CoreDuitku) Call(method, path string, header map[string]string, body io.Reader, v interface{}) error
- func (core *CoreDuitku) CheckTransaction(orderID string) (res CheckTransactionResponse, err error)
- func (core *CoreDuitku) DisbursementInquiry(req DisbursementInquiryRequest) (res DisbursementResponse, err error)
- func (core *CoreDuitku) DisbursementTransfer(req DisbursementTransferRequest) (res DisbursementResponse, err error)
- func (core *CoreDuitku) InquiryCheckBalance() (res DisbursementResponse, err error)
- func (core *CoreDuitku) InquiryListBank() (res DisbursementResponse, err error)
- func (core *CoreDuitku) InquiryStatus(disburseID string) (res DisbursementResponse, err error)
- func (core *CoreDuitku) RequestTransaction(req TransactionRequest) (res TransactionResponse, err error)
- type DisbursementInquiryRequest
- type DisbursementResponse
- type DisbursementTransferRequest
- type ErrorResponse
- type ItemDetail
- type RedirectResponse
- type TransactionRequest
- type TransactionResponse
Constants ¶
const ( // CreditCard is a default value of credit card (VISA/Master) from duitku. CreditCard string = "VC" // BCAKlikPay is a default value of BCA KlikPay from duitku. BCAKlikPay string = "BK" // MandiriVirtualAccount is a default value of Mandiri Virtual Account from duitku. MandiriVirtualAccount string = "M1" // PermataBankVirtualAccount is a default value of Permata Bank Virtual Account from duitku. PermataBankVirtualAccount string = "BT" // ATMBersama is a default value of ATM Bersama from duitku. ATMBersama string = "A1" // CIMBNiagaVirtualAccount is a default value of CIMB Niaga Virtual Account from duitku. CIMBNiagaVirtualAccount string = "B1" // BNIVirtualAccount is a default value of BNI Virtual Account from duitku. BNIVirtualAccount string = "I1" // MaybankVirtualAccount is a default value of Maybank Virtual Account from duitku. MaybankVirtualAccount string = "VA" // Ritel is a default value of Ritel from duitku. Ritel string = "FT" // OVO is a default value of OVO from duitku. OVO string = "OV" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CallbackResponse ¶
type CallbackResponse struct { MerchantCode string `json:"merchantCode"` Amount string `json:"amount"` MerchantOrderID string `json:"merchantOrderId"` ProductDetail string `json:"productDetail"` AdditionalParam string `json:"additionalParam"` PaymentCode string `json:"paymentCode"` ResultCode string `json:"resultCode"` MerchantUserID string `json:"merchantUserId"` Reference string `json:"reference"` Signature string `json:"signature"` }
CallbackResponse struct model
type CheckTransactionRequest ¶
type CheckTransactionRequest struct { MerchantCode string `json:"merchantCode"` MerchantOrderID string `json:"merchantOrderId"` Signature string `json:"signature"` }
CheckTransactionRequest struct model
type CheckTransactionResponse ¶
type CheckTransactionResponse struct { MerchantCode string `json:"merchantCode"` Amount string `json:"amount"` Reference string `json:"reference"` Fee string `json:"fee"` StatusCode string `json:"statusCode"` StatusMessage string `json:"statusMessage"` }
CheckTransactionResponse struct model
type Client ¶
type Client struct { Host string MerchantCode string APIKey string ReturnURL string CallbackURL string DisbursementUserID int DisbursementEmail string DisbursementKey string LogLevel int Logger *log.Logger }
Client is a struct of duitku
func (*Client) Call ¶
func (c *Client) Call(method, path string, header map[string]string, body io.Reader, v interface{}) error
Call is ...
func (*Client) ExecuteRequest ¶
ExecuteRequest is ...
type CoreDuitku ¶
type CoreDuitku struct {
Client Client
}
CoreDuitku is ...
func (*CoreDuitku) Call ¶
func (gw *CoreDuitku) Call(method, path string, header map[string]string, body io.Reader, v interface{}) error
Call is used to call ...
func (*CoreDuitku) CheckTransaction ¶
func (core *CoreDuitku) CheckTransaction(orderID string) (res CheckTransactionResponse, err error)
CheckTransaction is used to check status transaction to duitku
func (*CoreDuitku) DisbursementInquiry ¶
func (core *CoreDuitku) DisbursementInquiry(req DisbursementInquiryRequest) (res DisbursementResponse, err error)
DisbursementInquiry is used to ...
func (*CoreDuitku) DisbursementTransfer ¶
func (core *CoreDuitku) DisbursementTransfer(req DisbursementTransferRequest) (res DisbursementResponse, err error)
DisbursementTransfer is used to ...
func (*CoreDuitku) InquiryCheckBalance ¶
func (core *CoreDuitku) InquiryCheckBalance() (res DisbursementResponse, err error)
InquiryCheckBalance is used to ...
func (*CoreDuitku) InquiryListBank ¶
func (core *CoreDuitku) InquiryListBank() (res DisbursementResponse, err error)
InquiryListBank is used to inquery list bank
func (*CoreDuitku) InquiryStatus ¶
func (core *CoreDuitku) InquiryStatus(disburseID string) (res DisbursementResponse, err error)
InquiryStatus is used to chech status disbursement
func (*CoreDuitku) RequestTransaction ¶
func (core *CoreDuitku) RequestTransaction(req TransactionRequest) (res TransactionResponse, err error)
RequestTransaction is used to request payment to Duitku
type DisbursementInquiryRequest ¶
type DisbursementInquiryRequest struct { UserID int `json:"userId,omitempty"` DisburseID string `json:"disburseId,omitempty"` AmountTransfer int `json:"amountTransfer,omitempty"` BankAccount string `json:"bankAccount,omitempty"` BankCode string `json:"bankCode,omitempty"` Email string `json:"email,omitempty"` Purpose string `json:"purpose,omitempty"` Timestamp int64 `json:"timestamp,omitempty"` SenderID int `json:"senderId,omitempty"` SenderName string `json:"senderName,omitempty"` Signature string `json:"signature,required"` }
DisbursementInquiryRequest struct model
type DisbursementResponse ¶
type DisbursementResponse struct { UserID int `json:"userId,omitempty"` Balance decimal.Decimal `json:"balance,omitempty"` EffectiveBalance decimal.Decimal `json:"effectiveBalance,omitempty"` Email string `json:"email,omitempty"` Reference string `json:"reference,omitempty"` BankCode string `json:"bankCode,omitempty"` BankAccount string `json:"bankAccount,omitempty"` AmountTransfer decimal.Decimal `json:"amountTransfer,omitempty"` CustRefNumber string `json:"custRefNumber,omitempty"` AccountName string `json:"accountName,omitempty"` DisburseID int `json:"disburseId,omitempty"` ResponseCode string `json:"responseCode,omitempty"` ResponseDesc string `json:"responseDesc,omitempty"` Banks []Banks `json:"banks,omitempty"` }
DisbursementResponse struct model
type DisbursementTransferRequest ¶
type DisbursementTransferRequest struct { DisburseID int `json:"disburseId"` UserID int `json:"userId"` Email string `json:"email"` BankCode string `json:"bankCode"` BankAccount string `json:"bankAccount"` AmountTransfer int `json:"amountTransfer"` AccountName string `json:"accountName"` CustRefNumber string `json:"custRefNumber"` Purpose string `json:"purpose"` Timestamp int64 `json:"timestamp"` Signature string `json:"signature"` }
DisbursementTransferRequest struct model
type ErrorResponse ¶
type ErrorResponse struct { Error error `json:"error"` Status int `json:"status"` Message string `json:"message"` }
ErrorResponse is struct response error of services
type ItemDetail ¶
type ItemDetail struct { Name string `json:"name,required"` Quantity int `json:"quantity,required"` Price int `json:"price,required"` }
ItemDetail struct models
type RedirectResponse ¶
type RedirectResponse struct { MerchantOrderID string `json:"merchantOrderId"` Reference string `json:"reference"` ResultCode string `json:"resultCode"` }
RedirectResponse struct model
type TransactionRequest ¶
type TransactionRequest struct { MerchantCode string `json:"merchantCode,required"` PaymentAmount int `json:"paymentAmount,required"` MerchantOrderID string `json:"merchantOrderId,required"` ProductDetails string `json:"productDetails,required"` Email string `json:"email,required"` AdditionalParam string `json:"additionalParam,omitempty"` PaymentMethod string `json:"paymentMethod,required"` MerchantUserInfo string `json:"merchantUserInfo,omitompty"` CustomerVAName string `json:"customerVaName,required"` PhoneNumber string `json:"phoneNumber,required"` ItemDetails []ItemDetail `json:"itemDetails,required"` ReturnURL string `json:"returnUrl,required"` CallbackURL string `json:"callbackUrl,required"` Signature string `json:"signature,required"` ExpiryPeriod int `json:"expiryPeriod,omitempty"` // 5, 10 or 60 (in minutes) }
TransactionRequest struct model
type TransactionResponse ¶
type TransactionResponse struct { MerchantCode string `json:"merchantCode"` Reference string `json:"reference"` PaymentURL string `json:"paymentUrl"` VirtualAccountNumber string `json:"vaNumber"` Amount string `json:"amount"` QRString string `json:"qrString"` }
TransactionResponse struct model