Skip to end of banner
Go to start of banner

Feedback Summary v2.0.0-rc1

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Version History

« Previous Version 10 Next »

Below is a summary of all feedback on v2.0.0-rc1 received from standards users and wider industry engagement.

Feedback collected from Tuesday 12 November 2019 until 10 December 2019.

Contributor

Category

Feedback

Response

Will Miao (Deactivated)

Paymark

Payments Initiation API

Addition of refund API links to the Payment initiation V2.0 release candidate:

  • Being able to offer real time refund on transactions initiated by API links is a key requirement for merchants to keep the admin cost down, and for customers to have a streamlined payment experience.

  • For some retailers, not being able to refund means they will have to set the customer up as a “supplier” in the system, resulting in weeks of delay and a huge amount of admin effort.

Refunds are not currently an agreed part of the scope for v2.0:
/wiki/spaces/ACSC/pages/49283242

It should be noted that in the v2.0 standard - Third Parties are be able to initiate a refund to a Customer via these steps:

  • Requesting the DebtorAccountRelease as part of the Customer's original payment-consent (to identify the Customer's bank account details)

  • Agreeing a new payment-consent for the Merchant with the Third Party - to pay the Customer

  • A Merchant's payment-consent may be an enduring-payment-consent - which would mean that under agreed parameters, the Merchant would only need to authorise this refund payment-consent once.

  • Third Party initiating a payment-order with the Merchant's Bank to refund the Customer

Note that the existing v2.0 (and v1.0) standards rely on push payments initiated by the Customer's Bank. If we were to re-utilise the push payments system for refunds - then a refund must be initiated by the Merchant's Bank.

Your feedback on future functionality will be incorporated into the discussions informing the scope for pipeline activities.

David Mitchell (Unlicensed)

BNZ

Account types

We would like to see what it would take to loosen the limitation of the accounts to only BECS identifiable accounts to include scheme card formats

Limiting the types of transactions / accounts to be able to be queried to non credit card accounts may make the Transactions API less useful as a large portion of customers to their primary transactional banking from their credit card (mainly because of things like paywave and loyalty schemes).

Hi David Mitchell (Unlicensed)

We raised this as a business decision /wiki/spaces/PaymentsDirectionAPIStandardsDevelopment/pages/22282274 - and the Business Working Group made a decision (Option 1) for v2.0 to continue with the approach taken from v1.0:

  • Only BECS identifiable accounts

  • No clarification of what account types are in scope - i.e., some API Providers will only implement current accounts, some API Providers may also implement savings accounts, some API Providers may only implement some current accounts

As this was the business decision - we have reflected this in the technical specifications.

This will be fed back to the business group for the scope for pipeline activities.

Gavin Wong (Unlicensed)

Payments NZ

Errata

Errata:

  • In both the Account Information and Payments Basics/Steps section - clarify “Once the consent has been authorised, the API Provider may make a callback to the Third Party to provide an access token.” - as the push method has been de-scoped by the FAPI working group.

  • In the Payments Initiation Basic/Steps section - update “The Customer selects the debtor account(s) at this stage (if not previously specified in Step 1)." to reflect only one debtor-account may be selected. Linking multiple debtor accounts to an enduring payment consent has been de-scoped from v2.0.

  • In the Payments Initiation Basic/Steps section - update wording for clarity from “may only create multiple” to “may create multiple”

Chris Barton

Xero

DevelopmentPipeline

Payments API - future standards:

  • V2 standards appear more suitable for consumer application

  • For business payments the addition of Batch, Multi-Auth, Enduring Consent and feasible transaction limits will be required to encourage uptake from Xero or its partners

  • Batch - users should be able to provide one authorisation for the batch payment rather than authorise individual payments

  • Enduring consent - needs to be extended to advisors / administrators to prepare payment files, with decoupled flow enabling authorised signatories to authorise payment

  • Multi-authorisation - needs to enable advisors / administrators and account signatories to prepare and approve payments

  • Transaction limits - need to be sufficient to support SMB’s end of month batch payments

Account Information API

  • A unique transaction ID should be included

  • Enduring consent should extend to account information with the same flexibility around administrators / signatories

  • Should include credit card accounts

Bills API

  • Should not include a bills API as this should be covered by Peppol / E-invoicing standards. We have some reservations about the API Centre being used to set standards for non API Providers. This seems out of scope of the API Centre's mandate.

Hi Chris Barton, Thank you for providing your thoughts and feedback on what you consider to be the high priority areas for future state standards development.

We will be incorporating all feedback received on the pipeline, through the Business and Technical working group(s) and relevant governance processes following the consultation period.

Dimitri Stylianidis (Deactivated)

Xero

Development Pipeline

Feedback on Account Information API Specification v2.0.0

  • Mandatory immutable transaction ids, these are currently optional.
    The absence of a unique and consistent Transaction Id restricts all third party consumers from providing an equivalent complete list of unique transaction to the customer that the API Providers can.

  • Where available Account Name should be populated i.e. wherever there is an Account Name value/field used by the API Provider in its interaction with its customers. This will allow end users to quickly and easily identify their accounts.

Thanks for your feedback on the Account Information API specification Dimitri Stylianidis (Deactivated). We will be incorporating all feedback received on future state of the APIs, through the Business and Technical working group(s) and relevant governance processes following the consultation period.

Andy Wynes (Deactivated)

ACC

Multiple

As a potential third-party user of the API standards, I see the benefits that the Payments Initiation and Account Information Standards provide to an organisation such as ACC, however given the following factors, these would complicate their implementation for third-party users:

  1. The fact that bilateral agreements need to be put in place with each individual API Provider (currently there are 9 listed on the website), rather than a single organisation that facilitates connectivity between the third party and the banks.

  2. The fact that some elements of the individual APIs are optional, meaning that each API Provider could provide a slightly different level of service to the others. Third-parties will have to cater for this themselves on an API, by API Provider basis. It is noted that the mandatory endpoints are probably the ones that ACC would use. Although I can see a use case where Party information (currently optional) within the Account information specification would be desirable.

  3. I saw enduring consent as being a game-changer for the use cases by which these APIs could be used, however with this being implemented as an optional offering for the API Providers, this could lead to a less favourable user experience for end users whose API Provider banks do not support this capability. This could lead to an increase in customer contacts for the third-party where enduring consent is not offered by the appropriate API Provider.

  4. As for future use cases that these APIs could possibly support, one that I have heard discussed, but I accept may not be desirable for security reasons, is where a payment could be initiated as a result of an invoice payment request being received by email for example, rather than from within a user authenticated channel/portal such as MyACC for Business.

Response to be confirmed.

Carl Samuelson

ASB

Multiple

Release candidate 001 - v2.0.0-rc1

https://paymentsnz.atlassian.net/wiki/spaces/ACSC/pages/49283181/Release+candidate+001+-+v2.0.0-rc1#Version-scope

The “Consultation and feedback section” link is not working.

NZ Banking Data API Specification v2.0-rc1

NZ Banking Data API Specification v2.0-rc1

“This document and its sub-pages must be read in conjunction with the Known Issues Log” – It would be helpful if a link to the ‘Known Issues Log’ was included (as was done in upstream version).

It would also be useful to have an overview table of all APIs and endpoints on this page with a short description for each API and whether they are mandatory or not. This will give Third Parties and API Providers a good overview of the endpoints that are covered by the specification. Similar to the tables at the top level of each specification (e.g. https://paymentsnz.atlassian.net/wiki/spaces/ACSC/pages/49283859/Payments+Initiation+API+Specification+-+v2.0-rc1)

Account Access Consents v2.0.0-rc1

Account Access Consents v2.0.0-rc1

The plurality of account access consents should be consistent throughout the documentation: account-access-consents vs account-access-consent (account-access-consents is correct). This NZ spec appears consistent with the upstream spec so we are unsure if this difference is intentional.

“An API Provider may delete the account-access-consent resource 24 hours after creation if not authorised by the Customer or, if authorised by the Customer, 24 hours after the specified expiry date.”

This is a bit ambiguous / unclear and may be clearer in the same form as the specification page

https://paymentsnz.atlassian.net/wiki/spaces/ACSC/pages/49283453/NZ+Banking+Data+API+Specification+v2.0-rc1):

  • API Providers must not archive a ConsentId within the first 24 hours of creation.

  • API Providers may archive an expired ConsentId after 24 hours of creation.

However, this does highlight the inconsistency between the two pages. The first states “if [the consent was] authorised by the Customer, [the consent may be deleted by the API Provider] 24 hours after the specified expiry date”. The second bullet point above states: “the API Providers may archive an expired ConsentId after 24 hours of creation”. Note the discrepancy between 24 hours after expiry vs creation.

Also, the Domestic Payments Consents page

https://paymentsnz.atlassian.net/wiki/spaces/ACSC/pages/49284091/Domestic+Payment+Consents+-+v2.0-rc1) does not mention archiving or deletion. It seems that these should all be consistent and use a consistent term (archive or delete). Upstream has different wording, but essentially they specified that consents can only be deleted 24 hours after creation:

  • ASPSPs must only delete expired intent-ids 24 hours after creation.

  • ASPSPs may archive these expired intent-ids.

https://openbanking.atlassian.net/wiki/spaces/DZ/pages/1077805207/Read+Write+Data+API+Specification+-+v3.1.2)

Accounts v2.0.0-rc1

Accounts v2.0.0-rc1

“The first step for a Third Party after an account-access-consent is authorised – is to call the GET /accounts endpoint”

It is not immediately clear why this endpoint needs to be the first step after account-access-consentId. Also, the Third Party’s first step might be to do something else, e.g. retrieve the consent first. For clarity, it may be better to state explicitly: “For the Third Party to retrieve resources that require an AccountId, e.g. GET /accounts/{AccountId}, the Third Party will need to call the Get /accounts endpoint first to retrieve the AccoundIds”.

The NZ spec is consistent with upstream here, but we feel could be clarified.

Beneficiaries v2.0.0-rc1

Beneficiaries v2.0.0-rc1

It appears that the Creditor agent is mandatory in the UML diagram (1..1), but optional in Data Dictionary (0..1).

This appears to be a deviation from upstream where it is consistent in both.

Direct Debits v2.0.0-rc1

Direct Debits v2.0.0-rc1

The examples have GBP. To be consistent with other examples, it should be NZD.

Transactions v2.0.0-rc1

Transactions v2.0.0-rc1

Filtering – it would also be useful to filter by minimum and maximum amount. Suggest this for consideration for future versions.

Response to be confirmed.

sam MacGeorge (Unlicensed)

Vigilence

Development Pipeline

Vigilance is looking forward to using the PaymentsNZ API when it is able to process bulk batch payments from a bank account that is a Business account and likely to require multiple authorisers. Vigilance already allows for batches to be authorised by multiple people, so would like to allow this pre-authorised batch to be processed via a future API.

The ability for payments to be made to Foreign bank accounts is important. Before each single payment in a batch is processed, we would like to use an API to check that payee's bank account to verify the account name and compare with the name the payer has on file - any difference to be warned about before the payment happens - so there is a chance to cancel.

Comparing names has a challenge with slight spelling differences, so some 'nearly matching' would be great. Being able to download bank statement transactions is likely to be the first API we could use - the most valuable information on each transaction would be the 'other party' details - name, account #. Plus if the transaction is deposit from a foreign account, we require the swift details, bank, branch - all for AML/CFT purposes - to enable us to create a Prescribed Transaction Report to the FIU.

The Party API would also be very useful for AML/CFT purposes for helping to build a complete picture of a transaction.We look forward to a possible timeline of when some of the above functionality may have research started and happy to provide more specific suggestions then.The API documentation seen to date has been clear and well written.

Response to be confirmed.

Dermot Butterfield (Unlicensed)

WYCH Limited

Development Pipeline

Deviation from OBIE Enumeration standard.

There appears to be a change from the technical specifications as outlined in https://openbanking.atlassian.net/wiki/spaces/DZ/pages/937623722/Namespaced+Enumerations+-+v3.1 and omits any clarification or supporting documentation on the need for a deviation from the industry standard. Further in deviating form the standard it omits to declare the behaviour of the banks with regard to bank specific additions which we clarified in the standard.

The introduction of namespacing was an improvement to avoid collision on standard and non-standard (ASPSP specific) types. The specification defines a prefix of country in ISO 3166-1 Alpha-2 code followed by full-stop, followed by camel cased ASPSP name followed by enumeration value.

I appreciate the desire to NZ-ise this but this can be achieved while aligning with the standard. I would expect for example a root specification prefix of one of the following.

Considering PaymentsNZ as the specification owner

NZ.PaymentsNZ.AwaitingAuthorisation

  • aligns with standard country prefix+ aligns with standard ASPSP convention+ aligns with standard number of dots (2)+ supports bank additions without compromising standardNZ.Westpac, NZ.KiwiBank, NZ.ASB...+ total prefix size 14 characters

Considering PaymentsNZ apicenter product as the OBIE equivalent

NZ.ApiCenter.AwaitingAuthorisation

  • aligns with standard country prefix+ aligns with standard ASPSP convention+ aligns with standard number of dots (2)+ supports bank additions without compromising standardNZ.Westpac, NZ.KiwiBank, NZ.ASB...+ total prefix size 13 characters

Considering this an open banking spec

NZ.OBIE.AwaitingAuthorisation

  • aligns with standard country prefix+ aligns with standard ASPSP convention+ aligns with standard number of dots (2)+ supports bank additions without compromising standardNZ.Westpac, NZ.KiwiBank, NZ.ASB...+ total prefix size 8 characters

it is questionable if the standard is an open banking standard

The proposed

apicentre.paymentsnz.co.nz.AwaitingAuthorisation

total prefix size 26 characters

in the example (and many others) the proposed prefix is longer than some of the previous example with the Enumeration attached

does not align with the country standard prefix

uses a domain name format

references a product name

unclear how this supports bank additions such as must end in co.nz? must be lowercase? e.g. westpac.co.nz, KiwiBank.co.nz, ASB.co.nz e.g. api.westpac.co.nz, api.kiwibank, nz.asb

Response to be confirmed

Zachary Tattle (Unlicensed)

OrbitRemit

Development Pipeline

Feedback on the Account Information API:

I would like to echo comments on mandatory immutable transaction_ids (even if the bank line information has been updated) and account_name fields.

Further/additional justification for these changes:

Providing transaction_ids would allow for real-time reconciliation.

Populating the account_name field is crucial, particularly with tightening AML/CFT regulations.

Response to be confirmed.

Andrew Beech (Unlicensed)

Trustees Executors Limited

Multiple

Links in version control don't work when referencing draft1


Example in Accounts

Accounts v2.0.0-rc1
there is a link to


•In draft1-Endpoints table
https://paymentsnz.atlassian.net/wiki/pages/resumedraft.action?draftId=39551170#Accountsv2.0.0-draft3-Endpoints

Inconsistent security model applied. you want feedback, but we can't view all the documentation. Example link /wiki/spaces/PaymentsDirectionAPIStandardsDevelopment/pages/22282274 gives 'This is a restricted space' error (which is provided in feedback, and referenced in the V2 spec)

Scheduled Payments. Error in version control, version 1.0.0 states "baseline specification for party resource" (rather than scheduled payments)

Mandatory immutable transaction ids, these are currently optional. would assist to ensure unique information supplied.

As a 3rd party looking to utilise for commercial purposes. We need to ensure what data is actually going to be provided. Would it be plausible for a technical template that each provider could complete to advise what fields each is going to make available (by account type?).


This could then be presented on a page within the wiki (not sure if that is correct location) so when we are developing we can limit scope to data available from all, or know that we need to handle a lot of optional combinations (which would be a maintenance nightmare if changes were made).

Without, this exercise would be done by each 3rd party. Providing it could speed up any developments.

Payments Initiation.
DD, Scheduled payments are only GET. so payments is only option to POST. with the post there is no data item to schedule the payment. have scheduled payments been considered ?
example use case - allowing payment to be initiated and approved but not proceed until user pay day. so payment would wait in pending status until schedule date.

Term Deposits is a common banking instrument and should be an endpoint.
Would like to see term deposit as an available account type. so that balance can be retrieved.
Within the endpoint should be the ability

GetRates
retrieve available rates/terms/minimum.
Rates applicable to the client, or 3rd party (as the client or 3rd party institution may have a preferential rate to market)

CreateDeposit
Specify rate and term (will be validated against available rates)

UpdateDeposit
change preference of maturity action. Enum of the option ? payout, reinvest, reinvest+interest
-CalculateBreakFee
Return the cost/fee to break the term deposit

TerminateDeposit
User would need to accept breakfee (if applicable)

Response to be confirmed

  • No labels