xero-kiwi 0.8.0 → 0.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +13 -0
- data/README.md +4 -0
- data/Rakefile +8 -0
- data/docs/accounting/credit-note.md +1 -0
- data/docs/accounting/prepayment.md +1 -0
- data/lib/xero_kiwi/accounting/credit_note.rb +1 -0
- data/lib/xero_kiwi/accounting/prepayment.rb +1 -0
- data/lib/xero_kiwi/version.rb +1 -1
- data/llms-full.txt +6 -0
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: b000115e3c885aaad2274ddd3b75f507af96e5e779b016d290559dedfcb96ab8
|
|
4
|
+
data.tar.gz: c86cc3db68b995cf2620f45165157759e4ec9e4bac78ca12a2e9493562ea5856
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 267a35b68a93afcccef4ce0c161f739c627b048461dbc52972b5405df85b4d2b9b3ca3dfb12d135e20ba57c363bb20605a65d25a51fb108708c0b14a2b8d8341
|
|
7
|
+
data.tar.gz: f8b9e15d6b786fa9090f61bcc093c50a2bf9654f6ad4cf35bb8b6139dc3224e375907075e82bea1c1997be0c88df406c4559018c5cc89c62d398e4130dc26b71
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
## [Unreleased]
|
|
2
2
|
|
|
3
|
+
## [0.9.0] - 2026-09-29
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
|
|
7
|
+
- `Accounting::CreditNote` now models `payments`, which `Prepayment` and `Overpayment` both already did. Found by the asymmetry rather than by any payload comparison — four sibling resources, one missing a field, visible from the class definitions alone. The recorded `credit_notes/list` response carries `Payments` on all seventeen records, with data on two.
|
|
8
|
+
- `Accounting::Prepayment` now models `reference`, which every comparable resource already did — `CreditNote`, `Overpayment`, `Invoice` and `Payment` all carry it. Confirmed against the recorded `prepayments/list` response: `Reference` is present on all nine records, with real values.
|
|
9
|
+
|
|
10
|
+
It was twice dismissed as a non-gap, including by me, on the strength of stored XML-era rows where the key was absent. That is the same mistake as the allocation regression — XML-derived data answering a question about JSON — and this time the JSON was already committed in `spec/fixtures` and went unread again. The recorded spec now asserts it.
|
|
11
|
+
|
|
12
|
+
### Documentation
|
|
13
|
+
|
|
14
|
+
- Added the four value-object docs — Address, Phone, ExternalLink, PaymentTerms — to the README's documentation table. They existed, were in the `llms.txt` manifest and were reachable from the generated bundles, while being invisible to anyone reading the README. `rake llms:check` now fails when a doc in the manifest is not linked from the README, which is the third index to get a drift guard.
|
|
15
|
+
|
|
3
16
|
## [0.8.0] - 2026-09-29
|
|
4
17
|
|
|
5
18
|
### Breaking
|
data/README.md
CHANGED
|
@@ -79,6 +79,10 @@ below.
|
|
|
79
79
|
| [Prepayments](docs/accounting/prepayment.md) | Listing and fetching prepayments, the `XeroKiwi::Accounting::Prepayment` resource, LineItem |
|
|
80
80
|
| [Branding Themes](docs/accounting/branding-theme.md) | Listing and fetching branding themes, the `XeroKiwi::Accounting::BrandingTheme` resource |
|
|
81
81
|
| [Tracking Categories](docs/accounting/tracking-category.md) | Listing and fetching tracking categories, the `TrackingCategory` / `TrackingOption` / `Tracking` resources |
|
|
82
|
+
| [Address](docs/accounting/address.md) | The `XeroKiwi::Accounting::Address` value object, nested on Organisation and Contact |
|
|
83
|
+
| [Phone](docs/accounting/phone.md) | The `XeroKiwi::Accounting::Phone` value object, nested on Organisation and Contact |
|
|
84
|
+
| [ExternalLink](docs/accounting/external-link.md) | The `XeroKiwi::Accounting::ExternalLink` value object |
|
|
85
|
+
| [PaymentTerms](docs/accounting/payment-terms.md) | The `XeroKiwi::Accounting::PaymentTerms` and `PaymentTerm` value objects |
|
|
82
86
|
| [Tokens](docs/tokens.md) | The `XeroKiwi::Token` value object, automatic refresh, revocation, persistence callbacks |
|
|
83
87
|
| [OAuth](docs/oauth.md) | Authorization URL building, code exchange, PKCE, ID token verification, full Rails-style example |
|
|
84
88
|
| [Errors](docs/errors.md) | The error hierarchy, what to catch and when |
|
data/Rakefile
CHANGED
|
@@ -30,6 +30,14 @@ namespace :llms do
|
|
|
30
30
|
exit 1
|
|
31
31
|
end
|
|
32
32
|
|
|
33
|
+
unlinked = Llms.unlinked_from_readme
|
|
34
|
+
unless unlinked.empty?
|
|
35
|
+
warn "✗ These docs are in the manifest but not linked from the README's documentation table:"
|
|
36
|
+
unlinked.each { |path| warn " #{path}" }
|
|
37
|
+
warn " Add a row for each, or remove them from Llms::DOCS."
|
|
38
|
+
exit 1
|
|
39
|
+
end
|
|
40
|
+
|
|
33
41
|
stale = Llms.outputs.reject do |path, expected|
|
|
34
42
|
File.exist?(path) && File.read(path, encoding: "UTF-8") == expected
|
|
35
43
|
end
|
|
@@ -62,6 +62,7 @@ fields Xero returns:
|
|
|
62
62
|
| `sent_to_contact` | `Boolean` | Whether the credit note has been sent to the contact. |
|
|
63
63
|
| `remaining_credit` | `Numeric` | The remaining credit balance. |
|
|
64
64
|
| `allocations` | `Array<XeroKiwi::Accounting::Allocation>` | Allocations to invoices. Each has `allocation_id`, the allocated value (as both `amount` and `applied_amount` — see below), `date`, `is_deleted`, and an `invoice` reference. |
|
|
65
|
+
| `payments` | `Array<XeroKiwi::Accounting::Payment>` | Payment records (references), as on prepayments and overpayments. See [Payments](payment.md). |
|
|
65
66
|
| `branding_theme_id` | `String` | The branding theme ID applied to the credit note. |
|
|
66
67
|
| `has_attachments` | `Boolean` | Whether the credit note has attachments. |
|
|
67
68
|
|
|
@@ -57,6 +57,7 @@ fields Xero returns:
|
|
|
57
57
|
| `currency_code` | `String` | The currency code (e.g. `"NZD"`). |
|
|
58
58
|
| `currency_rate` | `String` | The currency rate (1.0 for base currency). |
|
|
59
59
|
| `invoice_number` | `String` | The invoice number (for receive prepayments only). |
|
|
60
|
+
| `reference` | `String` | The prepayment reference, as on credit notes and overpayments. Nil when Xero sends it empty. |
|
|
60
61
|
| `remaining_credit` | `String` | The remaining credit balance. |
|
|
61
62
|
| `allocations` | `Array<XeroKiwi::Accounting::Allocation>` | Allocations to invoices. Each has `allocation_id`, the allocated value (as both `amount` and `applied_amount` — see below), `date`, `is_deleted`, and an `invoice` reference. |
|
|
62
63
|
| `payments` | `Array<XeroKiwi::Accounting::Payment>` | Payment records (references). See [Payments](payment.md). |
|
|
@@ -31,6 +31,7 @@ module XeroKiwi
|
|
|
31
31
|
attribute :sent_to_contact, xero: "SentToContact", type: :bool
|
|
32
32
|
attribute :remaining_credit, xero: "RemainingCredit", type: :decimal
|
|
33
33
|
attribute :allocations, xero: "Allocations", type: :collection, of: "Allocation"
|
|
34
|
+
attribute :payments, xero: "Payments", type: :collection, of: "Payment", reference: true
|
|
34
35
|
attribute :branding_theme_id, xero: "BrandingThemeID", type: :guid
|
|
35
36
|
attribute :has_attachments, xero: "HasAttachments", type: :bool
|
|
36
37
|
|
|
@@ -25,6 +25,7 @@ module XeroKiwi
|
|
|
25
25
|
attribute :currency_code, xero: "CurrencyCode"
|
|
26
26
|
attribute :currency_rate, xero: "CurrencyRate", type: :decimal
|
|
27
27
|
attribute :invoice_number, xero: "InvoiceNumber"
|
|
28
|
+
attribute :reference, xero: "Reference"
|
|
28
29
|
attribute :remaining_credit, xero: "RemainingCredit", type: :decimal
|
|
29
30
|
attribute :allocations, xero: "Allocations", type: :collection, of: "Allocation"
|
|
30
31
|
attribute :payments, xero: "Payments", type: :collection, of: "Payment", reference: true
|
data/lib/xero_kiwi/version.rb
CHANGED
data/llms-full.txt
CHANGED
|
@@ -92,6 +92,10 @@ below.
|
|
|
92
92
|
| [Prepayments](docs/accounting/prepayment.md) | Listing and fetching prepayments, the `XeroKiwi::Accounting::Prepayment` resource, LineItem |
|
|
93
93
|
| [Branding Themes](docs/accounting/branding-theme.md) | Listing and fetching branding themes, the `XeroKiwi::Accounting::BrandingTheme` resource |
|
|
94
94
|
| [Tracking Categories](docs/accounting/tracking-category.md) | Listing and fetching tracking categories, the `TrackingCategory` / `TrackingOption` / `Tracking` resources |
|
|
95
|
+
| [Address](docs/accounting/address.md) | The `XeroKiwi::Accounting::Address` value object, nested on Organisation and Contact |
|
|
96
|
+
| [Phone](docs/accounting/phone.md) | The `XeroKiwi::Accounting::Phone` value object, nested on Organisation and Contact |
|
|
97
|
+
| [ExternalLink](docs/accounting/external-link.md) | The `XeroKiwi::Accounting::ExternalLink` value object |
|
|
98
|
+
| [PaymentTerms](docs/accounting/payment-terms.md) | The `XeroKiwi::Accounting::PaymentTerms` and `PaymentTerm` value objects |
|
|
95
99
|
| [Tokens](docs/tokens.md) | The `XeroKiwi::Token` value object, automatic refresh, revocation, persistence callbacks |
|
|
96
100
|
| [OAuth](docs/oauth.md) | Authorization URL building, code exchange, PKCE, ID token verification, full Rails-style example |
|
|
97
101
|
| [Errors](docs/errors.md) | The error hierarchy, what to catch and when |
|
|
@@ -2576,6 +2580,7 @@ fields Xero returns:
|
|
|
2576
2580
|
| `sent_to_contact` | `Boolean` | Whether the credit note has been sent to the contact. |
|
|
2577
2581
|
| `remaining_credit` | `Numeric` | The remaining credit balance. |
|
|
2578
2582
|
| `allocations` | `Array<XeroKiwi::Accounting::Allocation>` | Allocations to invoices. Each has `allocation_id`, the allocated value (as both `amount` and `applied_amount` — see below), `date`, `is_deleted`, and an `invoice` reference. |
|
|
2583
|
+
| `payments` | `Array<XeroKiwi::Accounting::Payment>` | Payment records (references), as on prepayments and overpayments. See [Payments](payment.md). |
|
|
2579
2584
|
| `branding_theme_id` | `String` | The branding theme ID applied to the credit note. |
|
|
2580
2585
|
| `has_attachments` | `Boolean` | Whether the credit note has attachments. |
|
|
2581
2586
|
|
|
@@ -3041,6 +3046,7 @@ fields Xero returns:
|
|
|
3041
3046
|
| `currency_code` | `String` | The currency code (e.g. `"NZD"`). |
|
|
3042
3047
|
| `currency_rate` | `String` | The currency rate (1.0 for base currency). |
|
|
3043
3048
|
| `invoice_number` | `String` | The invoice number (for receive prepayments only). |
|
|
3049
|
+
| `reference` | `String` | The prepayment reference, as on credit notes and overpayments. Nil when Xero sends it empty. |
|
|
3044
3050
|
| `remaining_credit` | `String` | The remaining credit balance. |
|
|
3045
3051
|
| `allocations` | `Array<XeroKiwi::Accounting::Allocation>` | Allocations to invoices. Each has `allocation_id`, the allocated value (as both `amount` and `applied_amount` — see below), `date`, `is_deleted`, and an `invoice` reference. |
|
|
3046
3052
|
| `payments` | `Array<XeroKiwi::Accounting::Payment>` | Payment records (references). See [Payments](payment.md). |
|