-
Notifications
You must be signed in to change notification settings - Fork 23
/
Copy pathCDS-Products.yaml
1083 lines (1041 loc) · 41.3 KB
/
CDS-Products.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
swagger: "2.0"
info:
description: API sets created by the Australian Consumer Data Standards to meet the needs
of the Consumer Data Right
version: 1.5.1
title: Consumer Data Standards
contact:
name: APIBank CDS Team
url: https://apibank.com.au/cds
license:
name: MIT License
url: https://opensource.org/licenses/MIT
host: openbank-aunz-test.apigee.net
basePath: /cds-au/v1
schemes:
- https
consumes:
- application/json
produces:
- application/json
paths:
/banking/products:
get:
tags:
- Products
summary: Get Products
description: >-
Obtain a list of products that are currently openly offered to the
market
Note that the results returned by this end point are expected to be ordered in descending order according to ``lastUpdated``.
### Conventions
In the product reference payloads there are a number of recurring conventions that are explained here, in one place.
#### Arrays Of Features
In the product detail payload there are a number of arrays articulating generic features, constraints, prices, etc. The intent of these arrays is as follows:
- Each element in an array has the same structure so that clients can reliably interpret the payloads
- Each element as a type element that is an enumeration of the specific aspect of a product being described, such as types of fees.
- Each element has a field name [additionalValue](#productfeaturetypedoc). This is a generic field with contents that will vary based on the type of object being described. The contents of this field for the ADDITIONAL_CARDS feature is the number of cards allowed while the contents of this field for the MAX_LIMIT constraint would be the maximum credit limit allowed for the product.
- An element in these arrays of the same type may appear more than once. For instance, a product may offer two separate loyalty programs that the customer can select from. A fixed term mortgage may have different rates for different term lengths.
- An element in these arrays may contain an additionalInfo and additionalInfoUri field. The additionalInfo field is used to provide displayable text clarifying the purpose of the element in some way when the product is presented to a customer. The additionalInfoUri provides a link to externally hosted information specifically relevant to that feature of the product.
- Depending on the type of data being represented there may be additional specific fields.
#### URIs To More Information
As the complexities and nuances of a financial product can not easily be fully expressed in a data structure without a high degree of complexity it is necessary to provide additional reference information that a potential customer can access so that they are fully informed of the features and implications of the product. The payloads for product reference therefore contain numerous fields that are provided to allow the product holder to describe the product more fully using a web page hosted on their online channels.
These URIs do not need to all link to different pages. If desired, they can all link to a single hosted page and use difference HTML anchors to focus on a specific topic such as eligibility or fees.
#### Linkage To Accounts
From the moment that a customer applies for a product and an account is created the account and the product that spawned it will diverge. Rates and features of the product may change and a discount may be negotiated for the account.
For this reason, while productCategory is a common field between accounts and products, there is no specific ID that can be used to link an account to a product within the regime.
Similarly, many of the fields and objects in the product payload will appear in the account detail payload but the structures and semantics are not identical as one refers to a product that can potentially be originated and one refers to an account that actual has been instantiated and created along with the associated decisions inherent in that process.
#### Dates
It is expected that data consumers needing this data will call relatively frequently to ensure the data they have is representative of the current offering from a bank. To minimise the volume and frequency of these calls the ability to set a lastUpdated field with the date and time of the last update to this product is included. A call for a list of products can then be filtered to only return products that have been updated since the last time that data was obtained using the updated-since query parameter.
In addition, the concept of effective date and time has also been included. This allows for a product to be marked for obsolescence, or introduction, from a certain time without the need for an update to show that a product has been changed. The inclusion of these dates also removes the need to represent deleted products in the payload. Products that are no long offered can be marked not effective for a few weeks before they are then removed from the product set as an option entirely.
NOTE: This version must be implemented by **February 2021**
Obsolete versions: [v1](includes/obsolete/get-products-v1.html) [v2](includes/obsolete/get-products-v2.html)
operationId: listProducts
parameters:
- name: effective
in: query
description: Allows for the filtering of products based on whether the current
time is within the period of time defined as effective by the
effectiveFrom and effectiveTo fields. Valid values are ‘CURRENT’,
‘FUTURE’ and ‘ALL’. If absent defaults to 'CURRENT'
required: false
type: string
default: CURRENT
enum:
- CURRENT
- FUTURE
- ALL
- name: updated-since
in: query
description: Only include products that have been updated after the specified
date and time. If absent defaults to include all products
required: false
type: string
x-cds-type: DateTimeString
- name: brand
in: query
description: Filter results based on a specific brand
required: false
type: string
- name: product-category
in: query
description: Used to filter results on the productCategory field applicable to
accounts. Any one of the valid values for this field can be
supplied. If absent then all accounts returned.
required: false
type: string
enum:
- BUSINESS_LOANS
- CRED_AND_CHRG_CARDS
- LEASES
- MARGIN_LOANS
- OVERDRAFTS
- PERS_LOANS
- REGULATED_TRUST_ACCOUNTS
- RESIDENTIAL_MORTGAGES
- TERM_DEPOSITS
- TRADE_FINANCE
- TRAVEL_CARDS
- TRANS_AND_SAVINGS_ACCOUNTS
- name: page
in: query
description: Page of results to request (standard pagination)
required: false
type: integer
default: 1
x-cds-type: PositiveInteger
- name: page-size
in: query
description: Page size to request. Default is 25 (standard pagination)
required: false
type: integer
default: 25
x-cds-type: PositiveInteger
- name: x-v
in: header
description: Version of the API end point requested by the client. Must be set to
a positive integer. The data holder should respond with the highest
supported version between [x-min-v](#request-headers) and
[x-v](#request-headers). If the value of [x-min-v](#request-headers)
is equal to or higher than the value of [x-v](#request-headers) then
the [x-min-v](#request-headers) header should be treated as absent.
If all versions requested are not supported then the data holder
must respond with a 406 Not Acceptable. See [HTTP
Headers](#request-headers)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point requested by the client. Must
be set to a positive integer if provided. The data holder should
respond with the highest supported version between
[x-min-v](#request-headers) and [x-v](#request-headers). If all
versions requested are not supported then the data holder must
respond with a 406 Not Acceptable.
required: false
type: string
responses:
"200":
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the
data holder has responded with.
schema:
$ref: "#/definitions/ResponseBankingProductList"
x-version: "3"
"/banking/products/{productId}":
get:
tags:
- Products
summary: Get Product Detail
description: >-
Obtain detailed information on a single product offered openly to the
market.
NOTE: This version must be implemented by **February 2021**
Obsolete versions: [v1](includes/obsolete/get-product-detail-v1.html) [v2](includes/obsolete/get-product-detail-v2.html)
operationId: getProductDetail
parameters:
- name: productId
in: path
description: ID of the specific product requested
required: true
type: string
x-cds-type: ASCIIString
- name: x-v
in: header
description: Version of the API end point requested by the client. Must be set to
a positive integer. The data holder should respond with the highest
supported version between [x-min-v](#request-headers) and
[x-v](#request-headers). If the value of [x-min-v](#request-headers)
is equal to or higher than the value of [x-v](#request-headers) then
the [x-min-v](#request-headers) header should be treated as absent.
If all versions requested are not supported then the data holder
must respond with a 406 Not Acceptable. See [HTTP
Headers](#request-headers)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point requested by the client. Must
be set to a positive integer if provided. The data holder should
respond with the highest supported version between
[x-min-v](#request-headers) and [x-v](#request-headers). If all
versions requested are not supported then the data holder must
respond with a 406 Not Acceptable.
required: false
type: string
responses:
"200":
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the
data holder has responded with.
schema:
$ref: "#/definitions/ResponseBankingProductById"
x-version: "3"
definitions:
ResponseBankingProductList:
type: object
required:
- data
- links
- meta
properties:
data:
$ref: "#/definitions/ResponseBankingProductList_data"
links:
$ref: "#/definitions/LinksPaginated"
meta:
$ref: "#/definitions/MetaPaginated"
BankingProductV3:
type: object
required:
- brand
- description
- isTailored
- lastUpdated
- name
- productCategory
- productId
properties:
productId:
type: string
description: A data holder specific unique identifier for this product. This
identifier must be unique to a product but does not otherwise need to
adhere to ID permanence guidelines.
x-cds-type: ASCIIString
effectiveFrom:
type: string
description: The date and time from which this product is effective (ie. is
available for origination). Used to enable the articulation of
products to the regime before they are available for customers to
originate
x-cds-type: DateTimeString
effectiveTo:
type: string
description: The date and time at which this product will be retired and will no
longer be offered. Used to enable the managed deprecation of products
x-cds-type: DateTimeString
lastUpdated:
type: string
description: The last date and time that the information for this product was
changed (or the creation date for the product if it has never been
altered)
x-cds-type: DateTimeString
productCategory:
$ref: "#/definitions/BankingProductCategory"
name:
type: string
description: The display name of the product
description:
type: string
description: A description of the product
brand:
type: string
description: A label of the brand for the product. Able to be used for filtering.
For data holders with single brands this value is still required
brandName:
type: string
description: An optional display name of the brand
applicationUri:
type: string
description: A link to an application web page where this product can be applied
for.
x-cds-type: URIString
isTailored:
type: boolean
description: Indicates whether the product is specifically tailored to a
circumstance. In this case fees and prices are significantly
negotiated depending on context. While all products are open to a
degree of tailoring this flag indicates that tailoring is expected and
thus that the provision of specific fees and rates is not applicable
x-cds-type: Boolean
additionalInformation:
$ref: "#/definitions/BankingProductV3_additionalInformation"
cardArt:
type: array
description: An array of card art images
items:
$ref: "#/definitions/BankingProductV3_cardArt"
ResponseBankingProductById:
type: object
required:
- data
- links
properties:
data:
$ref: "#/definitions/BankingProductDetailV3"
links:
$ref: "#/definitions/Links"
meta:
$ref: "#/definitions/Meta"
BankingProductDetailV3:
allOf:
- $ref: "#/definitions/BankingProductV3"
- type: object
properties:
bundles:
type: array
description: An array of bundles that this product participates in. Each
bundle is described by free form information but also by a list of
product IDs of the other products that are included in the
bundle. It is assumed that the current product is included in the
bundle also
items:
$ref: "#/definitions/BankingProductBundle"
features:
type: array
description: Array of features available for the product
items:
$ref: "#/definitions/BankingProductFeature"
constraints:
type: array
description: Constraints on the application for or operation of the product
such as minimum balances or limit thresholds
items:
$ref: "#/definitions/BankingProductConstraint"
eligibility:
type: array
description: Eligibility criteria for the product
items:
$ref: "#/definitions/BankingProductEligibility"
fees:
type: array
description: Fees applicable for the product
items:
$ref: "#/definitions/BankingProductFee"
depositRates:
type: array
description: Interest rates available for deposits
items:
$ref: "#/definitions/BankingProductDepositRate"
lendingRates:
type: array
description: Interest rates charged against lending balances
items:
$ref: "#/definitions/BankingProductLendingRateV2"
BankingProductBundle:
type: object
required:
- description
- name
properties:
name:
type: string
description: Name of the bundle
description:
type: string
description: Description of the bundle
additionalInfo:
type: string
description: Display text providing more information on the bundle
additionalInfoUri:
type: string
description: Link to a web page with more information on the bundle criteria and
benefits
x-cds-type: URIString
productIds:
type: array
description: Array of product IDs for products included in the bundle that are
available via the product end points. Note that this array is not
intended to represent a comprehensive model of the products included
in the bundle and some products available for the bundle may not be
available via the product reference end points
items:
type: string
x-cds-type: ASCIIString
BankingProductFeature:
type: object
required:
- featureType
properties:
featureType:
type: string
description: The type of feature described
enum:
- ADDITIONAL_CARDS
- BALANCE_TRANSFERS
- BILL_PAYMENT
- BONUS_REWARDS
- CARD_ACCESS
- COMPLEMENTARY_PRODUCT_DISCOUNTS
- DIGITAL_BANKING
- DIGITAL_WALLET
- DONATE_INTEREST
- FREE_TXNS
- FREE_TXNS_ALLOWANCE
- INSURANCE
- INTEREST_FREE
- INTEREST_FREE_TRANSFERS
- LOYALTY_PROGRAM
- NOTIFICATIONS
- NPP_ENABLED
- NPP_PAYID
- OFFSET
- OVERDRAFT
- REDRAW
- UNLIMITED_TXNS
- OTHER
additionalValue:
type: string
description: Generic field containing additional information relevant to the
[featureType](#tocSproductfeaturetypedoc) specified. Whether mandatory
or not is dependent on the value of the
[featureType.](#tocSproductfeaturetypedoc)
additionalInfo:
type: string
description: Display text providing more information on the feature. Mandatory if
the [feature type](#tocSproductfeaturetypedoc) is set to OTHER
additionalInfoUri:
type: string
description: Link to a web page with more information on this feature
x-cds-type: URIString
x-conditional:
- additionalValue
- additionalInfo
BankingProductConstraint:
type: object
required:
- constraintType
properties:
constraintType:
type: string
description: The type of constraint described. See the next section for an
overview of valid values and their meaning
enum:
- MIN_BALANCE
- MIN_LIMIT
- MAX_BALANCE
- MAX_LIMIT
- OPENING_BALANCE
additionalValue:
type: string
description: Generic field containing additional information relevant to the
[constraintType](#tocSproductconstrainttypedoc) specified. Whether
mandatory or not is dependent on the value of
[constraintType](#tocSproductconstrainttypedoc)
additionalInfo:
type: string
description: Display text providing more information the constraint
additionalInfoUri:
type: string
description: Link to a web page with more information on the constraint
x-cds-type: URIString
x-conditional:
- additionalValue
BankingProductEligibility:
type: object
required:
- eligibilityType
properties:
eligibilityType:
type: string
description: The type of eligibility criteria described. See the next section for
an overview of valid values and their meaning
enum:
- BUSINESS
- EMPLOYMENT_STATUS
- MAX_AGE
- MIN_AGE
- MIN_INCOME
- MIN_TURNOVER
- NATURAL_PERSON
- PENSION_RECIPIENT
- RESIDENCY_STATUS
- STAFF
- STUDENT
- OTHER
additionalValue:
type: string
description: Generic field containing additional information relevant to the
[eligibilityType](#tocSproducteligibilitytypedoc) specified. Whether
mandatory or not is dependent on the value of
[eligibilityType](#tocSproducteligibilitytypedoc)
additionalInfo:
type: string
description: Display text providing more information on the
[eligibility](#tocSproducteligibilitytypedoc) criteria. Mandatory if
the field is set to OTHER
additionalInfoUri:
type: string
description: Link to a web page with more information on this eligibility criteria
x-cds-type: URIString
x-conditional:
- additionalValue
- additionalInfo
BankingProductFee:
type: object
required:
- feeType
- name
properties:
name:
type: string
description: Name of the fee
feeType:
type: string
description: The type of fee
enum:
- DEPOSIT
- EVENT
- EXIT
- PAYMENT
- PERIODIC
- PURCHASE
- TRANSACTION
- UPFRONT
- VARIABLE
- WITHDRAWAL
amount:
type: string
description: The amount charged for the fee. One of amount, balanceRate,
transactionRate and accruedRate is mandatory unless the *feeType*
"VARIABLE" is supplied
x-cds-type: AmountString
balanceRate:
type: string
description: A fee rate calculated based on a proportion of the balance. One of
amount, balanceRate, transactionRate and accruedRate is mandatory
unless the *feeType* "VARIABLE" is supplied.
x-cds-type: RateString
transactionRate:
type: string
description: A fee rate calculated based on a proportion of a transaction. One of
amount, balanceRate, transactionRate and accruedRate is mandatory
unless the *feeType* "VARIABLE" is supplied
x-cds-type: RateString
accruedRate:
type: string
description: A fee rate calculated based on a proportion of the calculated interest
accrued on the account. One of amount, balanceRate, transactionRate
and accruedRate is mandatory unless the *feeType* "VARIABLE" is
supplied
x-cds-type: RateString
accrualFrequency:
type: string
description: The indicative frequency with which the fee is calculated on the
account. Only applies if balanceRate or accruedRate is also present.
Formatted according to [ISO 8601
Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes
recurrence syntax)
x-cds-type: ExternalRef
currency:
type: string
description: The currency the fee will be charged in. Assumes AUD if absent
x-cds-type: CurrencyString
additionalValue:
type: string
description: Generic field containing additional information relevant to the
[feeType](#tocSproductfeetypedoc) specified. Whether mandatory or not
is dependent on the value of [feeType](#tocSproductfeetypedoc)
additionalInfo:
type: string
description: Display text providing more information on the fee
additionalInfoUri:
type: string
description: Link to a web page with more information on this fee
x-cds-type: URIString
discounts:
type: array
description: An optional list of discounts to this fee that may be available
items:
$ref: "#/definitions/BankingProductDiscount"
x-conditional:
- additionalValue
- amount
- balanceRate
- transactionRate
- accruedRate
BankingProductDiscount:
type: object
required:
- description
- discountType
properties:
description:
type: string
description: Description of the discount
discountType:
type: string
description: The type of discount. See the next section for an overview of valid
values and their meaning
enum:
- BALANCE
- DEPOSITS
- ELIGIBILITY_ONLY
- FEE_CAP
- PAYMENTS
amount:
type: string
description: Dollar value of the discount. One of amount, balanceRate,
transactionRate, accruedRate and feeRate is mandatory.
x-cds-type: AmountString
balanceRate:
type: string
description: A discount rate calculated based on a proportion of the balance. Note
that the currency of the fee discount is expected to be the same as
the currency of the fee itself. One of amount, balanceRate,
transactionRate, accruedRate and feeRate is mandatory. Unless noted in
additionalInfo, assumes the application and calculation frequency are
the same as the corresponding fee
x-cds-type: RateString
transactionRate:
type: string
description: A discount rate calculated based on a proportion of a transaction.
Note that the currency of the fee discount is expected to be the same
as the currency of the fee itself. One of amount, balanceRate,
transactionRate, accruedRate and feeRate is mandatory
x-cds-type: RateString
accruedRate:
type: string
description: A discount rate calculated based on a proportion of the calculated
interest accrued on the account. Note that the currency of the fee
discount is expected to be the same as the currency of the fee itself.
One of amount, balanceRate, transactionRate, accruedRate and feeRate
is mandatory. Unless noted in additionalInfo, assumes the application
and calculation frequency are the same as the corresponding fee
x-cds-type: RateString
feeRate:
type: string
description: A discount rate calculated based on a proportion of the fee to which
this discount is attached. Note that the currency of the fee discount
is expected to be the same as the currency of the fee itself. One of
amount, balanceRate, transactionRate, accruedRate and feeRate is
mandatory. Unless noted in additionalInfo, assumes the application and
calculation frequency are the same as the corresponding fee
x-cds-type: RateString
additionalValue:
type: string
description: Generic field containing additional information relevant to the
[discountType](#tocSproductdiscounttypedoc) specified. Whether
mandatory or not is dependent on the value of
[discountType](#tocSproductdiscounttypedoc)
additionalInfo:
type: string
description: Display text providing more information on the discount
additionalInfoUri:
type: string
description: Link to a web page with more information on this discount
x-cds-type: URIString
eligibility:
type: array
description: Eligibility constraints that apply to this discount. Mandatory if
``discountType`` is ``ELIGIBILITY_ONLY``.
items:
$ref: "#/definitions/BankingProductDiscountEligibility"
x-conditional:
- accruedRate
- additionalValue
- amount
- balanceRate
- eligibility
- feeRate
- transactionRate
BankingProductDiscountEligibility:
type: object
required:
- discountEligibilityType
properties:
discountEligibilityType:
type: string
description: The type of the specific eligibility constraint for a discount
enum:
- BUSINESS
- EMPLOYMENT_STATUS
- INTRODUCTORY
- MAX_AGE
- MIN_AGE
- MIN_INCOME
- MIN_TURNOVER
- NATURAL_PERSON
- PENSION_RECIPIENT
- RESIDENCY_STATUS
- STAFF
- STUDENT
- OTHER
additionalValue:
type: string
description: Generic field containing additional information relevant to the
[discountEligibilityType](#tocSproductdiscounteligibilitydoc)
specified. Whether mandatory or not is dependent on the value of
[discountEligibilityType](#tocSproductdiscounteligibilitydoc)
additionalInfo:
type: string
description: Display text providing more information on this eligibility
constraint. Whether mandatory or not is dependent on the value of
[discountEligibilityType](#tocSproductdiscounteligibilitydoc)
additionalInfoUri:
type: string
description: Link to a web page with more information on this eligibility constraint
x-cds-type: URIString
x-conditional:
- additionalInfo
- additionalValue
BankingProductDepositRate:
type: object
required:
- depositRateType
- rate
properties:
depositRateType:
type: string
description: The type of rate (base, bonus, etc). See the next section for an
overview of valid values and their meaning
enum:
- BONUS
- BUNDLE_BONUS
- FIXED
- FLOATING
- INTRODUCTORY
- MARKET_LINKED
- VARIABLE
rate:
type: string
description: The rate to be applied
x-cds-type: RateString
calculationFrequency:
type: string
description: The period after which the rate is applied to the balance to calculate
the amount due for the period. Calculation of the amount is often
daily (as balances may change) but accumulated until the total amount
is 'applied' to the account (see applicationFrequency). Formatted
according to [ISO 8601
Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes
recurrence syntax)
x-cds-type: ExternalRef
applicationFrequency:
type: string
description: The period after which the calculated amount(s) (see
calculationFrequency) are 'applied' (i.e. debited or credited) to the
account. Formatted according to [ISO 8601
Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes
recurrence syntax)
x-cds-type: ExternalRef
tiers:
type: array
description: Rate tiers applicable for this rate
items:
$ref: "#/definitions/BankingProductRateTierV3"
additionalValue:
type: string
description: Generic field containing additional information relevant to the
[depositRateType](#tocSproductdepositratetypedoc) specified. Whether
mandatory or not is dependent on the value of
[depositRateType](#tocSproductdepositratetypedoc)
additionalInfo:
type: string
description: Display text providing more information on the rate
additionalInfoUri:
type: string
description: Link to a web page with more information on this rate
x-cds-type: URIString
x-conditional:
- additionalValue
BankingProductLendingRateV2:
type: object
required:
- lendingRateType
- rate
properties:
lendingRateType:
type: string
description: The type of rate (fixed, variable, etc). See the next section for an
overview of valid values and their meaning
enum:
- BUNDLE_DISCOUNT_FIXED
- BUNDLE_DISCOUNT_VARIABLE
- CASH_ADVANCE
- DISCOUNT
- FLOATING
- INTRODUCTORY
- MARKET_LINKED
- PENALTY
- PURCHASE
- VARIABLE
- FIXED
rate:
type: string
description: The rate to be applied
x-cds-type: RateString
comparisonRate:
type: string
description: A comparison rate equivalent for this rate
x-cds-type: RateString
calculationFrequency:
type: string
description: The period after which the rate is applied to the balance to calculate
the amount due for the period. Calculation of the amount is often
daily (as balances may change) but accumulated until the total amount
is 'applied' to the account (see applicationFrequency). Formatted
according to [ISO 8601
Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes
recurrence syntax)
x-cds-type: ExternalRef
applicationFrequency:
type: string
description: The period after which the calculated amount(s) (see
calculationFrequency) are 'applied' (i.e. debited or credited) to the
account. Formatted according to [ISO 8601
Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes
recurrence syntax)
x-cds-type: ExternalRef
interestPaymentDue:
type: string
description: When loan payments are due to be paid within each period. The
investment benefit of earlier payments affect the rate that can be
offered
enum:
- IN_ADVANCE
- IN_ARREARS
repaymentType:
type: string
description: Options in place for repayments. If absent, the lending rate is
applicable to all repayment types
enum:
- INTEREST_ONLY
- PRINCIPAL_AND_INTEREST
loanPurpose:
type: string
description: The reason for taking out the loan. If absent, the lending rate is
applicable to all loan purposes
enum:
- OWNER_OCCUPIED
- INVESTMENT
tiers:
type: array
description: Rate tiers applicable for this rate
items:
$ref: "#/definitions/BankingProductRateTierV3"
additionalValue:
type: string
description: Generic field containing additional information relevant to the
[lendingRateType](#tocSproductlendingratetypedoc) specified. Whether
mandatory or not is dependent on the value of
[lendingRateType](#tocSproductlendingratetypedoc)
additionalInfo:
type: string
description: Display text providing more information on the rate.
additionalInfoUri:
type: string
description: Link to a web page with more information on this rate
x-cds-type: URIString
x-conditional:
- additionalValue
BankingProductRateTierV3:
type: object
required:
- minimumValue
- name
- unitOfMeasure
properties:
name:
type: string
description: A display name for the tier
unitOfMeasure:
type: string
description: The unit of measure that applies to the tierValueMinimum and
tierValueMaximum values e.g. a **DOLLAR** amount. **PERCENT** (in the
case of loan-to-value ratio or LVR). Tier term period representing a
discrete number of **MONTH**'s or **DAY**'s (in the case of term
deposit tiers)
enum:
- DOLLAR
- PERCENT
- DAY
- MONTH
minimumValue:
type: number
description: The number of tierUnitOfMeasure units that form the lower bound of the
tier. The tier should be inclusive of this value
x-cds-type: Number
maximumValue:
type: number
description: "The number of tierUnitOfMeasure units that form the upper bound of
the tier or band. For a tier with a discrete value (as opposed to a
range of values e.g. 1 month) this must be the same as
tierValueMinimum. Where this is the same as the tierValueMinimum value
of the next-higher tier the referenced tier should be exclusive of
this value. For example a term deposit of 2 months falls into the
upper tier of the following tiers: (1 – 2 months, 2 – 3 months). If
absent the tier's range has no upper bound."
x-cds-type: Number
rateApplicationMethod:
type: string
description: The method used to calculate the amount to be applied using one or
more tiers. A single rate may be applied to the entire balance or each
applicable tier rate is applied to the portion of the balance that
falls into that tier (referred to as 'bands' or 'steps')
enum:
- PER_TIER
- WHOLE_BALANCE
applicabilityConditions:
$ref: "#/definitions/BankingProductRateCondition"
additionalInfo:
type: string
description: Display text providing more information on the rate tier.
additionalInfoUri:
type: string
description: Link to a web page with more information on this rate tier
x-cds-type: URIString
description: Defines the criteria and conditions for which a rate applies
BankingProductRateCondition:
type: object
properties:
additionalInfo:
type: string
description: Display text providing more information on the condition
additionalInfoUri:
type: string
description: Link to a web page with more information on this condition
x-cds-type: URIString
description: Defines a condition for the applicability of a tiered rate
Links:
type: object
required:
- self
properties:
self:
type: string
description: Fully qualified link that generated the current response document
x-cds-type: URIString
Meta:
type: object
LinksPaginated:
type: object
required:
- self
properties:
self:
type: string
description: Fully qualified link that generated the current response document
x-cds-type: URIString
first:
type: string
description: URI to the first page of this set. Mandatory if this response is not
the first page
x-cds-type: URIString
prev:
type: string
description: URI to the previous page of this set. Mandatory if this response is
not the first page
x-cds-type: URIString
next:
type: string
description: URI to the next page of this set. Mandatory if this response is not
the last page
x-cds-type: URIString
last:
type: string
description: URI to the last page of this set. Mandatory if this response is not
the last page
x-cds-type: URIString
x-conditional:
- prev
- next