Stapled super fund API test scenarios

Last modified

Overview

This page provides some suggested test scenarios to help you test the use of the stapled super fund API in your software in the sandbox environment.If you follow the instructions below, you will get the mocked responsesas described below.

Test Scenario 1 - POST RSF - TFN provided - SMSF response

Request information

HTTP verb: POST

Payee TFN: 220114645

Response information

Response type: Business payload

HTTP status: 200

HTTP reason: OK

HTTP header: receipt: 6300000000014

Payload:

        
            {
                "data": {
                    "requestOutcome": {
                        "reasonCode": "Stapled SMSF"
                    },
                    "payee": {
                        "payeePayrollId": "123456789",
                        "personName": {
                            "familyName": "Doe",
                            "givenName": "John",
                            "otherGivenName": "Louis Rey"
                        }
                    },
                    "superfund": {
                        "australianBusinessNumber": "12345678901",
                        "organisationalName": "Australian Super Pty Ltd",
                        "superannuationProduct": {
                            "name": ""
                        },
                        "superannuationFund": {
                            "uniqueSuperannuationIdentifier": "",
                            "memberAccount": ""
                        }
                    }
                }
            }
        
    

Test Scenario 2 -POST RSF - TFN provided - Non SMSF response

Request information

HTTP verb: POST

Payee TFN: 220114653

Response information

Response type: Business payload

HTTP status: 200

HTTP reason: OK

HTTP header: receipt: 6300000000027

Payload:

        
            {
                "data": {
                    "requestOutcome": {
                        "reasonCode": "Stapled fund"
                    },
                    "payee": {
                        "payeePayrollId": "123456789",
                        "personName": {
                            "familyName": "Doe",
                            "givenName": "John",
                            "otherGivenName": "Louis Rey"
                        }
                    },
                    "superfund": {
                        "australianBusinessNumber": "12345678901",
                        "organisationalName": "Australian Super Pty Ltd",
                        "superannuationProduct": {
                            "name": "Australian Super"
                        },
                        "superannuationFund": {
                            "uniqueSuperannuationIdentifier": "STA0100AU",
                            "memberAccount": "12345678901234"
                        }
                    }
                }
            }
        
    

Test Scenario 3 -POST RSF - TFN not provided - BET ID and message

Request information

HTTP verb: POST

Payee TFN: 111111111

Response information

Response type:Informational Message

HTTP status: 202

HTTP reason: Accepted

HTTP header: receipt: 6300000000030

Payload:

        
            {
                "messages": [
                    {
                        "code": "RSF.00002",
                        "detail": "Your request cannot be processed to the service level agreement. Please use the corresponding GET action with the provided receipt number to get the request outcome.",
                        "severity": "information"
                    }
                ]
            }
        
    

Test Scenario 4 -GET RSF by Receipt Id - SMSF response

Request information

HTTP verb: GET

Payee TFN: 220114688

Response information

Response type:Business Payload

HTTP status: 200

HTTP reason: OK

HTTP header: receipt:6300000000069

Payload:

        
            {
                "data": {
                    "requestOutcome": {
                        "reasonCode": "Stapled SMSF"
                    },
                    "payee": {
                        "payeePayrollId": "123456789",
                        "personName": {
                            "familyName": "Doe",
                            "givenName": "John",
                            "otherGivenName": "Louis Rey"
                        }
                    },
                    "superfund": {
                        "australianBusinessNumber": "12345678901",
                        "organisationalName": "Australian Super Pty Ltd",
                        "superannuationProduct": {
                            "name": ""
                        },
                        "superannuationFund": {
                            "uniqueSuperannuationIdentifier": "",
                            "memberAccount": ""
                        }
                    }
                }
            }
        
    

Test Scenario 5 -GET RSF by Invalid Receipt Id

Request information

HTTP verb: GET

Payee TFN: 220114696

Response information

Response type: Error

HTTP status: 422

HTTP reason: Unprocessable Entity

HTTP header: receipt:6300000000072

Payload:

        
            {
                "errors": [
                    {
                        "code": "RSF.00006",
                        "detail": "Receipt number provided is invalid.",
                        "source": {
                            "parameter": "receipt"
                        }
                    }
                ]
            }
        
    

Test Scenario 6 -POST RSF - Exempted TFN provided - Either address is required

Request information

HTTP verb: POST

Payee TFN: 333333333

Response information

Response type: Error

HTTP status: 422

HTTP reason: Unprocessable Entity

HTTP header: receipt: 6300000000043

Payload:

        
            {
                "errors": [
                    {
                        "code": "ADDR.00001",
                        "detail": "If an exempted TFN code is present, Payee residential address or Payee postal address must be provided."
                    }
                ]
            }
        
    

Test Scenario 7 -POST RSF - Passes validation but no mock scenario match for POST

Request information

HTTP verb: POST

Payee TFN: OTHER

Response information

Response type: Business payload

HTTP status: 200

HTTP reason: OK

HTTP header: receipt: 6300000000056

Payload:

        
            {
                "data": {
                    "requestOutcome": {
                        "reasonCode": "StapledFund"
                    },
                    "payee": {
                        "payeePayrollId": "123456789",
                        "personName": {
                            "familyName": "Doe",
                            "givenName": "John",
                            "otherGivenName": "Louis Rey"
                        }
                    },
                    "superfund": {
                        "australianBusinessNumber": "12345678901",
                        "organisationalName": "Australian Super Pty Ltd",
                        "superannuationProduct": {
                            "name": "Australian Super"
                        },
                        "superannuationFund": {
                            "uniqueSuperannuationIdentifier": "STA0105AU",
                            "memberAccount": "12345678901234"
                        }
                    }
                }
            }
        
    

Test Scenario 8 -GET RSF - Passes validation but no mock scenario match for GET

Request information

HTTP verb: GET

Payee TFN: OTHER

Response information

Response type: Business payload

HTTP status: 200

HTTP reason: OK

HTTP header: receipt: 6300000000105

Payload:

        
            {
                "data": {
                    "requestOutcome": {
                        "reasonCode": "Stapled fund"
                    },
                    "payee": {
                        "payeePayrollId": "123456789",
                        "personName": {
                            "familyName": "Doe",
                            "givenName": "John",
                            "otherGivenName": "Louis Rey"
                        }
                    },
                    "superfund": {
                        "australianBusinessNumber": "12345678901",
                        "organisationalName": "Australian Super Pty Ltd",
                        "superannuationProduct": {
                            "name": "Australian Super"
                        },
                        "superannuationFund": {
                            "uniqueSuperannuationIdentifier": "STA0106AU",
                            "memberAccount": "12345678901234"
                        }
                    }
                }
            }
        
    

Go back to Stapled super fund API