Before you start

Please download the suggested API integration process flow document and use it as a reference when developing.
Kindly adhere to the Netcash brand guidelines when developing.

Programmers Guide

Refer to our Programmers guide for more detail on how to apply the required methodology in this document.
Ensure that the settings for developers are adhered to before you proceed with your implementation.

Web Service Methods

The list of Netcash web service methods can be found here.

Quick Start Guides

Quick Start Guides will help you understand this service and get you started.

Overview

A web service ‘NIWS_NIF’ used to request mandate data

The service is asynchronous and comprises 2 method calls:

  • RequestMandateData (Returns a file token)
  • RetrieveMandateData (Returns a tab-delimited file of mandate data)

Technical Information

NIWS_NIF is an asynchronous web service which exposes multiple methods. The method RequestMandateData and RetrieveMandateData allow an external system to download a file of all mandates currently in the system.

 

Request Mandate data

  • Web service: https://ws.netcash.co.za/niws/niws_nif.svc
  • Method: RequestMandateData
  • Service key: Debit order service key

 

Requests to the web service are sent as strings

Example:  public string RequestMandateData(string ServiceKey)

 

Successful request

The method returns a file token for successful requests
Example:  20000000.2550236530.0483.2.2

 

Unsuccessful request

If the method call fails, the web service will return an error code:

Code

Description

100

Authentication failure. Ensure that the service key in the method call is correct

200

General code exception. Please contact NetcashTechnical Support.

Retrieve Mandate Data

  • Web service: https://ws.netcash.co.za/niws/niws_nif.svc
  • Method: RetrieveMandateData
  • Service key: Debit Order service key

Requests to the web service are sent as strings

Example:
public string RetrieveMandateData(string ServiceKey, string FileToken)

 

Output file

The file returned contains a record for every mandate held in the system

 

File structure

The file is tab delimited with a linefeed character as line terminator.

 

File header

(occurs once at the start of the file)

Field

Name Value

1

Record identifier ###BEGIN

2

Date CCYYMMDD

 

Mandate records

(occurs multiple times – once per mandate)

Field Field name Explanation
1 Status

1, 8 or 11 – Capturing

2 – Awaiting authorisation

3 – Expired

4 – Failed

5 – Declined

6 – Accepted

7 – Details changed

9 – Verified

10 – Unverified

2 Account reference Your reference for the mandate
3 Mandate name Client name
4 Mandate amount Amount in decimal (EG: 123.45)
5 Is Consumer “0” Company
“1” Individual
6 First name Account holder first name
7 Surname Account holder surname
8 Trading name Business account name
9 Registration number Business account registration number
10 Registered name Business account registered name
11 Mobile number Account holder cell number EG: 27827822349
12 Debit Frequency 1 = Monthly
2 = Bi-monthly3 = Three monthly4 = Six monthly5 = Annually

6 = Weekly

7 = Bi-weekly

13 Commencement month MM
14 Commencement day (debit day options)

Debit day options

01 – 31 or Last day of month

Forward slash separated list

EG: 05/15/25/LDOM

15 Agreement date CCYYMMDD
16 Agreement reference number Your reference for this agreement
17 Cancellation notice period 01 – 60
18 Debit day on public holiday

Alternate debit day if debit day if selected debit day falls on a non-business date

0 = Preceding ordinary business day

1 = Very next ordinary business day

19 Mandate active

0 = Inactive

1 = Active

20 Title

1 = Mr

2 = Mrs

3 = Ms

4 = Miss

5 = Dr

6 = Prof

21 Email address The email address of the account holder
22 Mandate type (Bank account or Credit card)

1 = Bank account

2 = Credit card

23 Bank account name/Name on Credit card The name of the bank account holder
24 Bank account type/Credit card type

If Credit card:

1 = Mastercard 2 = Visa

 

If Bank account:

1 = Current

2 = Savings

3 = Transmission

25 Branch code/Expiry month

If Credit card:

2 digit month (MM) include leading zero

 

If Bank account:

The branch code of the account to be debited

26 Expiry year / filler

If Credit card:

4 digit year (CCYY)

 

If Bank account:

0 (Filler)

27 Account number/ Credit card token

If Credit card:

PCI Token generated for Credit card processing

 

If Bank account:

The bank account number to be debited

28 Bank account verification number (ID number/Company registration number) The number linked to the bank account.
29 Is Id number

0 = Not an SA Id number

1 = SA Id number

30 Debit Masterfile group The group to which the mandate is linked
31 Field 1 Additional data supplied
32 Field 2
33 Field 3
34 Field 4
35 Field 5
36 Field 6
37 Field 7
38 Field 8
39 Field 9
40 December debit day

01 – 31 or Last day of month

Forward slash separated list

EG: 05/15/25/LDOM

41 Allow variable debit amounts

0 = Do not allow variable amounts

1= Allow variable amounts

43 Request AVS

0 = Do not run Bank account verification check

1= Run Bank account verification check

43 Additional clauses The Id of additional clauses included in the mandate (Comma separated list)

 

File trailer

(occurs once – the last line in the file)

Field Name Value
1 Record identifier ###END

Netcash brand guidelines

Please refer to the Netcash brand guidelines here when using any logos, images, icons, labels, descriptions, and references to Netcash in your software.

Testing

See Testing section for more details. If you require any integration assistance contact our technical support team

Netcash may provide example/sample/demo ‘code snippets’ and/or external links in this Technical Document. Such are for guidance purposes only and may not function on every developer’s system/s. Netcash disclaims any and all liability for the usage of guidance resources provided -and you as the Developer; must accept full responsibility for the usage of such. While every possible effort has been taken to ensure compatibility across multiple system configurations, the contents of this document cannot be guaranteed to work on all systems, with all operating systems -and/or with all system configuration/s.