Skip to main content

Files API

PaymentsPlus uses files to group payments to be processed. A file can contain payments of various methods. When a file is submitted for processing, all payments within the file are submitted at the same time.

Use this resource to:

  1. List and retrieve files.
  2. Upload payment files.
  3. Create payment files and payments.

Creating Files and Payments

There are two ways to create files in the PaymentsPlus API.

Upload a File

The most basic form of file creation is to POST a physical file of payments using the Upload Payment File resource. The file formats that are supported through the API are:

Once a file has been uploaded it will be checked for errors and formatting issues and will then be submitted for processing. The details of the file will be returned from the resource when a file is uploaded, and this can be used to poll for the status of the file. Files may take a few minutes to process depending on the number of payments in the file.

Example

File Upload Flow

Create a File

The other method of creating files and payments in the PaymentsPlus API is to call the Create File resource and to create/open a file and then call Create Payment to add payments to the file.

Once all the payments have been added to the file, the file can be sent. The file is then sent and the payments processed.

Example

File Submition Flow

List recent files

Request

GET /files

Request body

None.

Response

This is a paginated resource. The most recent file is first.

Field Format Data
links Array of Links Links to related documents and pagination.
data Array of File Model A paginated list of files.

HTTP Status Codes

See HTTP Status Codes for more.

Status Code Description More information
200 OK Authorisation succeeded and your software/network can access the API.
401 UNAUTHORIZED Authorisation failed. View more.
403 FORBIDDEN Your facility may not be set up. View more.
407 PROXY AUTHENTICATION REQUIRED This error is returned by your proxy server, not PaymentsPlus. You need to configure a proxy username and password in order to access the internet.

Create file

Create a Payment File to add Payments to. Later you need to call Send to submit the file.

If this resource is called again with the same values, no new file will be created. If any values are different the file will be updated to reflect these different values.

Only files that are in an OPEN state can be modified this way.

Request

PUT /files/{fileIdentifier}

Path parameters

Parameter Name Format Description
fileIdentifier string The code that uniquely identifies the file. Maximum 20 characters.

Request body

Field Format Length Required Description
fileName string 1-256 Required The filename to help identify the file.
paymentDate string Required The payment date of the file. In the format YYYY-MM-DD.
referenceCode string 0-20 Optional A additional reference code for the file.

Response

If successful, this method returns a File Model in the response body.

HTTP Status Codes

See HTTP Status Codes for more.

Status Code Description More information
200 OK Authorisation succeeded and your software/network can access the API.
401 UNAUTHORIZED Authorisation failed. View more.
403 FORBIDDEN Your facility may not be set up. View more.
407 PROXY AUTHENTICATION REQUIRED This error is returned by your proxy server, not PaymentsPlus. You need to configure a proxy username and password in order to access the internet.
422 UNPROCESSABLE ENTITY This is returned when the file is not in an OPEN state or if there is an Error.

Get file

Get the file details.

Request

GET /files/{fileIdentifier}

Path parameters

Parameter Name Format Description
fileIdentifier string The code that uniquely identifies the file.

Request body

None.

Response

If successful, this method returns a File Model in the response body.

HTTP Status Codes

See HTTP Status Codes for more.

Status Code Description More information
200 OK Authorisation succeeded and your software/network can access the API.
401 UNAUTHORIZED Authorisation failed. View more.
403 FORBIDDEN Your facility may not be set up. View more.
404 NOT FOUND The fileIdentifier path parameter may be incorrect.
407 PROXY AUTHENTICATION REQUIRED This error is returned by your proxy server, not PaymentsPlus. You need to configure a proxy username and password in order to access the internet.

Send file

Send a file for processing. This resource will close and file and send it for processing. All payments within the file will be processed.

Once a file has been sent no further actions can such as modifying or cancelling can be performed.

Request

POST /files/{fileIdentifier}/send

Path parameters

Parameter Name Format Description
fileIdentifier string The code that uniquely identifies the file.

Request body

None.

Response

If successful, this method returns a File Model in the response body for the file that was just sent.

HTTP Status Codes

See HTTP Status Codes for more.

Status Code Description More information
200 OK Authorisation succeeded and your software/network can access the API.
401 UNAUTHORIZED Authorisation failed. View more.
403 FORBIDDEN Your facility may not be set up. View more.
407 PROXY AUTHENTICATION REQUIRED This error is returned by your proxy server, not PaymentsPlus. You need to configure a proxy username and password in order to access the internet.

Cancel file

CANCEL a file. This resource can be used to mark a file as cancelled so it will not be processed.

Only files in an OPEN state can be cancelled in this way.

Request

POST /files/{fileIdentifier}/cancel

Path parameters

Parameter Name Format Description
fileIdentifier string The code that uniquely identifies the file.

Request body

None.

Response

If successful, this method returns a File Model in the response body with the updated status for the file.

HTTP Status Codes

See HTTP Status Codes for more.

Status Code Description More information
200 OK Authorisation succeeded and your software/network can access the API.
401 UNAUTHORIZED Authorisation failed. View more.
403 FORBIDDEN Your facility may not be set up. View more.
407 PROXY AUTHENTICATION REQUIRED This error is returned by your proxy server, not PaymentsPlus. You need to configure a proxy username and password in order to access the internet.
422 UNPROCESSABLE ENTITY This is returned when the file is not in an OPEN state.

Upload payment file

To upload a payment file, you must:

Request

POST /files/{fileIdentifier}/upload

Request headers

Header Description
Prevent-CSRF Set to true. Required. This header is required for multipart requests to prevent Cross-Site Request Forgery

Path parameters

Parameter Name Format Description
fileIdentifier string The code that uniquely identifies the file. Maximum 20 characters.

Request body

Encode your POST as multipart/form-data. Provide the file contents in the multipart binary part. Provide the following in the multipart request part:

Field Format Description
file string Unique file name.

Response

If successful, this method returns the File Mode; in the response body.

HTTP status codes

See HTTP Status Codes for more.

Status Code Description More information
201 CREATED The file is stored. Quickstream will check the format of the file and then process transactions. You must check the status of the file.
400 BAD REQUEST Prevent-CSRF header is missing or is not set to true.
422 UNPROCESSABLE ENTITY The request contained invalid data or the server has detected a duplicate payment file. Refer to errors in the response body for more. View more

Duplicate checking

This API returns a 422 UNPROCESSABLE ENTITY when it detects a duplicate payment file. A payment file with the same name and hashed message contents indicates a duplicate.

List by filename

List files by File Name. Use this resource to find files by File Name

Request

GET /files/for-filename?filename={string}

Query parameters

Parameter Name Format Description
filename string Get a list of files for the provided File Name.

Request body

None.

Response

This is a paginated resource. The most recent file is first.

Field Format Data
links Array of Links Links to related documents and pagination.
data Array of File Model A paginated list of files.

HTTP status codes

See HTTP Status Codes for more.

Status Code Description More information
200 OK The request has succeeded.
401 UNAUTHORIZED The API key in the request is expired. View more.
422 UNPROCESSABLE ENTITY reference contains non-ASCII characters or is empty. View more.

List by date

List files by payment date. Use this resource to find files for a given payment date.

Request

GET /files/for-date?date={string}

Query parameters

Parameter Name Format Description
date string Get a list of files for the provided Reference Code or File Name. In the format YYYY-MM-DD.

Request body

None.

Response

This is a paginated resource. The most recent file is first.

Field Format Data
links Array of Links Links to related documents and pagination.
data Array of File Model A paginated list of files.

HTTP status codes

See HTTP Status Codes for more.

Status Code Description More information
200 OK The request has succeeded.
401 UNAUTHORIZED The API key in the request is expired. View more.
422 UNPROCESSABLE ENTITY date contains non-ASCII characters or is empty. View more.

List by status

List files by status code. Use this resource to find files for a given status code. You can use the following codes:

Status Code Description
PENDING The file is pending processing.
FORMAT_CHECK The file is being validated and checked for correctness.
VALIDATED The file has been validated and is correct.
ERROR There was an error in the file.
AUTH_REQUIRED The file requires an authorisation through the PaymentsPlus portal to be processed.
SECOND_AUTH_REQUIRED This file requires a second authorisaction through the PaymentsPlus portal to be processed.
CANCELLED The file has been cancelled and will not be processed.
PROCESSING The file is currently processing.
COMPLETE The file has completed processing.
POSSIBLE_DUPLICATE This file may be a duplicate and has been held for processing.

Request

GET /files/for-status?status={string}

Query parameters

Parameter Name Format Description
status string Get a list of files for the provided Status code listed above.

Request body

None.

Response

This is a paginated resource. The most recent file is first.

Field Format Data
links Array of Links Links to related documents and pagination.
data Array of File Model A paginated list of files.

HTTP status codes

See HTTP Status Codes for more.

Status Code Description More information
200 OK The request has succeeded.
401 UNAUTHORIZED The API key in the request is expired. View more.
422 UNPROCESSABLE ENTITY status contains non-ASCII characters or is empty. View more.

Get payments in a file

Get a list of the payments that are in a specified file.

Request

GET /files/{fileIdentifier}/payments

Path parameters

Parameter Name Format Description
fileIdentifier string The code that uniquely identifies the file.

Request body

None.

Response

This is a paginated resource.

Field Format Data
links Array of Links Links to related documents and pagination.
data Array of Payment Response Model A paginated list of files.

HTTP Status Codes

See HTTP Status Codes for more.

Status Code Description More information
200 OK Authorisation succeeded and your software/network can access the API.
401 UNAUTHORIZED Authorisation failed. View more.
403 FORBIDDEN Your facility may not be set up. View more.
404 NOT FOUND The fileIdentifier path parameter may be incorrect.
407 PROXY AUTHENTICATION REQUIRED This error is returned by your proxy server, not PaymentsPlus. You need to configure a proxy username and password in order to access the internet.

Create payment

Create a Payment under a file. Later you need to call Send to submit the file this payment is in.

If this resource is called again with the same values, no new payment will be created. If any values are different the payment will be updated with these new values.

Only files that are in an OPEN state can have payments added to them.

Request

PUT /files/{fileIdentifier}/payments/{paymentIdentifier}

Path parameters

Parameter Name Format Description
fileIdentifier string The code that uniquely identifies the file.
paymentIdentifier string The code that uniquely identifies the payment. Maximum 20 characters.

Request body

Field Format Length Required Description
paymentMethod string Required The payment method code for the payment to use. See Payment Methods.
paymentAmount decimal Required The amount of the payment.
paymentDate string Required The date the payment should be made. In the format yyyy-MM-dd
fundingAccount A Funding Account Request Model Optional The account that the payment will be made from. This account must be usable for the provided paymentMethod. If no funding account is provided the default for the provided paymentMethod and currency will be used. DIRECT_ENTRY payments use the funding account name as the remitter name.
recipientAccount A Recipient Account Request Model Required The account that the payment will be made to. This account must be usable for the provided paymentMethod
payeeName string 1-140 Required The payee name for the payment
currency string 3 Required The currency the payment will be made in.
lodgementReference string 1-18 Required* The lodgement reference for the payment.
*This field is not allowed for BPAY.
paymentReference string 0-35 Optional The payer reference for the payment. One will be generated if not provided.
payeeRegisteredAddress A Payee Registered Address Request Model Optional The address of the payee. This is required for OTT.
chargeBearer string 0-4 Optional The international charge bearer code to apply to this transaction. Available values are SHA - Fees shared between payer and beneficiary and OUR - Fees paid by ordering customer (payer). Note This is only available as part of a premium solution, this feature needs to be agreed and enabled by Westpac Implementation before use. If the feature is not enabled before processing it is ignored and the facility default will be used instead
remitterName string 0-16 Optional The remitter name to use with Australian EFT payments (only). If a name is not provided, the current account default will be used.

Response

If successful, this method returns a Payment Response Model in the response body.

HTTP Status Codes

See HTTP Status Codes for more.

Status Code Description More information
200 OK Authorisation succeeded and your software/network can access the API.
401 UNAUTHORIZED Authorisation failed. View more.
403 FORBIDDEN Your facility may not be set up. View more.
407 PROXY AUTHENTICATION REQUIRED This error is returned by your proxy server, not PaymentsPlus. You need to configure a proxy username and password in order to access the internet.
422 UNPROCESSABLE ENTITY This is returned when the file is not in an OPEN state or if there is an Error.

Lodgement Reference Restrictions

Payment Channel Reference Name Min/Max Length Format Description
Direct Entry (EFT) Recipient Reference (Lodgement Reference) 1/18 Alphanumeric This will be the lodgement reference that appears on the payee's bank statement. It is recommended that this value be unique for each payment. Invalid characters will be removed.
RTGS Recipient Reference (Lodgement Reference) 1/16 Alphanumeric This reference will be included as part of the credit transaction data appearing on the payee bank statement as WBC PAYPLUS-<Reference>. <Reference> may be truncated by the receiving bank. It is recommended that this value be unique for each payment.
OTT Recipient Reference 1/16 Alphanumeric This reference will be included as part of the credit transaction data appearing on the payee bank statement as WBC PAYPLUS-<Reference>. <Reference> may be truncated by the receiving bank. It is recommended that this value be unique for each payment.

Get payment

Get the file details.

Request

GET /files/{fileIdentifier}/payments/{paymentIdentifier}

Path parameters

Parameter Name Format Description
fileIdentifier string The code that uniquely identifies the file.
paymentIdentifier string The code that uniquely identifies the payment.

Request body

None.

Response

If successful, this method returns a Payment Response Model in the response body.

HTTP Status Codes

See HTTP Status Codes for more.

Status Code Description More information
200 OK Authorisation succeeded and your software/network can access the API.
401 UNAUTHORIZED Authorisation failed. View more.
403 FORBIDDEN Your facility may not be set up. View more.
404 NOT FOUND The fileIdentifier path parameter may be incorrect.
407 PROXY AUTHENTICATION REQUIRED This error is returned by your proxy server, not PaymentsPlus. You need to configure a proxy username and password in order to access the internet.

Cancel payment

CANCEL a payment. This resource can be used to mark a payment as rejected so it will not be processed.

Only payments that are in an OPEN state can be cancelled.

Request

POST /files/{fileIdentifier}/payments/{paymentIdentifier}/cancel

Path parameters

Parameter Name Format Description
fileIdentifier string The code that uniquely identifies the file.
paymentIdentifier string The code that uniquely identifies the payment.

Request body

None.

Response

If successful, this method returns a Payment Response Model in the response body with the updated status for the file.

HTTP Status Codes

See HTTP Status Codes for more.

Status Code Description More information
200 OK Authorisation succeeded and your software/network can access the API.
401 UNAUTHORIZED Authorisation failed. View more.
403 FORBIDDEN Your facility may not be set up. View more.
407 PROXY AUTHENTICATION REQUIRED This error is returned by your proxy server, not PaymentsPlus. You need to configure a proxy username and password in order to access the internet.
422 UNPROCESSABLE ENTITY This is returned when the payment is not in an OPEN state.

Get a PAIN002 response file

Get a PAIN002 response message associated with a file. This end point is only applicable on files that were originally loaded as PAIN001 files.

See ISO Payables for more information.

Request

GET /files/{fileIdentifier}/pain002.001.03?type={type}

Path parameters

Parameter Name Format Description
fileIdentifier string The code that uniquely identifies the file.

Query parameters

Parameter Name Format Description
type string The type of the response file to be returned. One of ACK, SF, LF.

Request body

None.

Response

If successful, this method returns the XML content of the PAIN002.001.03 file. See PAIN002.001.03

HTTP Status Codes

See HTTP Status Codes for more.

Status Code Description More information
200 OK The request has succeeded and the report will download.
404 NOT FOUND One of:
  • The fileIdentifier path parameter may be incorrect
  • The pain.001 payment file has errors
  • The payment file has not finished processing
406 NOT ACCEPTABLE The Accept header must be application/xml, test/xml, or blank.

Get a CSV response file

Get a CSV response message associated with a file.

See Response File Format for more information.

Request

GET /files/{fileIdentifier}/response?type={type}

Path parameters

Parameter Name Format Description
fileIdentifier string The code that uniquely identifies the file.

Query parameters

Parameter Name Format Description
type string The type of the response file to be returned. Currently only CSV is supported.

Request body

None.

Response

If successful, this method returns the xml content of the CSV response file. See Response File Formats for more.

HTTP Status Codes

See HTTP Status Codes for more.

Status Code Description More information
200 OK The request has succeeded and the report will download.
404 NOT FOUND One of:
  • The fileIdentifier path parameter may be incorrect
  • The payment file has errors
  • The payment file has not finished processing
406 NOT ACCEPTABLE The Accept header must be text/csv, or blank.

File Model

Field Format Description
links Array of Links Links to related documents and resources.
fileIdentifier string The file identifier used in API calls.
statusCode string The status of the file. See File status codes.
receiptStatus string The receipt status of the file. See File receipt status codes.
fileName string The name of the file submitted.
referenceCode string The reference code of the file.
paymentDate string The payment date of the file. In the format YYYY-MM-DD
fileSummaries Array of File Summaries A collection of summaries of the file grouped by currency.
errors Array of Errors Any errors that were found when processing the file.

For example:

{
    "links": [],
    "fileIdentifier": "123456789",
    "statusCode": "COMPLETE",
    "receiptStatus":"AWAITING_CLEARANCE",
    "fileName": "PaymentFile.csv",
    "referenceCode": "REF123456",
    "paymentDate": "2018-01-15",
    "fileSummaries": [],
    "errors": []
}

File Summary Model

Field Format Description
methodCode string The code that represents the Payment Method that the payments are for.
currency string The currency of the file sumamry.
acceptedCount number The number of accepted payments.
acceptedAmount decimal The amount of the accepted payments.
rejectedCount number The number of rejected payments.
rejectedAmount decimal The amount of the rejected payments.

For example:

{
    "methodCode": "DIRECT_ENTRY",
    "currency": "AUD",
    "acceptedCount": 1,
    "acceptedAmount": 100.00,
    "rejectedCount": 1,
    "rejectedAmount": 10.00
}

File Error Model

Field Format Description
location string The line location of the error.
fieldName string The name of the error field.
fieldValue string The value that was provided in the field.
errorCode string The code of the specific error.
errorDescription string Description of the error.
message string Message detailing the error.

For example:

{
    "location": "Line 1",
    "fieldName": "Version",
    "fieldValue": "N",
    "errorCode": "F01",
    "errorDescription": "Invalid value.",
    "message": "Invalid file version."
}

Funding Account Request Model

Australian Accounts

Field Format Required Description
bsbNumber string Required The BSB.
accountNumber string Required The account number.

For example:

{
    "bsbNumber": "032-000",
    "accountNumber": "100001"
}

New Zealand Accounts

Field Format Required Description
bankCode string Required The Bank Code.
branchCode string Required The Branch Code.
accountNumber string Required The Account Number.
accountSuffix string Required The Account Suffix.

For example:

{
    "bankCode": "03",
    "branchCode": "2000",
    "accountNumber": "100001",
    "accountSuffix": "00"
}

Recipient Account Request Model

Different types of recipient accounts include different values.

BPay Account

Field Format Required Description
type string Required The type of the account. BPAY
billerNumber string Required The biller number.
crn string Required The customer reference number of the account.

For example

{
    "type": "BPAY",
    "billerNumber": "123456",
    "crn": "12345678"
}

International Account

Field Format Required Description
type string Required The type of the account. INTERNATIONAL
accountName string Required The name of the account.
accountNumber string One of accountNumber or IBAN is required The account number. See IBAN's and routing codes for more.
currency string Required The currency of the account.
routingCode string Optional The routing code of the account.
iban string One of the IBAN or accountNumber is required The IBAN of the account.
intermediarySwiftCode string Optional The intermediary swift code.
swiftCode string Required The swift code.

For example

{
    "type": "INTERNATIONAL",
    "accountName": "Account One",
    "currency": "EUR",
    "routingCode": "12345",
    "iban": "12354678",
    "intermediarySwiftCode": "ABC123",
    "swiftCode": "WBC12345XXX"
}

Australian Domestic and RTGS

Field Format Required Description
type string Required The type of the account. AU_DOMESTIC or RTGS.
accountName string Required The name of the account.
bsbNumber string Required The BSB number.
accountNumber string Required The account number.

For example

{
    "type": "RTGS",
    "accountName": "Account One",
    "bsbNumber": "032-000",
    "accountNumber": "100001"
}

NZ Domestic

Field Format Required Description
type string Required The type of the account. NZ_DOMESTIC
accountName string Required The name of the account.
bankCode string Required The bank code.
branchCode string Required The branch code.
accountNumber string Required The account number.
accountSuffix string Required The account suffix.

For example

{
    "type": "NZ_DOMESTIC",
    "accountName": "Account One",
    "bankCode": "03",
    "branchCode": "2000",
    "accountNumber": "100001",
    "accountSuffix": "02"
}

Payee Registered Address Request Model

Field Format Required Description
street1 string Required The street line 1 of the address.
street2 string Optional The street line 2 of the address.
street3 string Optional The street line 3 of the address.
street4 string Optional The street line 4 of the address.
city string Optional The city of the address.
state string Optional The state of the address.
postcode string Optional The postal code of the address.
countryCode string Required The two character country code for the address.

For example

{
    "street1": "Level 1",
    "street2": "2 Street St",
    "city": "Sydney",
    "state": "NSW",
    "postcode": "2000",
    "countryCode": "AU"
}

Payment Response Model

Field Format Description
links Array of Links Links to related documents and resources.
paymentIdentifier string The payment identifier used in API calls.
methodCode string The code that represents the Payment Method this payment will use.
statusCode string The status of the payment. See Payment status codes
responseCode string The response code of the transaction after being processed. See Payment response codes
receiptDescription string The description of the recponse received for the payment.
paymentAmount decimal The amount of the payment.
payeeName string The name of the payee of the payment.
currency string The currency that the payment was made in.
recipientReference string The recipient reference for the payment. This will be the lodgement reference.
payerReference string The payer reference for the payment.
fundingAccount A Funding Account Response Model Represents the funding account for the payment.
recipientAccount A Recipient Account Response Model Represents the recipient account for the payment.
payeeRegisteredAddress A Payee Registered Address Response Model Represents the registered address for the payee.
exchange An Exchange Response Model Represents the exchange information for the payment. This is provided for OTT payments when available.

For example:

{
    "links": [],
    "paymentIdentifier": "123456789",
    "methodCode": "AU_OTT",
    "statusCode": "PAID",
    "responseCode": "PROCD",
    "receiptDescription": "Payment processed",
    "paymentAmount": 100.00,
    "paymentDate": "2018-01-15",
    "payeeName": "Mrs Payee",
    "currency": "AUD",
    "recipientReference": "REF_123",
    "payerReference": "PAY123",
    "fundingAccount": {},
    "recipientAccount": {},
    "payeeRegisteredAddress": {},
    "exchange": {}
}

Funding Account Response Model

Australian Accounts

Field Format Description
type string The type of the account. domestic or international.
accountName string The name of the account.
bsbNumber string The BSB.
accountNumber string The account number.
traceBsbNumber string The trace BSB.
traceAccountNumber string The trace Account Number.
currency string The currency code.
directEntryUserId string The Direct Entry User ID of the account.
directEntryUserName string The Direct Entry User Name of the account.
defaultAccount string Flag to indicate whether this is the default account for this type. true or false.
remitterDetails A Remitter Details Response Model model. The remitter details of the account.

For example:

{
    "type": "domestic",
    "accountName": "Account One",
    "bsbNumber": "032-000",
    "accountNumber": "100001",
    "traceBsbNumber": "032-001",
    "traceAccountNumber": "100002",
    "currency": "AUD",
    "directEntryUserId": "123456",
    "directEntryUserName": "DEUSER",
    "remitterDetails": {}
}

New Zealand Accounts

Field Format Description
type string The type of the account. domestic or international.
accountName string The name of the account.
bankCode string The Bank Code.
branchCode string The Branch Code.
accountNumber string The account number.
accountSuffix string The account suffix.
foreignCurrencyAccountNumber string The foreign currency account number.
currency string The currency code.
defaultAccount string Flag to indicate whether this is the default account for this type. true or false.
remitterDetails A Remitter Details Response Model model. The remitter details of the account.

For example:

{
    "type": "domestic",
    "accountName": "Account One",
    "bankCode": "03",
    "branchCode": "2000",
    "accountNumber": "100001",
    "accountSuffix": "00",
    "currency": "NZD",
    "defaultAccount": "true",
    "remitterDetails": {}
}

Remitter Details Response Model

Field Format Description
remitterName string The remitter name.
remitterAddress1 string The first line of the address.
remitterAddress2 string The second line of the address.
remitterCity string The remitter city.
remitterState string The remitter state.
remitterPostCode string The remitter post code.
remitterCountry string The remitter country. 2 character ISO country code.

For example:

{
    "remitterName": "Mr Remitter",
    "remitterAddress1": "Level 2",
    "remitterAddress2": "1 Street St",
    "remitterCity": "Sydney",
    "remitterState": "NSW",
    "remitterPostCode": "2000",
    "remitterCountry": "AU"
}

Recipient Account Response Model

Different types of recipient accounts include different values.

BPay Account

Field Format Description
type string The type of the account. BPAY
currency string The currency of the account. AUD for BPay.
billerNumber string The biller number.
crn string The customer reference number of the account.

For example

{
    "type": "BPAY",
    "currency": "AUD",
    "billerNumber": "123456",
    "crn": "12345678"
}

International Account

Field Format Description
type string The type of the account. INTERNATIONAL
accountName string The name of the account.
accountNumber string The account number.
currency string The currency of the account.
routingCode string The routing code of the account.
iban string The IBAN of the account.
intermediarySwiftCode string The intermediary swift code.
swiftCode string The swift code.

For example

{
    "type": "INTERNATIONAL",
    "accountName": "Account One",
    "accountNumber": "123456",
    "currency": "EUR",
    "routingCode": "12345",
    "iban": "12354678",
    "intermediarySwiftCode": "ABC123",
    "swiftCode": "WBC12345XXX"
}

Australian Domestic and RTGS

Field Format Description
type string The type of the account. AU_DOMESTIC or RTGS.
accountName string The name of the account.
bsbNumber string The BSB number.
accountNumber string The account number.
currency string The currency of the account.

For example

{
    "type": "RTGS",
    "accountName": "Account One",
    "bsbNumber": "032-000",
    "accountNumber": "100001",
    "currency": "AUD"
}

NZ Domestic

Field Format Description
type string The type of the account. NZ_DOMESTIC
accountName string The name of the account.
bankCode string The bank code.
branchCode string The branch code.
accountNumber string The account number.
accountSuffix string The account suffix.
currency string The currency of the account.

For example

{
    "type": "NZ_DOMESTIC",
    "accountName": "Account One",
    "bankCode": "03",
    "branchCode": "2000",
    "accountNumber": "100001",
    "accountSuffix": "02",
    "currency": "NZD"
}

Payee Registered Address Response Model

Field Format Description
street1 string The street line 1 of the address.
street2 string The street line 2 of the address.
street3 string The street line 3 of the address.
street4 string The street line 4 of the address.
city string The city of the address.
state string The state of the address.
postcode string The postal code of the address.
countryCode string The two character country code for the address.

For example

{
    "street1": "Level 1",
    "street2": "2 Street St",
    "city": "Sydney",
    "state": "NSW",
    "postcode": "2000",
    "countryCode": "AU"
}

Exchange Response Model

Field Format Description
exchangeRate decimal The exchange rate of the payment.
exchangeReference string The exchange reference code of the payment.
fundingAmount decimal The funding amount of the payment.
fundingCurrency string The funding currency of the payment.

For example

{
    "exchangeRate": "0.0001",
    "exchangeReference": "ABC123",
    "fundingAmount": "100",
    "fundingCurrency": "AUD"
}

Payment Methods

The following are the payment methods available in the PaymentsPlus API.

Method Code Method Name
DIRECT_ENTRY Australian Direct Entry Payment (EFT)
RTGS Australian Real Time Gross Settlement Payment
BPAY Australian BPay Payment
AU_OTT Australian Overseas Telegraphic Transfer
NZ_DIRECT_ENTRY New Zealand Direct Entry Payment
NZ_OTT New Zealand Overseas Telegraphic Transfer

File Status Codes

Code Description
OPEN The file is open and can have payments added to it. See Create Payment.
PENDING The file has been loaded successfully and is scheduled to be sent.
FORMAT_CHECK The format of the file file is being checked for errors.
VALIDATED The file has been validated.
ERROR Errors were found in the file. Errors will be returned with the file details.
AUTHORISATION_REQUIRED The file is awaiting authorisation. This is performed through the PaymentsPlus portal.
SECOND_AUTH_REQUIRED The file is awaiting a second authorisation. This is performed through the PaymentsPlus portal.
CANCELLED The file has been cancelled and will not be processed.
PROCESSING The file is currently processing, and the payments have been submitted to the bank.
COMPLETE The file is complete and the status of the payments has been returned.
POSSIBLE_DUPLICATE The file has been flagged as a duplicate and should be checked. This is performed through the PaymentsPlus portal.

File Receipt Status Codes

Code Description
null The payments in the file have not yet been submitted. This may be because there are errors in the file, or it is still in an open state.
AWAITING_CLEARANCE The payments have been submitted to the bank and are awaiting confirmation of their status. Files may remain in this status for different periods of time depending on the type of payments in the file.
COMPLETE The receipt status of all payments in the file has been receieved.

Payment Status Codes

Code Description
OPEN The payment is in an open state and can be modified or cancelled. See Create Payment.
PENDING The payment has been process and is scheduled to be sent.
CANCELLED The payment has been cancelled and will not be processed.
PROCESSING The payment is currently processing and has been sent to the bank.
PAID The payment was paid successfully.
FAILED The payment was rejected. See Payment response codes
PRE_PAYMENT_FAILED The payment was rejected during validation.
null The payments in the file have not yet been submitted. This may be because there are errors in the file (File Status Code ERROR) , is still in an open state (File Status Code OPEN), or it has otherwise not yet been submitted (any of the other File Status Codes, except PROCESSING and COMPLETE).
Westpac Privacy Statement

Privacy Statement (for individuals whose personal information may be collected - in this clause referred to as "you"). All personal information we collect about you is collected, used and disclosed by us in accordance with our Privacy Statement which is available at Privacy Statement or by calling us through your relationship manager or Westpac representative. Our Privacy Statement also provides information about how you can access and correct your personal information and make a complaint. You do not have to provide us with any personal information but, if you don't, we may not be able to process an application or a request for a product or service.