func (c Client) Update(id string, params *stripe.RecipientParams) (*stripe.Recipient, error) { var body *url.Values var commonParams *stripe.Params if params != nil { commonParams = ¶ms.Params body = &url.Values{} if len(params.Name) > 0 { body.Add("name", params.Name) } if params.Bank != nil { if len(params.Bank.Token) > 0 { body.Add("bank_account", params.Bank.Token) } else { params.Bank.AppendDetails(body) } } if len(params.Token) > 0 { body.Add("card", params.Token) } else if params.Card != nil { params.Card.AppendDetails(body, true) } if len(params.TaxID) > 0 { body.Add("tax_id", params.TaxID) } if len(params.DefaultCard) > 0 { body.Add("default_card", params.DefaultCard) } if len(params.Email) > 0 { body.Add("email", params.Email) } if len(params.Desc) > 0 { body.Add("description", params.Desc) } params.AppendTo(body) } recipient := &stripe.Recipient{} err := c.B.Call("POST", "/recipients/"+id, c.Key, body, commonParams, recipient) return recipient, err }
func (c Client) Get(id string, params *stripe.RecipientParams) (*stripe.Recipient, error) { var body *url.Values var commonParams *stripe.Params if params != nil { commonParams = ¶ms.Params body = &url.Values{} params.AppendTo(body) } recipient := &stripe.Recipient{} err := c.B.Call("GET", "/recipients/"+id, c.Key, body, commonParams, recipient) return recipient, err }
func (c Client) New(params *stripe.RecipientParams) (*stripe.Recipient, error) { body := &url.Values{ "name": {params.Name}, "type": {string(params.Type)}, } if params.Bank != nil { if len(params.Bank.Token) > 0 { body.Add("bank_account", params.Bank.Token) } else { params.Bank.AppendDetails(body) } } if len(params.Token) > 0 { body.Add("card", params.Token) } else if params.Card != nil { params.Card.AppendDetails(body, true) } if len(params.TaxID) > 0 { body.Add("tax_id", params.TaxID) } if len(params.Email) > 0 { body.Add("email", params.Email) } if len(params.Desc) > 0 { body.Add("description", params.Desc) } params.AppendTo(body) recipient := &stripe.Recipient{} err := c.B.Call("POST", "/recipients", c.Key, body, ¶ms.Params, recipient) return recipient, err }