[MM-29157] Cloud invoices logic (#16056)

* Cloud invoices logic

This commit includes all the code needed to get and print invoices
from CWS
Этот коммит содержится в:
Mario de Frutos Dieguez
2020-10-26 18:17:55 +01:00
коммит произвёл GitHub
родитель 8f895908fc
Коммит b68f171162
6 изменённых файлов: 131 добавлений и 0 удалений

Просмотреть файл

@@ -84,3 +84,29 @@ type Subscription struct {
DNS string `json:"dns"`
IsPaidTier string `json:"is_paid_tier"`
}
// Invoice model represents a cloud invoice
type Invoice struct {
ID string `json:"id"`
Number string `json:"number"`
CreateAt int64 `json:"create_at"`
Total int64 `json:"total"`
Tax int64 `json:"tax"`
Status string `json:"status"`
Description string `json:"description"`
PeriodStart int64 `json:"period_start"`
PeriodEnd int64 `json:"period_end"`
SubscriptionID string `json:"subscription_id"`
Items []*InvoiceLineItem `json:"line_items"`
}
// InvoiceLineItem model represents a cloud invoice lineitem tied to an invoice.
type InvoiceLineItem struct {
PriceID string `json:"price_id"`
Total int64 `json:"total"`
Quantity int64 `json:"quantity"`
PricePerUnit int64 `json:"price_per_unit"`
Description string `json:"description"`
Type string `json:"type"`
Metadata map[string]interface{} `json:"metadata"`
}