Compare commits

..

6 Commits

Author SHA1 Message Date
Bastian de Byl
e039b583e2 fixed Curreny to Currency typo 2023-03-13 00:26:11 -04:00
Bastian de Byl
26571a41fa changed ShippingAddress State to Province 2023-03-13 00:16:22 -04:00
Bastian de Byl
559a100e90 added more missing OrderEventContent fields 2023-03-13 00:14:47 -04:00
Bastian de Byl
6ff851823e added missing OrderEventContent fields 2023-03-13 00:12:11 -04:00
Bastian de Byl
db6e320b7f added webhook specific structs 2023-03-13 00:07:50 -04:00
Bastian de Byl
563e6baeda main added Metadata field to SnipcartOrder struct 2023-03-02 17:19:50 -05:00
3 changed files with 31 additions and 33 deletions

View File

@@ -68,6 +68,7 @@ type SnipcartOrder struct {
TrackingUrl string `json:"trackingUrl"`
ShippingCost float64 `json:"shippingFees"`
Items []SnipcartItem `json:"items"`
Metadata any `json:"metadata"`
}
type SnipcartOrderUpdate struct {

30
snipcart/webhook.go Normal file
View File

@@ -0,0 +1,30 @@
package snipcart
type SnipcartShippingAddress struct {
FullName string `json:"fullName"`
FirstName string `json:"firstName"`
Name string `json:"name"`
Company string `json:"company"`
Address1 string `json:"address1"`
Address2 string `json:"address2"`
FullAddress string `json:"fullAddress"`
City string `json:"city"`
Country string `json:"country"`
PostalCode string `json:"postalCode"`
Province string `json:"province"`
Phone string `json:"phone"`
VatNumber string `json:"vatNumber,omitempty"`
}
type SnipcartOrderEventContent struct {
Token string `json:"token"`
Invoice string `json:"invoiceNumber"`
Status string `json:"status"`
PaymentStatus string `json:"paymentStatus"`
Email string `json:"email"`
Currency string `json:"currency"`
TotalWeight float64 `json:"totalWeight"`
Items []SnipcartItem `json:"items"`
ShippingAddress SnipcartShippingAddress `json:"shippingAddress"`
Metadata string `json:"metadata"`
}

View File

@@ -1,33 +0,0 @@
package webhook
import (
"bytes"
"encoding/json"
"io/ioutil"
"github.com/debyltech/go-shippr/shippo"
)
type Config struct {
ShippoApiKey string `json:"shippo_api_key"`
WeightUnit string `json:"weight_unit"`
DimensionUnit string `json:"dimension_unit"`
ManufactureCountry string `json:"manufacture_country"`
SenderAddress shippo.Address `json:"sender_address"`
DefaultParcel shippo.Parcel `json:"default_parcel"`
}
func NewConfigFromFile(filePath string) (*Config, error) {
configBytes, err := ioutil.ReadFile(filePath)
if err != nil {
return nil, err
}
var config Config
err = json.NewDecoder(bytes.NewBuffer(configBytes)).Decode(&config)
if err != nil {
return nil, err
}
return &config, nil
}