package domain type GeneratePaymentURLRequest struct { Amount int `json:"amount"` Reason string `json:"paymentReason"` PhoneNumber string `json:"phoneNumber"` PaymentMethod string `json:"paymentMethod,omitempty"` } type InitiatePaymentRequest struct { ID string `json:"id"` Amount int `json:"amount"` Reason string `json:"paymentReason"` MerchantID string `json:"merchantId"` SignedToken string `json:"signedToken"` SuccessRedirectURL string `json:"successRedirectUrl"` FailureRedirectURL string `json:"failureRedirectUrl"` NotifyURL string `json:"notifyUrl"` CancelRedirectURL string `json:"cancelRedirectUrl"` PhoneNumber string `json:"phoneNumber"` PaymentMethod string `json:"paymentMethod,omitempty"` } type SantimPayCallbackPayload struct { TxnId string `json:"txnId"` CreatedAt string `json:"created_at"` UpdatedAt string `json:"updated_at"` ThirdPartyId string `json:"thirdPartyId"` MerId string `json:"merId"` MerName string `json:"merName"` Address string `json:"address"` Amount string `json:"amount"` Currency string `json:"currency"` Reason string `json:"reason"` Msisdn string `json:"msisdn"` AccountNumber string `json:"accountNumber"` PaymentVia string `json:"paymentVia"` RefId string `json:"refId"` SuccessRedirectUrl string `json:"successRedirectUrl"` FailureRedirectUrl string `json:"failureRedirectUrl"` Message string `json:"message"` Status string `json:"status"` ReceiverWalletID string `json:"receiverWalletID"` } type SantimTokenPayload struct { Amount int `json:"amount"` Reason string `json:"paymentReason"` PaymentMethod string `json:"paymentMethod"` PhoneNumber string `json:"phoneNumber"` ID string `json:"id,omitempty"` } type Partner struct { ID string `json:"id"` Name string `json:"name"` Description string `json:"description"` Input string `json:"input"` } // B2CPartnersResponse is the top-level response type B2CPartnersResponse struct { Partners []Partner `json:"partners"` } type SantimpayB2CWithdrawalRequest struct { ID string `json:"id"` ClientReference string `json:"clientReference"` Amount float64 `json:"amount"` Reason string `json:"reason"` MerchantID string `json:"merchantId"` SignedToken string `json:"signedToken"` ReceiverAccountNumber string `json:"receiverAccountNumber"` NotifyURL string `json:"notifyUrl"` PaymentMethod string `json:"paymentMethod"` } type TransactionStatusRequest struct { TransactionID string `json:"id"` FullParams *bool `json:"fullParams,omitempty"` }