paypal

package
v1.5.83 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 13, 2022 License: Apache-2.0 Imports: 10 Imported by: 3

Documentation

Overview

@Author: wzy @Time: 2022/6/7

Index

Constants

View Source
const (
	Success = 0

	HeaderAuthorization       = "Authorization" // 请求头Auth
	AuthorizationPrefixBasic  = "Basic "
	AuthorizationPrefixBearer = "Bearer "
)

Variables

This section is empty.

Functions

This section is empty.

Types

type AccessToken

type AccessToken struct {
	Scope       string `json:"scope"`
	AccessToken string `json:"access_token"`
	TokenType   string `json:"token_type"`
	Appid       string `json:"app_id"`
	ExpiresIn   int    `json:"expires_in"`
	Nonce       string `json:"nonce"`
}

type Address

type Address struct {
	AddressLine1 string `json:"address_line_1"`
	AddressLine2 string `json:"address_line_2"`
	AdminArea1   string `json:"admin_area_1"`
	AdminArea2   string `json:"admin_area_2"`
	PostalCode   string `json:"postal_code"`
	CountryCode  string `json:"country_code"`
}

type Amount

type Amount struct {
	CurrencyCode string `json:"currency_code"`
	Value        string `json:"value"`
}

type AuthenticationResult

type AuthenticationResult struct {
	LiabilityShift string        `json:"liability_shift"`
	ThreeDSecure   *ThreeDSecure `json:"three_d_secure,omitempty"`
}

type Authorization

type Authorization struct {
	ProcessorResponse *Processor `json:"processor_response,omitempty"`
}

type Bancontact added in v1.5.80

type Bancontact struct {
	Bic            string `json:"bic,omitempty"`
	CardLastDigits string `json:"card_last_digits,omitempty"`
	CountryCode    string `json:"country_code,omitempty"`
	IbanLastChars  string `json:"iban_last_chars,omitempty"`
	Name           string `json:"name,omitempty"`
}

type BatchHeader added in v1.5.80

type BatchHeader struct {
	PayoutBatchId     string             `json:"payout_batch_id"`
	BatchStatus       string             `json:"batch_status"` // DENIED、PENDING、PROCESSING、SUCCESS、CANCELED
	TimeCreated       string             `json:"time_created,omitempty"`
	TimeCompleted     string             `json:"time_completed,omitempty"`
	SenderBatchHeader *SenderBatchHeader `json:"sender_batch_header"`
	Amount            *V1Amount          `json:"amount,omitempty"`
	Fees              *V1Amount          `json:"fees,omitempty"`
}

type BatchPayout added in v1.5.80

type BatchPayout struct {
	BatchHeader *BatchHeader `json:"batch_header"`
	Links       []*Link      `json:"links,omitempty"`
}

type BillingCycles added in v1.5.79

type BillingCycles struct {
	Frequency     *Frequency     `json:"frequency"`
	TenureType    string         `json:"tenure_type"`
	Sequence      int            `json:"sequence"`
	TotalCycles   int            `json:"total_cycles"`
	PricingScheme *PricingScheme `json:"pricing_scheme"`
}

type BillingDetail added in v1.5.79

type BillingDetail struct {
	ID          string  `json:"id"`
	ProductID   string  `json:"product_id"`
	Name        string  `json:"name"`
	Status      string  `json:"status"`
	Description string  `json:"description"`
	UsageType   string  `json:"usage_type"`
	CreateTime  string  `json:"create_time"`
	Links       []*Link `json:"links"`
}

type Blik added in v1.5.80

type Blik struct {
	CountryCode string `json:"country_code,omitempty"`
	Email       string `json:"email,omitempty"`
	Name        string `json:"name,omitempty"`
}

type CancelUnclaimedPayoutItemRsp added in v1.5.80

type CancelUnclaimedPayoutItemRsp struct {
	Code          int               `json:"-"`
	Error         string            `json:"-"`
	ErrorResponse *ErrorResponse    `json:"-"`
	Response      *PayoutItemDetail `json:"response,omitempty"`
}

type Capture

type Capture struct {
	Id                        string                     `json:"id,omitempty"`
	Status                    string                     `json:"status,omitempty"`
	StatusDetails             *StatusDetails             `json:"status_details,omitempty"`
	Amount                    *Amount                    `json:"amount,omitempty"`
	FinalCapture              bool                       `json:"final_capture,omitempty"`
	DisbursementMode          string                     `json:"disbursement_mode,omitempty"`
	SellerProtection          *SellerProtection          `json:"seller_protection,omitempty"`
	SellerReceivableBreakdown *SellerReceivableBreakdown `json:"seller_receivable_breakdown,omitempty"`
	Links                     []*Link                    `json:"links,omitempty"`
	CreateTime                string                     `json:"create_time,omitempty"`
	UpdateTime                string                     `json:"update_time,omitempty"`
}

type Card

type Card struct {
	Name                 string                `json:"name"`
	BillingAddress       *Address              `json:"billing_address,omitempty"`
	LastDigits           string                `json:"last_digits"`
	Brand                string                `json:"brand"`
	Type                 string                `json:"type"` // The payment card type:CREDIT、DEBIT、PREPAID、UNKNOWN
	AuthenticationResult *AuthenticationResult `json:"authentication_result,omitempty"`
}

type Client

type Client struct {
	Clientid    string
	Secret      string
	Appid       string
	AccessToken string
	ExpiresIn   int

	IsProd bool

	DebugSwitch gopay.DebugSwitch
	// contains filtered or unexported fields
}

Client PayPal支付客

func NewClient

func NewClient(clientid, secret string, isProd bool) (client *Client, err error)

NewClient 初始化PayPal支付客户端

func (Client) CancelUnclaimedPayoutItem added in v1.5.80

func (c Client) CancelUnclaimedPayoutItem(ctx context.Context, payoutItemId string) (ppRsp *CancelUnclaimedPayoutItemRsp, err error)

取消批量支付中收款人无PayPal账号的项目(Cancel Unclaimed Payout Item) Code = 0 is success 文档:https://developer.paypal.com/docs/api/payments.payouts-batch/v1/#payouts-item_cancel

func (*Client) CreateBatchPayout added in v1.5.80

func (c *Client) CreateBatchPayout(ctx context.Context, bm gopay.BodyMap) (ppRsp *CreateBatchPayoutRsp, err error)

创建批量支出(Create batch payout) Code = 0 is success 文档:https://developer.paypal.com/docs/api/payments.payouts-batch/v1/#payouts_post

func (*Client) CreateBillingPlan added in v1.5.79

func (c *Client) CreateBillingPlan(ctx context.Context, bm gopay.BodyMap) (ppRsp *CreateBillingRsp, err error)

创建订阅计划(CreateBillingPlan) Code = 0 is success 文档:https://developer.paypal.com/docs/api/subscriptions/v1/#plans_create

func (*Client) CreateOrder

func (c *Client) CreateOrder(ctx context.Context, bm gopay.BodyMap) (ppRsp *CreateOrderRsp, err error)

创建订单(Create order) Code = 0 is success 文档:https://developer.paypal.com/docs/api/orders/v2/#orders_create

func (*Client) GetAccessToken

func (c *Client) GetAccessToken() (token *AccessToken, err error)

获取AccessToken(Get an access token) 文档:https://developer.paypal.com/docs/api/reference/get-an-access-token

func (*Client) OrderAuthorize

func (c *Client) OrderAuthorize(ctx context.Context, orderId string, bm gopay.BodyMap) (ppRsp *OrderAuthorizeRsp, err error)

订单支付授权(Authorize payment for order) Code = 0 is success 文档:https://developer.paypal.com/docs/api/orders/v2/#orders_authorize

func (*Client) OrderCapture

func (c *Client) OrderCapture(ctx context.Context, orderId string, bm gopay.BodyMap) (ppRsp *OrderCaptureRsp, err error)

订单支付捕获(Capture payment for order) Code = 0 is success 文档:https://developer.paypal.com/docs/api/orders/v2/#orders_capture

func (*Client) OrderConfirm added in v1.5.75

func (c *Client) OrderConfirm(ctx context.Context, orderId string, bm gopay.BodyMap) (ppRsp *OrderConfirmRsp, err error)

订单支付确认(Confirm the Order) Code = 0 is success 文档:https://developer.paypal.com/docs/api/orders/v2/#orders_confirm

func (*Client) OrderDetail

func (c *Client) OrderDetail(ctx context.Context, orderId string, bm gopay.BodyMap) (ppRsp *OrderDetailRsp, err error)

订单详情(Show order details) Code = 0 is success 文档:https://developer.paypal.com/docs/api/orders/v2/#orders_get

func (*Client) PaymentAuthorizeCapture

func (c *Client) PaymentAuthorizeCapture(ctx context.Context, authorizationId string, bm gopay.BodyMap) (ppRsp *PaymentAuthorizeCaptureRsp, err error)

支付授权捕获(Capture authorized payment) Code = 0 is success 文档:https://developer.paypal.com/docs/api/payments/v2/#authorizations_capture

func (*Client) PaymentAuthorizeDetail

func (c *Client) PaymentAuthorizeDetail(ctx context.Context, authorizationId string) (ppRsp *PaymentAuthorizeDetailRsp, err error)

支付授权详情(Show details for authorized payment) Code = 0 is success 文档:https://developer.paypal.com/docs/api/payments/v2/#authorizations_get

func (*Client) PaymentAuthorizeVoid

func (c *Client) PaymentAuthorizeVoid(ctx context.Context, authorizationId string) (ppRsp *EmptyRsp, err error)

作废支付授权(Void authorized payment) Code = 0 is success 文档:https://developer.paypal.com/docs/api/payments/v2/#authorizations_void

func (*Client) PaymentCaptureDetail

func (c *Client) PaymentCaptureDetail(ctx context.Context, captureId string) (ppRsp *PaymentCaptureDetailRsp, err error)

支付捕获详情(Show captured payment details) Code = 0 is success 文档:https://developer.paypal.com/docs/api/payments/v2/#captures_get

func (*Client) PaymentCaptureRefund

func (c *Client) PaymentCaptureRefund(ctx context.Context, captureId string, bm gopay.BodyMap) (ppRsp *PaymentCaptureRefundRsp, err error)

支付捕获退款(Refund captured payment) Code = 0 is success 文档:https://developer.paypal.com/docs/api/payments/v2/#captures_refund

func (*Client) PaymentReauthorize

func (c *Client) PaymentReauthorize(ctx context.Context, authorizationId string, bm gopay.BodyMap) (ppRsp *PaymentReauthorizeRsp, err error)

重新授权支付授权(Reauthorize authorized payment) Note:This request is currently not supported for Partner use cases. 文档:https://developer.paypal.com/docs/api/payments/v2/#authorizations_reauthorize

func (*Client) PaymentRefundDetail

func (c *Client) PaymentRefundDetail(ctx context.Context, refundId string) (ppRsp *PaymentRefundDetailRsp, err error)

支付退款详情(Show refund details) Code = 0 is success 文档:https://developer.paypal.com/docs/api/payments/v2/#refunds_get

func (*Client) SetBodySize added in v1.5.82

func (c *Client) SetBodySize(sizeMB int)

SetBodySize 设置http response body size(MB)

func (*Client) ShowPayoutBatchDetails added in v1.5.80

func (c *Client) ShowPayoutBatchDetails(ctx context.Context, payoutBatchId string, bm gopay.BodyMap) (ppRsp *PayoutBatchDetailRsp, err error)

批量支出详情(Show payout batch details) Code = 0 is success 文档:https://developer.paypal.com/docs/api/payments.payouts-batch/v1/#payouts_get

func (Client) ShowPayoutItemDetails added in v1.5.80

func (c Client) ShowPayoutItemDetails(ctx context.Context, payoutItemId string) (ppRsp *PayoutItemDetailRsp, err error)

批量支出项目详情(Show Payout Item Details) Code = 0 is success 文档:https://developer.paypal.com/docs/api/payments.payouts-batch/v1/#payouts-item_get

func (*Client) UpdateOrder

func (c *Client) UpdateOrder(ctx context.Context, orderId string, patchs []*Patch) (ppRsp *EmptyRsp, err error)

更新订单(Update order) Code = 0 is success 文档:https://developer.paypal.com/docs/api/orders/v2/#orders_patch

type CreateBatchPayoutRsp added in v1.5.80

type CreateBatchPayoutRsp struct {
	Code          int            `json:"-"`
	Error         string         `json:"-"`
	ErrorResponse *ErrorResponse `json:"-"`
	Response      *BatchPayout   `json:"response,omitempty"`
}

type CreateBillingRsp added in v1.5.79

type CreateBillingRsp struct {
	Code          int            `json:"-"`
	Error         string         `json:"-"`
	ErrorResponse *ErrorResponse `json:"-"`
	Response      *BillingDetail `json:"response,omitempty"`
}

type CreateOrderRsp

type CreateOrderRsp struct {
	Code          int            `json:"-"`
	Error         string         `json:"-"`
	ErrorResponse *ErrorResponse `json:"-"`
	Response      *OrderDetail   `json:"response,omitempty"`
}

type EmptyRsp

type EmptyRsp struct {
	Code          int            `json:"-"`
	Error         string         `json:"-"`
	ErrorResponse *ErrorResponse `json:"-"`
}

type Eps added in v1.5.80

type Eps struct {
	Bic         string `json:"bic,omitempty"`
	CountryCode string `json:"country_code,omitempty"`
	Name        string `json:"name,omitempty"`
}

type ErrorDetail

type ErrorDetail struct {
	Issue       string `json:"issue,omitempty"`
	Field       string `json:"field,omitempty"`
	Value       string `json:"value,omitempty"`
	Description string `json:"description,omitempty"`
	Location    string `json:"location,omitempty"`
}

type ErrorResponse

type ErrorResponse struct {
	Name    string        `json:"name,omitempty"`
	Message string        `json:"message,omitempty"`
	DebugId string        `json:"debug_id,omitempty"`
	Details []ErrorDetail `json:"details,omitempty"`
	Links   []Link        `json:"links,omitempty"`
}

type Errors added in v1.5.80

type Errors struct {
	Name            string `json:"name"`
	Message         string `json:"message"`
	InformationLink string `json:"information_link"`
}

type ExchangeRate

type ExchangeRate struct {
	SourceCurrency string `json:"source_currency,omitempty"`
	TargetCurrency string `json:"target_currency,omitempty"`
	Value          string `json:"value,omitempty"`
}

type FixedPrice added in v1.5.79

type FixedPrice struct {
	Value        string `json:"value"`
	CurrencyCode string `json:"currency_code"`
}

type Frequency added in v1.5.79

type Frequency struct {
	IntervalUnit  string `json:"interval_unit"`
	IntervalCount int    `json:"interval_count"`
}

type Giropay added in v1.5.80

type Giropay struct {
	Bic         string `json:"bic,omitempty"`
	CountryCode string `json:"country_code,omitempty"`
	Name        string `json:"name,omitempty"`
}

type Ideal added in v1.5.80

type Ideal struct {
	Bic           string `json:"bic,omitempty"`
	CountryCode   string `json:"country_code,omitempty"`
	IbanLastChars string `json:"iban_last_chars,omitempty"`
	Name          string `json:"name,omitempty"`
}

type Item

type Item struct {
	Name        string  `json:"name,omitempty"`
	UnitAmount  *Amount `json:"unit_amount,omitempty"`
	Tax         *Amount `json:"tax,omitempty"`
	Quantity    string  `json:"quantity,omitempty"`
	Description string  `json:"description,omitempty"`
	Sku         string  `json:"sku,omitempty"`
	Category    string  `json:"category,omitempty"`
}
type Link struct {
	Href   string `json:"href,omitempty"`
	Rel    string `json:"rel,omitempty"`
	Method string `json:"method,omitempty"` // Possible values: GET,POST,PUT,DELETE,HEAD,CONNECT,OPTIONS,PATCH
}

type Mybank added in v1.5.80

type Mybank struct {
	Bic           string `json:"bic,omitempty"`
	CountryCode   string `json:"country_code,omitempty"`
	IbanLastChars string `json:"iban_last_chars,omitempty"`
	Name          string `json:"name,omitempty"`
}

type Name

type Name struct {
	Prefix     string `json:"prefix,omitempty"`
	GivenName  string `json:"given_name,omitempty"`
	Surname    string `json:"surname,omitempty"`
	MiddleName string `json:"middle_name,omitempty"`
	Suffix     string `json:"suffix,omitempty"`
	FullName   string `json:"full_name,omitempty"`
}

type NetAmountBreakdown

type NetAmountBreakdown struct {
	PayableAmount   *Amount       `json:"payable_amount,omitempty"`
	ConvertedAmount *Amount       `json:"converted_amount,omitempty"`
	ExchangeRate    *ExchangeRate `json:"exchange_rate,omitempty"`
}

type OrderAuthorizeRsp

type OrderAuthorizeRsp struct {
	Code          int            `json:"-"`
	Error         string         `json:"-"`
	ErrorResponse *ErrorResponse `json:"-"`
	Response      *OrderDetail   `json:"response,omitempty"`
}

type OrderCaptureRsp

type OrderCaptureRsp struct {
	Code          int            `json:"-"`
	Error         string         `json:"-"`
	ErrorResponse *ErrorResponse `json:"-"`
	Response      *OrderDetail   `json:"response,omitempty"`
}

type OrderConfirmRsp added in v1.5.75

type OrderConfirmRsp struct {
	Code          int            `json:"-"`
	Error         string         `json:"-"`
	ErrorResponse *ErrorResponse `json:"-"`
	Response      *OrderDetail   `json:"response,omitempty"`
}

type OrderDetail

type OrderDetail struct {
	Id                    string          `json:"id,omitempty"`
	Status                string          `json:"status,omitempty"` // CREATED、SAVED、APPROVED、VOIDED、COMPLETED、PAYER_ACTION_REQUIRED
	PaymentSource         *PaymentSource  `json:"payment_source,omitempty"`
	Intent                string          `json:"intent,omitempty"`
	ProcessingInstruction string          `json:"processing_instruction,omitempty"`
	Payer                 *Payer          `json:"payer,omitempty"`
	PurchaseUnits         []*PurchaseUnit `json:"purchase_units,omitempty"`
	Links                 []*Link         `json:"links,omitempty"`
	CreateTime            string          `json:"create_time,omitempty"`
	UpdateTime            string          `json:"update_time,omitempty"`
}

type OrderDetailRsp

type OrderDetailRsp struct {
	Code          int            `json:"-"`
	Error         string         `json:"-"`
	ErrorResponse *ErrorResponse `json:"-"`
	Response      *OrderDetail   `json:"response,omitempty"`
}

type P24 added in v1.5.80

type P24 struct {
	CountryCode       string `json:"country_code,omitempty"`
	Email             string `json:"email,omitempty"`
	MethodDescription string `json:"method_description,omitempty"`
	MethodId          string `json:"method_id,omitempty"`
	Name              string `json:"name,omitempty"`
	PaymentDescriptor string `json:"payment_descriptor,omitempty"`
}

type Patch

type Patch struct {
	Op    string      `json:"op"` // The possible values are: add、remove、replace、move、copy、test
	Path  string      `json:"path,omitempty"`
	Value interface{} `json:"value"` // The value to apply. The remove operation does not require a value.
	From  string      `json:"from,omitempty"`
}

type Payee

type Payee struct {
	EmailAddress string `json:"email_address,omitempty"`
	MerchantId   string `json:"merchant_id,omitempty"`
}

type Payer

type Payer struct {
	Name         *Name    `json:"name"`
	Phone        *Phone   `json:"phone,omitempty"`
	BirthDate    string   `json:"birth_date"`
	TaxInfo      *TaxInfo `json:"tax_info,omitempty"`
	EmailAddress string   `json:"email_address"`
	PayerId      string   `json:"payer_id"`
	Address      *Address `json:"address"`
}

type PaymentAuthorizeCapture

type PaymentAuthorizeCapture struct {
	Id                        string                     `json:"id,omitempty"`
	Status                    string                     `json:"status,omitempty"` // COMPLETED、DECLINED、PARTIALLY_REFUNDED、PENDING、REFUNDED、FAILED
	StatusDetails             *StatusDetails             `json:"status_details,omitempty"`
	Amount                    *Amount                    `json:"amount,omitempty"`
	InvoiceId                 string                     `json:"invoice_id,omitempty"`
	CustomId                  string                     `json:"custom_id,omitempty"`
	FinalCapture              bool                       `json:"final_capture,omitempty"`
	SellerProtection          *SellerProtection          `json:"seller_protection,omitempty"`
	SellerReceivableBreakdown *SellerReceivableBreakdown `json:"seller_receivable_breakdown,omitempty"`
	DisbursementMode          string                     `json:"disbursement_mode,omitempty"`
	Links                     []*Link                    `json:"links,omitempty"`
	ProcessorResponse         *Processor                 `json:"processor_response,omitempty"`
	CreateTime                string                     `json:"create_time,omitempty"`
	UpdateTime                string                     `json:"update_time,omitempty"`
}

type PaymentAuthorizeCaptureRsp

type PaymentAuthorizeCaptureRsp struct {
	Code          int                      `json:"-"`
	Error         string                   `json:"-"`
	ErrorResponse *ErrorResponse           `json:"-"`
	Response      *PaymentAuthorizeCapture `json:"response,omitempty"`
}

type PaymentAuthorizeDetail

type PaymentAuthorizeDetail struct {
	Id               string            `json:"id,omitempty"`
	Status           string            `json:"status,omitempty"` // CREATED、CAPTURED、DENIED、EXPIRED、PARTIALLY_CAPTURED、PARTIALLY_CREATED、VOIDED、PENDING
	StatusDetails    *StatusDetails    `json:"status_details,omitempty"`
	Amount           *Amount           `json:"amount,omitempty"`
	InvoiceId        string            `json:"invoice_id,omitempty"`
	CustomId         string            `json:"custom_id,omitempty"`
	SellerProtection *SellerProtection `json:"seller_protection,omitempty"`
	Links            []*Link           `json:"links,omitempty"`
	ExpirationTime   string            `json:"expiration_time,omitempty"`
	CreateTime       string            `json:"create_time,omitempty"`
	UpdateTime       string            `json:"update_time,omitempty"`
}

type PaymentAuthorizeDetailRsp

type PaymentAuthorizeDetailRsp struct {
	Code          int                     `json:"-"`
	Error         string                  `json:"-"`
	ErrorResponse *ErrorResponse          `json:"-"`
	Response      *PaymentAuthorizeDetail `json:"response,omitempty"`
}

type PaymentCaptureDetailRsp

type PaymentCaptureDetailRsp struct {
	Code          int                      `json:"-"`
	Error         string                   `json:"-"`
	ErrorResponse *ErrorResponse           `json:"-"`
	Response      *PaymentAuthorizeCapture `json:"response,omitempty"`
}

type PaymentCaptureRefund

type PaymentCaptureRefund struct {
	Id                     string                  `json:"id,omitempty"`
	Status                 string                  `json:"status,omitempty"` // CANCELLED、PENDING、COMPLETED
	StatusDetails          *StatusDetails          `json:"status_details,omitempty"`
	Amount                 *Amount                 `json:"amount,omitempty"`
	InvoiceId              string                  `json:"invoice_id,omitempty"`
	NoteToPayer            string                  `json:"note_to_payer,omitempty"`
	SellerPayableBreakdown *SellerPayableBreakdown `json:"seller_payable_breakdown,omitempty"`
	Links                  []*Link                 `json:"links,omitempty"`
	CreateTime             string                  `json:"create_time,omitempty"`
	UpdateTime             string                  `json:"update_time,omitempty"`
}

type PaymentCaptureRefundRsp

type PaymentCaptureRefundRsp struct {
	Code          int                   `json:"-"`
	Error         string                `json:"-"`
	ErrorResponse *ErrorResponse        `json:"-"`
	Response      *PaymentCaptureRefund `json:"response,omitempty"`
}

type PaymentInstruction

type PaymentInstruction struct {
	PlatformFees       []*PlatformFee `json:"platform_fees,omitempty"`
	DisbursementMode   string         `json:"disbursement_mode,omitempty"`
	PayeePricingTierId string         `json:"payee_pricing_tier_id,omitempty"`
}

type PaymentPreferences added in v1.5.79

type PaymentPreferences struct {
	AutoBillOutstanding     bool   `json:"auto_bill_outstanding"`
	SetupFeeFailureAction   string `json:"setup_fee_failure_action"`
	PaymentFailureThreshold int    `json:"payment_failure_threshold"`
}

type PaymentReauthorizeRsp

type PaymentReauthorizeRsp struct {
	Code          int                     `json:"-"`
	Error         string                  `json:"-"`
	ErrorResponse *ErrorResponse          `json:"-"`
	Response      *PaymentAuthorizeDetail `json:"response,omitempty"`
}

type PaymentRefundDetailRsp

type PaymentRefundDetailRsp struct {
	Code          int                   `json:"-"`
	Error         string                `json:"-"`
	ErrorResponse *ErrorResponse        `json:"-"`
	Response      *PaymentCaptureRefund `json:"response,omitempty"`
}

type PaymentSource

type PaymentSource struct {
	Bancontact *Bancontact `json:"bancontact,omitempty"`
	Blik       *Blik       `json:"blik,omitempty"`
	Card       *Card       `json:"card,omitempty"`
	Eps        *Eps        `json:"eps,omitempty"`
	Giropay    *Giropay    `json:"giropay,omitempty"`
	Ideal      *Ideal      `json:"ideal,omitempty"`
	Mybank     *Mybank     `json:"mybank,omitempty"`
	P24        *P24        `json:"p24,omitempty"`
	Sofort     *Sofort     `json:"sofort,omitempty"`
	Trustly    *Trustly    `json:"trustly,omitempty"`
}

type Payments

type Payments struct {
	Authorizations []*Authorization `json:"authorizations,omitempty"`
	Captures       []*Capture       `json:"captures,omitempty"`
	Refunds        []*Refund        `json:"refunds,omitempty"`
}

type PayoutBatchDetail added in v1.5.80

type PayoutBatchDetail struct {
	BatchHeader *BatchHeader        `json:"batch_header"`
	Items       []*PayoutItemDetail `json:"items"`
	Links       []*Link             `json:"links"`
	TotalItems  int64               `json:"total_items,omitempty"`
	TotalPage   int64               `json:"total_page,omitempty"`
}

type PayoutBatchDetailRsp added in v1.5.80

type PayoutBatchDetailRsp struct {
	Code          int                `json:"-"`
	Error         string             `json:"-"`
	ErrorResponse *ErrorResponse     `json:"-"`
	Response      *PayoutBatchDetail `json:"response,omitempty"`
}

type PayoutCurrencyConversion added in v1.5.80

type PayoutCurrencyConversion struct {
	ExchangeRate string    `json:"exchange_rate"`
	FromAmount   *V1Amount `json:"from_amount"`
	ToAmount     *V1Amount `json:"to_amount"`
}

type PayoutItem added in v1.5.80

type PayoutItem struct {
	RecipientType string    `json:"recipient_type"`
	Amount        *V1Amount `json:"amount"`
	Note          string    `json:"note"`
	Receiver      string    `json:"receiver"`
	SenderItemId  string    `json:"sender_item_id"`
}

type PayoutItemDetail added in v1.5.80

type PayoutItemDetail struct {
	ActivityId         string                    `json:"activity_id,omitempty"`
	CurrencyConversion *PayoutCurrencyConversion `json:"currency_conversion,omitempty"`
	Errors             *Errors                   `json:"errors,omitempty"`
	Links              []*Link                   `json:"links,omitempty"`
	PayoutBatchId      string                    `json:"payout_batch_id"`
	PayoutItem         *PayoutItem               `json:"payout_item"`
	PayoutItemFee      *V1Amount                 `json:"payout_item_fee"`
	PayoutItemId       string                    `json:"payout_item_id"`
	SenderBatchId      string                    `json:"sender_batch_id,omitempty"`
	TimeProcessed      string                    `json:"time_processed"`
	TransactionId      string                    `json:"transaction_id"`
	TransactionStatus  string                    `json:"transaction_status"` // SUCCESS、FAILED、PENDING、UNCLAIMED、RETURNED、ONHOLD、BLOCKED、REFUNDED、REVERSED
}

type PayoutItemDetailRsp added in v1.5.80

type PayoutItemDetailRsp struct {
	Code          int               `json:"-"`
	Error         string            `json:"-"`
	ErrorResponse *ErrorResponse    `json:"-"`
	Response      *PayoutItemDetail `json:"response,omitempty"`
}

type Phone added in v1.5.75

type Phone struct {
	PhoneType   string       `json:"phone_type"`
	PhoneNumber *PhoneNumber `json:"phone_number"`
}

type PhoneNumber added in v1.5.75

type PhoneNumber struct {
	NationalNumber string `json:"national_number"`
}

type Plans added in v1.5.79

type Plans struct {
	ProductId          string              `json:"product_id"`
	Name               string              `json:"name"`
	Description        string              `json:"description"`
	BillingCycles      []*BillingCycles    `json:"billing_cycles"`
	PaymentDefinitions *PaymentPreferences `json:"payment_preferences"`
}

type PlatformFee

type PlatformFee struct {
	Amount *Amount `json:"amount,omitempty"`
	Payee  *Payee  `json:"payee,omitempty"`
}

type PricingScheme added in v1.5.79

type PricingScheme struct {
	FixedPrice *FixedPrice `json:"fixed_price"`
}

type Processor

type Processor struct {
	AvsCode           string `json:"avs_code"`
	CvvCode           string `json:"cvv_code"`
	ResponseCode      string `json:"response_code"`
	PaymentAdviceCode string `json:"payment_advice_code"`
}

type PurchaseUnit

type PurchaseUnit struct {
	Id                 string              `json:"id,omitempty"`
	ReferenceId        string              `json:"reference_id,omitempty"`
	Amount             *Amount             `json:"amount,omitempty"`
	Payee              *Payee              `json:"payee,omitempty"`
	PaymentInstruction *PaymentInstruction `json:"payment_instruction,omitempty"`
	Description        string              `json:"description,omitempty"`
	CustomId           string              `json:"custom_id,omitempty"`
	InvoiceId          string              `json:"invoice_id,omitempty"`
	SoftDescriptor     string              `json:"soft_descriptor,omitempty"`
	Items              []*Item             `json:"items,omitempty"`
	Shipping           *Shipping           `json:"shipping,omitempty"`
	Payments           *Payments           `json:"payments,omitempty"`
}

type Refund

type Refund struct {
	Status        string         `json:"status,omitempty"`
	StatusDetails *StatusDetails `json:"status_details,omitempty"`
}

type SellerPayableBreakdown

type SellerPayableBreakdown struct {
	GrossAmount                   *Amount               `json:"gross_amount"`
	PaypalFee                     *Amount               `json:"paypal_fee,omitempty"`
	PaypalFeeInReceivableCurrency *Amount               `json:"paypal_fee_in_receivable_currency,omitempty"`
	NetAmount                     *Amount               `json:"net_amount,omitempty"`
	NetAmountInReceivableCurrency *Amount               `json:"net_amount_in_receivable_currency,omitempty"`
	PlatformFees                  []*PlatformFee        `json:"platform_fees,omitempty"`
	NetAmountBreakdown            []*NetAmountBreakdown `json:"net_amount_breakdown,omitempty"`
	TotalRefundedAmount           *Amount               `json:"total_refunded_amount,omitempty"`
}

type SellerProtection

type SellerProtection struct {
	Status            string   `json:"status,omitempty"` // ELIGIBLE、PARTIALLY_ELIGIBLE、NOT_ELIGIBLE
	DisputeCategories []string `json:"dispute_categories,omitempty"`
}

type SellerReceivableBreakdown

type SellerReceivableBreakdown struct {
	GrossAmount                   *Amount        `json:"gross_amount"`
	PaypalFee                     *Amount        `json:"paypal_fee,omitempty"`
	PaypalFeeInReceivableCurrency *Amount        `json:"paypal_fee_in_receivable_currency,omitempty"`
	NetAmount                     *Amount        `json:"net_amount,omitempty"`
	ReceivableAmount              *Amount        `json:"receivable_amount,omitempty"`
	ExchangeRate                  *ExchangeRate  `json:"exchange_rate,omitempty"`
	PlatformFees                  []*PlatformFee `json:"platform_fees,omitempty"`
}

type SenderBatchHeader added in v1.5.80

type SenderBatchHeader struct {
	SenderBatchId string `json:"sender_batch_id"`
	EmailSubject  string `json:"email_subject"`
	EmailMessage  string `json:"email_message,omitempty"`
}

type Shipping

type Shipping struct {
	Name    *Name    `json:"name,omitempty"`
	Type    string   `json:"type,omitempty"` // SHIPPING、PICKUP_IN_PERSON
	Address *Address `json:"address,omitempty"`
}

type Sofort added in v1.5.80

type Sofort struct {
	Bic           string `json:"bic,omitempty"`
	CountryCode   string `json:"country_code,omitempty"`
	IbanLastChars string `json:"iban_last_chars,omitempty"`
	Name          string `json:"name,omitempty"`
}

type StatusDetails

type StatusDetails struct {
	Reason string `json:"reason"`
}

type TaxInfo added in v1.5.75

type TaxInfo struct {
	TaxId     string `json:"tax_id"`
	TaxIdType string `json:"tax_id_type"`
}

type ThreeDSecure

type ThreeDSecure struct {
	AuthenticationStatus string `json:"authentication_status"`
	EnrollmentStatus     string `json:"enrollment_status"`
}

type Trustly added in v1.5.80

type Trustly struct {
	Bic           string `json:"bic,omitempty"`
	CountryCode   string `json:"country_code,omitempty"`
	IbanLastChars string `json:"iban_last_chars,omitempty"`
	Name          string `json:"name,omitempty"`
}

type V1Amount added in v1.5.80

type V1Amount struct {
	Currency string `json:"currency"`
	Value    string `json:"value"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL