Documentation
¶
Index ¶
- func Create(data *CreateParams) (*xendit.Disbursement, *xendit.Error)
- func CreateBatch(data *CreateBatchParams) (*xendit.BatchDisbursement, *xendit.Error)
- func CreateBatchWithContext(ctx context.Context, data *CreateBatchParams) (*xendit.BatchDisbursement, *xendit.Error)
- func CreateWithContext(ctx context.Context, data *CreateParams) (*xendit.Disbursement, *xendit.Error)
- func GetAvailableBanks() ([]xendit.DisbursementBank, *xendit.Error)
- func GetAvailableBanksWithContext(ctx context.Context) ([]xendit.DisbursementBank, *xendit.Error)
- func GetByExternalID(data *GetByExternalIDParams) ([]xendit.Disbursement, *xendit.Error)
- func GetByExternalIDWithContext(ctx context.Context, data *GetByExternalIDParams) ([]xendit.Disbursement, *xendit.Error)
- func GetByID(data *GetByIDParams) (*xendit.Disbursement, *xendit.Error)
- func GetByIDWithContext(ctx context.Context, data *GetByIDParams) (*xendit.Disbursement, *xendit.Error)
- type Client
- func (c *Client) Create(data *CreateParams) (*xendit.Disbursement, *xendit.Error)
- func (c *Client) CreateBatch(data *CreateBatchParams) (*xendit.BatchDisbursement, *xendit.Error)
- func (c *Client) CreateBatchWithContext(ctx context.Context, data *CreateBatchParams) (*xendit.BatchDisbursement, *xendit.Error)
- func (c *Client) CreateWithContext(ctx context.Context, data *CreateParams) (*xendit.Disbursement, *xendit.Error)
- func (c *Client) GetAvailableBanks() ([]xendit.DisbursementBank, *xendit.Error)
- func (c *Client) GetAvailableBanksWithContext(ctx context.Context) ([]xendit.DisbursementBank, *xendit.Error)
- func (c *Client) GetByExternalID(data *GetByExternalIDParams) ([]xendit.Disbursement, *xendit.Error)
- func (c *Client) GetByExternalIDWithContext(ctx context.Context, data *GetByExternalIDParams) ([]xendit.Disbursement, *xendit.Error)
- func (c *Client) GetByID(data *GetByIDParams) (*xendit.Disbursement, *xendit.Error)
- func (c *Client) GetByIDWithContext(ctx context.Context, data *GetByIDParams) (*xendit.Disbursement, *xendit.Error)
- type CreateBatchParams
- type CreateParams
- type DisbursementCallback
- type DisbursementItem
- type GetByExternalIDParams
- type GetByIDParams
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Create ¶
func Create(data *CreateParams) (*xendit.Disbursement, *xendit.Error)
Create creates new disbursement
Example ¶
xendit.Opt.SecretKey = "examplesecretkey" createData := disbursement.CreateParams{ IdempotencyKey: "disbursement" + time.Now().String(), ExternalID: "disbursement-external", BankCode: "BRI", AccountHolderName: "Michael Jackson", AccountNumber: "1234567890", Description: "Disbursement from Go", Amount: 200000, } resp, err := disbursement.Create(&createData) if err != nil { log.Fatal(err) } fmt.Printf("created disbursement: %+v\n", resp)
Output:
func CreateBatch ¶
func CreateBatch(data *CreateBatchParams) (*xendit.BatchDisbursement, *xendit.Error)
CreateBatch creates new batch disbursement
Example ¶
xendit.Opt.SecretKey = "examplesecretkey" createBatchData := disbursement.CreateBatchParams{ Reference: "batch_disbursement" + time.Now().String(), Disbursements: []disbursement.DisbursementItem{ { Amount: 200000, BankCode: "BNI", BankAccountName: "Michael Jackson", BankAccountNumber: "1234567890", Description: "Batch disbursement from Go", }, { Amount: 100000, BankCode: "BRI", BankAccountName: "Michael Jackson", BankAccountNumber: "1234567890", Description: "Batch disbursement from Go 2", }, }, } batchDisbursementResp, err := disbursement.CreateBatch(&createBatchData) if err != nil { log.Fatal(err) } fmt.Printf("created batch disbursement: %+v\n", batchDisbursementResp)
Output:
func CreateBatchWithContext ¶
func CreateBatchWithContext(ctx context.Context, data *CreateBatchParams) (*xendit.BatchDisbursement, *xendit.Error)
CreateBatchWithContext creates new batch disbursement with context
func CreateWithContext ¶
func CreateWithContext(ctx context.Context, data *CreateParams) (*xendit.Disbursement, *xendit.Error)
CreateWithContext creates new disbursement with context
func GetAvailableBanks ¶
func GetAvailableBanks() ([]xendit.DisbursementBank, *xendit.Error)
GetAvailableBanks gets available disbursement banks
Example ¶
xendit.Opt.SecretKey = "examplesecretkey" availableBanks, err := disbursement.GetAvailableBanks() if err != nil { log.Fatal(err) } fmt.Printf("available disbursement banks: %+v\n", availableBanks)
Output:
func GetAvailableBanksWithContext ¶
GetAvailableBanksWithContext gets available disbursement banks with context
func GetByExternalID ¶
func GetByExternalID(data *GetByExternalIDParams) ([]xendit.Disbursement, *xendit.Error)
GetByExternalID gets a disbursement
Example ¶
xendit.Opt.SecretKey = "examplesecretkey" getByExternalIDData := disbursement.GetByExternalIDParams{ ExternalID: "disbursement-external-id", } resps, err := disbursement.GetByExternalID(&getByExternalIDData) if err != nil { log.Fatal(err) } fmt.Printf("retrieved disbursements: %+v\n", resps)
Output:
func GetByExternalIDWithContext ¶
func GetByExternalIDWithContext(ctx context.Context, data *GetByExternalIDParams) ([]xendit.Disbursement, *xendit.Error)
GetByExternalIDWithContext gets a disbursement with context
func GetByID ¶
func GetByID(data *GetByIDParams) (*xendit.Disbursement, *xendit.Error)
GetByID gets a disbursement
Example ¶
xendit.Opt.SecretKey = "examplesecretkey" getByIDData := disbursement.GetByIDParams{ DisbursementID: "123", } resp, err := disbursement.GetByID(&getByIDData) if err != nil { log.Fatal(err.ErrorCode, err.Message, err.GetStatus()) } fmt.Printf("retrieved disbursement: %+v\n", resp)
Output:
func GetByIDWithContext ¶
func GetByIDWithContext(ctx context.Context, data *GetByIDParams) (*xendit.Disbursement, *xendit.Error)
GetByIDWithContext gets a disbursement with context
Types ¶
type Client ¶
type Client struct { Opt *xendit.Option APIRequester xendit.APIRequester }
Client is the client used to invoke invoice API.
func (*Client) Create ¶
func (c *Client) Create(data *CreateParams) (*xendit.Disbursement, *xendit.Error)
Create creates new disbursement
func (*Client) CreateBatch ¶
func (c *Client) CreateBatch(data *CreateBatchParams) (*xendit.BatchDisbursement, *xendit.Error)
CreateBatch creates new batch disbursement
func (*Client) CreateBatchWithContext ¶
func (c *Client) CreateBatchWithContext(ctx context.Context, data *CreateBatchParams) (*xendit.BatchDisbursement, *xendit.Error)
CreateBatchWithContext creates new batch disbursement with context
func (*Client) CreateWithContext ¶
func (c *Client) CreateWithContext(ctx context.Context, data *CreateParams) (*xendit.Disbursement, *xendit.Error)
CreateWithContext creates new disbursement with context
func (*Client) GetAvailableBanks ¶
func (c *Client) GetAvailableBanks() ([]xendit.DisbursementBank, *xendit.Error)
GetAvailableBanks gets available disbursement banks
func (*Client) GetAvailableBanksWithContext ¶
func (c *Client) GetAvailableBanksWithContext(ctx context.Context) ([]xendit.DisbursementBank, *xendit.Error)
GetAvailableBanksWithContext gets available disbursement banks with context
func (*Client) GetByExternalID ¶
func (c *Client) GetByExternalID(data *GetByExternalIDParams) ([]xendit.Disbursement, *xendit.Error)
GetByExternalID gets a disbursement by id
func (*Client) GetByExternalIDWithContext ¶
func (c *Client) GetByExternalIDWithContext(ctx context.Context, data *GetByExternalIDParams) ([]xendit.Disbursement, *xendit.Error)
GetByExternalIDWithContext gets a disbursement by id with context
func (*Client) GetByID ¶
func (c *Client) GetByID(data *GetByIDParams) (*xendit.Disbursement, *xendit.Error)
GetByID gets a disbursement by id
func (*Client) GetByIDWithContext ¶
func (c *Client) GetByIDWithContext(ctx context.Context, data *GetByIDParams) (*xendit.Disbursement, *xendit.Error)
GetByIDWithContext gets a disbursement by id with context
type CreateBatchParams ¶
type CreateBatchParams struct { IdempotencyKey string `json:"-"` ForUserID string `json:"-"` Reference string `json:"reference" validate:"required"` Disbursements []DisbursementItem `json:"disbursements" validate:"required"` }
CreateBatchParams contains parameters for CreateBatch
type CreateParams ¶
type CreateParams struct { IdempotencyKey string `json:"-"` ForUserID string `json:"-"` ExternalID string `json:"external_id" validate:"required"` BankCode string `json:"bank_code" validate:"required"` AccountHolderName string `json:"account_holder_name" validate:"required"` AccountNumber string `json:"account_number" validate:"required"` Description string `json:"description" validate:"required"` Amount float64 `json:"amount" validate:"required"` EmailTo []string `json:"email_to,omitempty"` EmailCC []string `json:"email_cc,omitempty"` EmailBCC []string `json:"email_bcc,omitempty"` }
CreateParams contains parameters for Create
type DisbursementCallback ¶ added in v1.0.25
type DisbursementCallback struct { ID string `json:"id"` Created string `json:"created"` Updated string `json:"updated"` ExternalID string `json:"external_id"` UserID string `json:"user_id"` Amount float64 `json:"amount"` BankCode string `json:"bank_code"` AccountHolderName string `json:"account_holder_name"` DisbursementDescription string `json:"disbursement_description"` Status string `json:"status"` FailureCode string `json:"failure_code,omitempty"` IsInstant bool `json:"is_instant,omitempty"` }
type DisbursementItem ¶
type DisbursementItem struct { Amount float64 `json:"amount" validate:"required"` BankCode string `json:"bank_code" validate:"required"` BankAccountName string `json:"bank_account_name" validate:"required"` BankAccountNumber string `json:"bank_account_number" validate:"required"` Description string `json:"description" validate:"required"` ExternalID string `json:"external_id,omitempty"` EmailTo []string `json:"email_to,omitempty"` EmailCC []string `json:"email_cc,omitempty"` EmailBCC []string `json:"email_bcc,omitempty"` }
DisbursementItem is data that contained in CreateBatch at Disbursements
type GetByExternalIDParams ¶
type GetByExternalIDParams struct { ExternalID string `json:"external_id" validate:"required"` ForUserID string `json:"-"` }
GetByExternalIDParams contains parameters for GetByExternalID
func (*GetByExternalIDParams) QueryString ¶
func (p *GetByExternalIDParams) QueryString() string
QueryString creates query string from GetByExternalIDParams, ignores nil values
type GetByIDParams ¶
type GetByIDParams struct { DisbursementID string `json:"disbursement_id" validate:"required"` ForUserID string `json:"-"` }
GetByIDParams contains parameters for GetByID