Skip to main content

Payments API

Use this resource to:

  1. Find all currently Pending payments.
  2. Find recently Returned payments.
  3. Search by Reference.
  4. Search by Date.

For making payments as part of a file or batch use the Files API.

List pending payments

This resource lists currently pending payments. Any payments in the PENDING state will be listed here.

Request

GET /payments/pending

Request body

None.

Response

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

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

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.

List returned payments

This resource lists payments that have been returned in the last 48 hours.

Request

GET /payments/returns

Request body

None.

Response

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

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

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.

List by reference

List payments by reference. Use this resource to find payments by their reference code, buyer reference, or alternate reference.

Request

GET /payments/for-reference?reference={string}

Query parameters

Parameter Name Format Description
reference string Get a list of files for the provided reference code, buyer reference, or alternate reference.

Request body

None.

Response

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

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

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 payments by payment date.

Request

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

Query parameters

Parameter Name Format Description
date string Get a list of payments for the provided date. In the format YYYY-MM-DD.

Request body

None.

Response

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

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

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.

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

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 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",
}

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 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"
}

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"
}

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).

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"
}

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"
}
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.