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
Pay Now eCommerce is a secure online payment service that can be integrated to receive payments. We offer 3D secure Credit Card payments via Mastercard, Visa, American Express, and Diners Club, Instant EFT, Bank EFT and Retail payments. Our Scan to Pay feature allows multiple wallets and banking applications to scan a single QR code for payment.
Also see:
Service set up process
- Specify the payment options you require on application for the service.
- Issue a Pay Now service key on the Netcash account;
- Choose the payment options and
- Insert or select the postback URL’s.
- NOTE: If you developing on behalf of a Netcash client, supply the client with the postback URL’s they need to insert in your NetConnector profile for you to consume before the transaction is processed.
- Issue a Pay Now service key on the Netcash account;
Recommended Implementation Methodology:
- Develop the form POST method from your system with attribute target=”_top” to send the payment instruction to https://paynow.netcash.co.za/site/paynow.aspx to open the link in the full body of the current window.
- Alternatively, develop the form POST method from your system with no target attribute to send the payment instruction to open https://paynow.netcash.co.za/site/paynow.aspx in itself. (NB! This method is not advisable due to cross-browser compatibility, especially for Microsoft Edge and Apple Safari browsers – read more)
Credit Card transaction processing notice
Please take note that any new Pay Now eCommerce service has a default transaction limit of R100.00. If the transaction limit (ZAR value) is exceeded – Credit Card payment options will not display. Contact your Netcash Payments Advisor for assistance.
Pay Now payment methods
The payment methods available and descriptions on the Pay Now service are or see the visual representation here.
Read more about the different payment methods we offer.
Pay Now service key
The service key is used to authenticate access to the Pay Now service. It identifies the origin of the payment instruction. The service key determines the Netcash account to which the proceeds of the payment will be credited and what payment options are available to the customer.
NetConnector
The NetConnector profile settings allow customisation according to specific requirements:
- Active: Indicates the service setting.
- Email: This is the email address to which any errors in processing will be directed and also to which the service key will be sent. Notifications of transactions will also be received here.
- Service Key: This is the unique service key (field m1) which must be included in the POST to the Netcash URL.
- Allow Master and Visa payments: This option is used to control whether your client may pay by credit card.
- Accept url: Enter your accept URL here. If the URL changes for any reason, it can be updated on this page. This is the URL that the browser is sent to if the transaction is successful.
- Decline url: Enter your decline URL here. If the URL changes for any reason, it can be updated on this page. This is the URL that the browser is sent to if the transaction is declined.
- Notify url: This is the URL that Netcash will call for all transactions to indicate payment status. It is also used for offline transactions such as Bank EFT and Retail payments where the payment is not processed in real time. These payments will be posted when they are made and Netcash will notify your system through this URL.
- Redirect url: This is the URL that the browser is sent to once the complete button is clicked on the Bank EFT and Retail payment screens on Netcash. This could/would return the customer to your site while you are waiting for a payment to be made.
- Make test mode active: use this setting while you are testing the system to simulate transactions. Once your development is complete, this box should be un-ticked
Test Card Details
Use the following card details to test transactions. Please note: it is highly advisable to test transactions only if the service is in “TEST MODE” to avoid charges
Visa Successful | |
Visa Card Number | 4000000000000002 |
Expiry Date | Any future date (MMYY) |
CVC/CVV/CVD | 123 |
MasterCard Successful | |
Master Card Number | 5200000000000015 |
Expiry Date | Any future date (MMYY) |
CVC/CVV/CVD | 123 |
Visa Failed | |
Visa Card Number | 4000000000000036 |
Expiry Date | Any future date (MMYY) |
CVC/CVV/CVD | 123 |
MasterCard Failed | |
Master Card Number | 5200000000000049 |
Expiry Date | Any future date (MMYY) |
CVC/CVV/CVD | 123 |
Configure
Pay Now service key variables:
Select ACCOUNT PROFILE -> NetConnector -> PAY NOW in your Netcash account to configure Pay Now variables.
Pre-defined postback URLs
The Pay Now configuration allows the configuration of pre-defined postback URL groups.
These postback URLs perform two (2) functions namely:
- They send data back to the host system about the transaction, especially useful for real-time notifications/allocation of credits.
- Once the transaction is processed, the status and the transactional data of the payment gets redirected to two pages:
- The Notify URL always receives all the transaction data but it is not client-facing -and
- The Accept -or Decline URL depending on the transaction result
- Once the transaction is processed, the status and the transactional data of the payment gets redirected to two pages:
- The Accept -or Decline URL redirects the person making the payment, to a visual display of the transaction status once the transaction is completed.
You will note a Redirect URL in the list as well. This URL is used for when the user click’s the CANCEL PAYMENT button on the payment page, or when the user selects a non-real-time payment; to remind the user of i.e. the payment reference to use.
Read more about pre-defined postback URL groups here.
Netcash allows ISV’s to use default postbacks for their clients by adding them to a dropdown list. This will minimize the risk of incorrect postbacks. It should only be used where all clients have the same postback URLs .
In the above example, Netcash will send the responses to the centralized server and the client simply selects the software from the drop-down list and Netcash directs the postback data .
POST to the Pay Now page:
The following data is required for the e-commerce payment gateway
Mandatory data
Field No: | Field Name: | Length: | Alpha / Numeric | Data Mandatory | Description: |
1 | m1 | 36 | AN | Yes | Pay Now service key. |
2 | m2 | 36 | AN | Yes | The key issued by Netcash to identify the software origin of transactions. (only used by Netcash ISV‘s use the default value: 24ade73c-98cf-47b3-99be-cc7b867b3080) |
3 | p2 | 25 | AN | Yes | This is a unique reference that you will assign to each transaction. This reference should only ever be USED ONCE. |
4 | p3* | 50 | AN | Yes | The description of the goods sent for payment for your internal reference. (** see tip below) |
5 | p4 | 6.2 | N | Yes | Transaction amount that is to be settled to the card – must be in South African Rand (ZAR) |
6 | Budget | 1 | AN | Yes | Y/N |
7 | submit | Yes | Submit Button |
Example
<form name="form" id="x1" method="POST" action="https://paynow.netcash.co.za/site/paynow.aspx" target="_top"> <!---Form POST **---> <input type="text" name="M1" value="7XXX34c4-XXX-40X8-9f1d-7fbXXXX830d3"> <!--- YOUR PAY NOW SERVICE KEY GOES IN HERE ---> <input type="text" name="M2" value="24ade73c-98cf-47b3-99be-cc7b867b3080"> <!--- SOFTWARE VENDOR KEY GOES IN HERE ---> <input type="text" name="p2" value="ID:123"> <!---Unique ID for this / each transaction---> <input type="text" name="p3" value="Test / Demo goods"> <!---Description of goods being purchased---> <input type="text" name="p4" value="5.00"> <!---Amount to be settled / paid---> <input type="text" name="Budget" value="Y"> <!---Compulsory should be Y---> <input name="submit" type="submit" value="PAY"> <!---Submit button---> </form>
Add optional fields
Field No: | Field Name: | Length: | Alpha / Numeric | Data Mandatory | Description: |
7 | m4** | 999 | AN | Yes | Extra field that can contain any data that you require to be returned once the settlement has been done. (** see tip below) |
8 | m5 | 50 | AN | Yes | Extra field that can contain any data that you require back to be returned once the settlement has been done. |
9 | m6 | 50 | AN | Yes | Extra field that can contain any data that you require back to be returned once the settlement has been done. |
10 | m9 | 100 | AN | Yes | Card holders email address should you want an email sent to the cardholder. |
11 | m11 | 10 | N | Yes | Card holders mobile number.ie. 0812345678 |
12 | m10 | 100 | AN | Yes | Any text sent in this parameter is returned to the Accept and Decline return URL’s. This is usually used with basket products eg. OSCommerce and VirtueMart. |
13 ! | m14 | 1 | N | Yes | Tokenize Credit Card 0 = do not return credit card token 1 = return credit card token |
14 | m15 | 36 | AN | Yes | Credit card token for subscription service |
Example
<form name="form" id="x1" method="POST" action="https://paynow.netcash.co.za/site/paynow.aspx" target="_top"> <!---Form POST **---> <input type="text" name="M1" value="7XXX34c4-XXX-40X8-9f1d-7fbXXXX830d3"> <!--- YOUR PAY NOW SERVICE KEY GOES IN HERE ---> <input type="text" name="M2" value="24ade73c-98cf-47b3-99be-cc7b867b3080"> <!--- SOFTWARE VENDOR KEY GOES IN HERE ---> <input type="text" name="p2" value="ID:123"> <!---Unique ID for this / each transaction---> <input type="text" name="p3" value="Test / Demo goods"> <!---Description of goods being purchased---> <input type="text" name="p4" value="5.00"> <!---Amount to be settled / paid---> <input type="text" name="Budget" value="Y"> <!---Compulsory should be Y---> <input type="text" name="m4" value="Extra 1"> <!---This is an extra field ***---> <input type="text" name="m5" value="Extra 2"> <!---This is an extra field ***---> <input type="text" name="m6" value="Extra 3"> <!---This is an extra field ***---> <input type="text" name="m9" value="myemail@email.net"> <!---Card holders email address---> <input type="text" name="m11" value="0812345678"> <!---Card holders mobile number---> <input type="text" name="m10" value="Demo attempt for testing"> <!---Dataset used by shopping carts i.e. OSCommerce---> <input type="text" name="m14" value="1"> <!---Request credit card subscription token 0 = no | 1 = yes---> <input type="text" name="m15" value="11ad173c-9d3f-43b3-19se-as7b865e3099"> <!---Credit card token for subscription cards---> <input name="submit" type="submit" value="PAY"> <!---Submit button---> </form>
Add subscription billing
Field No: | Field Name: | Length: | Alpha / Numeric | Data Mandatory | Description: |
1 | m1 | 36 | AN | Yes | Pay Now service key. |
2 | m2 | 36 | AN | Yes | The key issued by Netcash to identify the software origin of transactions. (only used by Netcash ISV‘s use the default value: 24ade73c-98cf-47b3-99be-cc7b867b3080) |
3 | p2 | 25 | AN | Yes | This is a unique reference that you will assign to each transaction. This reference should only ever be USED ONCE. |
4 | p3* | 50 | AN | Yes | The description of the goods sent for payment for your internal reference. (** see tip below) |
5 | p4 | 6.2 | N | Yes | Transaction amount that is to be settled to the card – must be in South African Rand (ZAR) |
6 | Budget | 1 | AN | Yes | Y/N |
7 | m4** | 999 | AN | No | Extra field that can contain any data that you require to be returned once the settlement has been done. (** see tip below) |
8 | m5 | 50 | AN | No | Extra field that can contain any data that you require back to be returned once the settlement has been done. |
9 | m6 | 50 | AN | No | Extra field that can contain any data that you require back to be returned once the settlement has been done. |
10 | m9 | 100 | AN | No | Card holders email address should you want an email sent to the cardholder. |
11 | m11 | 10 | N | No | Card holders mobile number.ie. 0812345678 |
12 | m10 | 100 | AN | No | Any text sent in this parameter is returned to the Accept and Decline return URL’s. This is usually used with basket products eg. OSCommerce and VirtueMart. |
13 ! | m14 | 1 | N | Yes | Tokenize Credit Card 0 = do not return credit card token 1 = return credit card token |
14 | m15 | 36 | AN | Yes | Credit card token for subscription service |
15 | m16 | 1 | N | Yes | Subscription indicator 0 = No 1 = Yes |
16 | m17 | 3 | N | Yes | Number of cycles for a subscription payment |
17 | m18 | 1 | N | Yes | Subscription frequency 1 = Monthly 2 = Weekly 3 = Bi-weekly 4 = Quarterly 5 = Six monthly 6 = Annually 7 = Daily |
18 | m19 | 8 | N | Yes | Subscription start date CCYY-MM-DD |
19 | m20 | N | Yes | Subscription recurring amount Can differ from initial 3D Secure payment |
|
20 | submit | Yes | Submit Button |
Example
<form name="form" id="x1" method="POST" action="https://paynow.netcash.co.za/site/paynow.aspx" target="_top"> <!---Form POST **---> <input type="text" name="M1" value="7XXX34c4-XXX-40X8-9f1d-7fbXXXX830d3"> <!--- YOUR PAY NOW SERVICE KEY GOES IN HERE ---> <input type="text" name="M2" value="24ade73c-98cf-47b3-99be-cc7b867b3080"> <!--- SOFTWARE VENDOR KEY GOES IN HERE ---> <input type="text" name="p2" value="ID:123"> <!---Unique ID for this / each transaction---> <input type="text" name="p3" value="Test / Demo goods"> <!---Description of goods being purchased---> <input type="text" name="p4" value="5.00"> <!---Amount to be settled / paid---> <input type="text" name="Budget" value="Y"> <!---Compulsory should be Y---> <input type="text" name="m4" value="Extra 1"> <!---This is an extra field ***---> <input type="text" name="m5" value="Extra 2"> <!---This is an extra field ***---> <input type="text" name="m6" value="Extra 3"> <!---This is an extra field ***---> <input type="text" name="m9" value="myemail@email.net"> <!---Card holders email address---> <input type="text" name="m11" value="0812345678"> <!---Card holders mobile number---> <input type="text" name="m10" value="Demo attempt for testing"> <!---Dataset used by shopping carts i.e. OSCommerce---> <input type="text" name="m14" value="1"> <!---Request credit card subscription token 0 = no | 1 = yes---> <input type="text" name="m15" value="11ad173c-9d3f-43b3-19se-as7b865e3099"> <!---Credit card token for subscription cards---> <input type="text" name="m16" value="1"> <!---Subscription indicator 0 = no | 1 = yes---> <input type="text" name="m17" value="6"> <!---Number of cycles for subscription payment---> <input type="text" name="m18" value="1"> <!---Subscription frequency---> <input type="text" name="m19" value="2021-01-01"> <!---Subscription start date ---> <input type="text" name="m20" value="15.00"> <!---Subscription recurring amount---> <input name="submit" type="submit" value="PAY"> <!---Submit button---> </form>
Add split payments
Field No: | Field Name: | Length: | Alpha / Numeric | Data Mandatory | Description: |
1 | m1 | 36 | AN | Yes | Pay Now service key. |
2 | m2 | 36 | AN | Yes | The key issued by Netcash to identify the software origin of transactions. (only used by Netcash ISV‘s use the default value: 24ade73c-98cf-47b3-99be-cc7b867b3080) |
3 | p2 | 25 | AN | Yes | This is a unique reference that you will assign to each transaction. This reference should only ever be USED ONCE. |
4 | p3* | 50 | AN | Yes | The description of the goods sent for payment for your internal reference. (** see tip below) |
5 | p4 | 6.2 | N | Yes | Transaction amount that is to be settled to the card – must be in South African Rand (ZAR) |
6 | Budget | 1 | AN | Yes | Y/N |
7 | m4** | 999 | AN | No | Extra field that can contain any data that you require to be returned once the settlement has been done. (** see tip below) |
8 | m5 | 50 | AN | No | Extra field that can contain any data that you require back to be returned once the settlement has been done. |
9 | m6 | 50 | AN | No | Extra field that can contain any data that you require back to be returned once the settlement has been done. |
10 | m9 | 100 | AN | No | Card holders email address should you want an email sent to the cardholder. |
11 | m11 | 10 | N | No | Card holders mobile number.ie. 0812345678 |
12 | m10 | 100 | AN | No | Any text sent in this parameter is returned to the Accept and Decline return URL’s. This is usually used with basket products eg. OSCommerce and VirtueMart. |
13 ! | m14 | 1 | N | No | Tokenize Credit Card 0 = do not return credit card token 1 = return credit card token |
14 | m15 | 36 | AN | No | Credit card token for subscription service |
20 | m21 | 1 | N | Yes | Split payment indicator **Note 0 = No 1 = Yes |
21 | m22 | 11 | N | Yes | Account number of Netcash target account |
22 | m23 | N | Yes | Fixed value to be paid to target account | |
23 | m24 | N | Yes | Percentage of the total value to be paid to target account | |
24 | m25 | N | Yes | Split minimum amount | |
25 | m26 | N | Yes | Split maximum amount | |
26 | submit | Submit Button |
Example
<form name="form" id="x1" method="POST" action="https://paynow.netcash.co.za/site/paynow.aspx" target="_top"> <!---Form POST **---> <input type="text" name="M1" value="7XXX34c4-XXX-40X8-9f1d-7fbXXXX830d3"> <!--- YOUR PAY NOW SERVICE KEY GOES IN HERE ---> <input type="text" name="M2" value="24ade73c-98cf-47b3-99be-cc7b867b3080"> <!--- SOFTWARE VENDOR KEY GOES IN HERE ---> <input type="text" name="p2" value="ID:123"> <!---Unique ID for this / each transaction---> <input type="text" name="p3" value="Test / Demo goods"> <!---Description of goods being purchased---> <input type="text" name="p4" value="5.00"> <!---Amount to be settled / paid---> <input type="text" name="Budget" value="Y"> <!---Compulsory should be Y---> <input type="text" name="m4" value="Extra 1"> <!---This is an extra field ***---> <input type="text" name="m5" value="Extra 2"> <!---This is an extra field ***---> <input type="text" name="m6" value="Extra 3"> <!---This is an extra field ***---> <input type="text" name="m9" value="myemail@email.net"> <!---Card holders email address---> <input type="text" name="m11" value="0812345678"> <!---Card holders mobile number---> <input type="text" name="m10" value="Demo attempt for testing"> <!---Dataset used by shopping carts i.e. OSCommerce---> <input type="text" name="m14" value="1"> <!---Request credit card subscription token 0 = no | 1 = yes---> <input type="text" name="m15" value="11ad173c-9d3f-43b3-19se-as7b865e3099"> <!---Credit card token for subscription cards---> <input type="text" name="m21" value="1"> Split indicator 0 = no | 1 = yes---> <input type="text" name="m22" value="Account number"> <!---Acc nr for the receiving Netcash account ***---> <input type="text" name="m23" value="5.00"> <!--- Fixed value to be paid to target account***---> <input type="text" name="m24" value="25%"> <!--- Percentage of the total value to be paid to target account***-- <input type="text" name="m25" value="2.00"> <!--- Split minimum amount***---> <input type="text" name="m26" value="6.00"> <!--- Split maximum amount***---> <input name="submit" type="submit" value="PAY"> <!---Submit button---> </form>
**Note
This indicator will create the split payment transactions but each transaction still needs to be manually authorized by a user on the Netcash account.
- If M21 = 1 then M22 and:
- M23 or M24 and M25 or M26 are compulsory
These parameters are required by Pay Now when submitting a transaction. Although data is not mandatory for all the fields; all the fields must be passed in the form post.
Netcash will authenticate the Pay Now service key in field m1.
Only if the key is successfully authenticated, will the payer be directed to the payment method selection page.
! Tokenization will not occur if the Pay Now profile is set to TEST MODE active.
Subscription billing is available for Visa -and MasterCard only.
TIPS
- * Add the purchaser’s name -and the order/invoice number in brackets after the description to easily identify the transaction on your Netcash statement without referencing Pay Now transaction reports.
- ** Add the debtor’s reference in this field, not displayed on the Netcash on screen statement, but is downloadable using the Netcash statement download.
Additional data
- See the recommended implementation methodology here.
- Ensure that the amount includes both decimals and no more than 2 N characters.
- Any data which you need to be returned in the Notify, Accept or Decline post should be included in m4, m5 or m6.
- Data in these fields will be returned in the Extra1, Extra2 and Extra3 fields of the post and in the export of your Netcash statement for reconciliation purposes.
IMPORTANT NOTE
- ** POST must be to a PARENT WINDOW – target=”_top” – not in an iFrame. Netcash inserts some Pay Now services in an iFrame from our suppliers for security reasons. Generally browsers do not allow for iFrame within an iFrame on the same page. See Cross Frame Scripting article
- *** extra field – you can place any data in the extra field which will be returned
Shopping Cart Plugins
Your Netcash account is already integrated into various free online shopping cart plugins and we also support customised integration.
Pay Now payment selections
The payer can choose from a multiple of payment options, as confirgured in the NetConnector profile on the Netcash account.
click image for a demonstration
The payer selects the method of payment (credit card in this example) and is directed to the payment input page.
The payer is then redirected to the bank 3D Secure input screen where they enter the OTP sent to their email or mobile device to authorize the transaction.
If the payer selects Retail, the following is displayed which they can print, email or SMS to make a retail payment
When paying via BANK EFT the following is displayed to enable the payer to make a bank-on-bank EFT (selecting Netcash (PTY) Ltd as predefined bank beneficiary)
The EFT payment details are displayed with a unique deposit reference which must be used to make the EFT payment.
Notify, Accept, Decline and Redirect pages
After the transaction is complete, the data is returned to the respective pages which were configured in the Pay Now service key.
Read more about the Postback URL’s.
Should you place the gateway in “test mode“, the data will automatically be posted to the following url’s depending on transaction status unless you have set your own postback url’s.
- https://api.netcash.co.za/inbound-payments/pay-now/accept-response/
- https://api.netcash.co.za/inbound-payments/pay-now/declined-response/
- https://api.netcash.co.za/inbound-payments/pay-now/redirect-response/
- https://api.netcash.co.za/inbound-payments/pay-now/notify-response/
It is advisable that all developers reconcile (indicate payment status) from the data sent to the NOTIFY url.
Note: For subscription payments it is important to take note of the card expiry date as Netcash will cease running the subscriptions once the card has expired. Where a subscription card has expired, a new subscription will need to be obtained from the card holder
This URL is called for all transactions asynchronously.
Unlike Instant EFT and Credit Card services, delayed services like Retail -and Bank EFT do not call the Accept and Decline URL, however, all the payment type notifications are sent to the Notify URL.
Netcash will retry a number of times before it is noted as not received.
The Notify data should be used for system updates whereas Accept and Decline URL’s are to be used to synchronously update the Buyer on the status of the transaction.
TIP: Remove the [FromUri] attribute from your endpoint signature.
Acceptable URL Format
When the Accept, Decline or Notify URLs are called, any data provided in the M10 field will be appended to the URL. URLs that already contain query parameters are not supported and may lead to invalid URLs being formed. Do not include query parameters in the URLs using the query separator (“?” in the URL).
Netcash Pay Now appends a query separator (“?”) to the URL followed by the M10 field contents.
Example:
M10 field content: | Value1=1&Value2=extra |
https://cart.merchant.site/complete.aspx | |
Final URL: | https://cart.merchant.site/complete.aspx?Value1=1&Value2=extra |
The M10 field can be used for any additional transaction identifying information. Ensure that the contents of the M10 field are acceptable URL query parameters.
Also consider using the Extra1 (M4), Extra2 (M5), Extra3 (M6) fields for similar information.
Notify URL
Data URL is form POST.
content-type: application/x-www-form-urlencoded
Field No: | Field Name: | Alpha / Numeric / Boolean | Description: |
1 | TransactionAccepted | B | “true” means the transaction was successful |
2 | CardHolderIpAddr | AN | This is the original IP the request was made from |
3 | RequestTrace | AN | This is a unique trace id for the transaction. This id can be used to retrieve additional information from the 3rd Party transaction logs |
4 | Reference | AN | The unique reference sent to Netcash in the original request |
5 | Extra1 | AN | The extra field sent in the m4 variable when you made the reques |
6 | Extra2 | AN | The extra field sent in the m5 variable when you made the request |
7 | Extra3 | AN | The extra field sent up in the m6 variable when you made the request |
8 | Amount | N | This is the amount sent Netcash in the original request |
9 | Method | N | 1 Credit card 2 Bank EFT 3 Retail 4 Ozow 5 MasterPass 6 Visa Checkout 7 Masterpass QR 8 Mobicred 9 Payflex 10 Flash1Voucher |
10 | ccToken | AN | Credit Card Vault GUiD |
11 | ccHolder | AN | Credit Cardholder name |
12 | ccMasked | AN | Masked Credit Card number |
13 | ccExpiry | N | Credit Card expiry date MMCCYY |
Accept URL
Data URL is form POST.
content-type: application/x-www-form-urlencoded
Field No: | Field Name: | Alpha / Numeric / Boolean | Description: |
1 | TransactionAccepted | B | “true” means the transaction was successful |
2 | CardHolderIpAddr | AN | This is the original IP the request was made from |
3 | RequestTrace | AN | This is a unique trace id for the transaction. This id can be used to retrieve additional information from the 3rd Party transaction logs |
4 | Reference | AN | The unique reference sent to Netcash in the original request |
5 | Extra1 | AN | The extra field sent in the m4 variable when you made the reques |
6 | Extra2 | AN | The extra field sent in the m5 variable when you made the request |
7 | Extra3 | AN | The extra field sent up in the m6 variable when you made the request |
8 | Amount | N | This is the amount sent Netcash in the original request |
9 | Method | N | 1 Credit card 2 Bank EFT 3 Retail 4 Instant EFT 5 MasterPass 6 Visa Click to Pay 7 Masterpass QR 8 Mobicred 9 Payflex 10 Flash1Voucher |
10 | ccToken | AN | Credit Card Vault GUiD |
11 | ccHolder | AN | Credit Cardholder name |
12 | ccMasked | AN | Masked Credit Card number |
13 | ccExpiry | N | Credit Card expiry date MMCCYY |
Decline URL
Data URL is form POST.
content-type: application/x-www-form-urlencoded
Field No: | Field Name: | Alpha / Numeric / Boolean | Description: |
1 | TransactionAccepted | B | “true” means the transaction was successful |
2 | CardHolderIpAddr | AN | This is the original IP the request was made from |
3 | RequestTrace | AN | This is a unique trace id for the transaction. This id can be used to retrieve additional information from the 3rd Party transaction logs |
4 | Reference | AN | The unique reference sent to Netcash in the original request |
5 | Extra1 | AN | The extra field sent in the m4 variable when you made the reques |
6 | Extra2 | AN | The extra field sent in the m5 variable when you made the request |
7 | Extra3 | AN | The extra field sent up in the m6 variable when you made the request |
8 | Amount | N | This is the amount sent Netcash in the original request |
9 | Reason | AN | Reason for the transaction decline |
Redirect URL
Data URL is form POST.
content-type: application/x-www-form-urlencoded
Field No: | Field Name: | Alpha / Numeric / Boolean | Description: |
1 | TransactionAccepted | B | “true” means the transaction was successful |
2 | CardHolderIpAddr | AN | This is the original IP the request was made from |
3 | RequestTrace | AN | This is a unique trace id for the transaction. This id can be used to retrieve additional information from the 3rd Party transaction logs |
4 | Reference | AN | The unique reference sent to Netcash in the original request |
5 | Extra1 | AN | The extra field sent in the m4 variable when you made the reques |
6 | Extra2 | AN | The extra field sent in the m5 variable when you made the request |
7 | Extra3 | AN | The extra field sent up in the m6 variable when you made the request |
8 | Amount | N | This is the amount sent Netcash in the original request |
9 | Reason | AN | “Pending EFT Payment” or “Pending Retail payment” |
10 | Method | N | Returns 2 for EFT Returns 3 for Retail |
Unpaid reason codes
Click here for a complete list of unpaid reason codes
Transaction trace
After your servers have received the transaction it is advisable to compare it with the original data sent. This can be done by sending a request that contains the ‘RequestTrace’ parameter to our servers which will return the transaction data to the calling service. Call: URL: https://ws.netcash.co.za/PayNow/TransactionStatus/Check?RequestTrace=114.228862205218 where 114.228862205218 represents the ‘RequestTrace’ parameter and it would reply with a JSON string with the data that would look like this:
{“RequestTrace”:”114.228862205218″,”Amount”:”4.00″,”TransactionAccepted”:false,”Reference”:”22″,”Reason”:”Invalid card number”}
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