From 04ab7f83a01a1c5d291a118c1369d4f80df2a312 Mon Sep 17 00:00:00 2001 From: Dennis Stritzke Date: Fri, 2 Aug 2019 11:32:04 +0200 Subject: [PATCH] Adding support for PayPal Order to contain the order breakdown and Items to contain UnitAmounts. --- types.go | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/types.go b/types.go index 008d6dc..0603222 100644 --- a/types.go +++ b/types.go @@ -316,6 +316,7 @@ type ( SKU string `json:"sku,omitempty"` Description string `json:"description,omitempty"` Tax string `json:"tax,omitempty"` + UnitAmount *Money `json:"unit_amount,omitempty"` } // ItemList struct @@ -334,6 +335,25 @@ type ( // PurchaseUnitAmount struct PurchaseUnitAmount struct { + Currency string `json:"currency_code"` + Value string `json:"value"` + Breakdown *PurchaseUnitAmountBreakdown `json:"breakdown,omitempty"` + } + + PurchaseUnitAmountBreakdown struct { + ItemTotal *Money `json:"item_total,omitempty"` + Shipping *Money `json:"shipping,omitempty"` + Handling *Money `json:"handling,omitempty"` + TaxTotal *Money `json:"tax_total,omitempty"` + Insurance *Money `json:"insurance,omitempty"` + ShippingDiscount *Money `json:"shipping_discount,omitempty"` + Discount *Money `json:"discount,omitempty"` + } + + // Money struct + // + // https://developer.paypal.com/docs/api/orders/v2/#definition-money + Money struct { Currency string `json:"currency_code"` Value string `json:"value"` }