What happens once I sign the contract for property purchase?

So, you’ve sit down with the agent and singed your contract then paid your 10% deposit. Congrats!

Next step is the agent will obtain the vendor(=seller) signature on the contract paper that you just signed and send you a copy as long as someone else doesn’t put counter offer in-between.

Once you got the copy, you can give it to the bank of your choice and get your loan application process started.
Alternatively you can provide your income and expense detail to bank and/or broker beforehand to get pre-approval which will fast-track your loan application.

As for a transaction that involves large sum of money, they still want to verify all the things including valuation of property, this will take 2 weeks or so unless you are getting your loan from your usual bank, in which case they don’t need to verify much as they have access to all the details already.

When it’s done, you will be provided loan offer letter and some other paperwork to sign.
Read loan offer carefully, it has all the detail you need to know including every fees and charges bank doesn’t cover such as stamp duty.

The bank may offer what it called “rate lock” which is basically a gamble that you pay $1k-ish fee and secure the current rate if it goes up between now and settlement. I recommend look into some finance news and make informed decision.

The bank also asks you to provide certificate of currency’ which means home insurance policy starts before settlement.
They’ll also recommend you to start the cover right now as you do financial interests on the property so you’ll get covered if there’s any issue happens before the settlement.

Now it’s time to choose your solicitor or conveyancer if you haven’t.

They’ll do three things for you:
1. Review section 32
2. Run property enquiries – get exact copy of paperwork included in section 32 to ensure it’s accurate
3. Settlement

There’s also an option for ‘diy conveyancing’ and save $1k-$1.5k

Next is pre-settlement inspection which happens about a week before settlement, you can casually call the agent and book this one.

Settlement date is fixed by contract yet time is something to be arranged with the vendor and the agent which is usually a few days before settlement.
You’ll also receive a settlement statement includes adjustment for council rate and water bill.

On the day of settlement, you need to have sufficient amount of fund available in your transaction account that covers stamp duty, title office fee, mortgage charge & discharge fee and water & rate adjustment.

Actual settlement process is rather quick, heard 5 minutes or so, but may take long time depends on the queue of the settlement venue provided by bank

Once it’s processed, you will get contacted from solicitor to pick up the key then later on the day the bank create your home loan account.

Generate custom x509 certificate in Okta

* Requires API key with admin access, least for the target app

Obtain app name & label using app ID

curl -v -X GET \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: SSWS ${api_token}" \

Generate custom certificate and capture ‘kid’ value from response

curl -v -X POST \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: SSWS ${api_token}" \
-d '{
}' "https://[okta_instance].okta.com/api/v1/apps/[app_id]/credentials/keys/generate?validityYears=[number]"

Inject custom certificate to app

curl -v -X PUT \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "Authorization: SSWS ${api_token}" \
-d '{
  "name": "[app_name]",
  "label": "[app_label]",
  "signOnMode": "SAML_2_0",
  "credentials": {
    "signing": {
      "kid": "[kid]"
}' "https://[okta_instnace].okta.com/api/v1/apps/[app_id]"

Selenium test with docker-compose

In case using selenium standalone during test.

docker-compose YAML

  version: '3'
          - selenium
          - E2ETEST_HOST=test
          - SELENIUM_PORT=4444
          - SELENIUM_HOST=selenium
          context: .
          dockerfile: Dockerfile
          - 80
          - 443
        command: run_test.sh
        image: selenium/standalone-chrome
          - 4444

nightwatch config sample

"test_settings": {
    "default": {
        "selenium_port"  : parseInt(process.env.SELENIUM_PORT) || 4444,
        "selenium_host"  : process.env.SELENIUM_HOST,
        "silent": true,
        "desiredCapabilities": {
            "browserName": "chrome",
            "javascriptEnabled": true,
            "acceptSslCerts": true,
            "chromeOptions" : {
                "args" : ["--no-sandbox"]


docker-compose down
docker-compose up --force-recreate --build --abort-on-container-exit --exit-code-from test test

AWS KMS – two liners

For binary encrypted output:

aws kms encrypt --region ap-southeast-2 --key-id alias/blah --plaintext fileb://blah --output text --query CiphertextBlob | base64 --decode > blah.enc
aws kms decrypt --ciphertext-blob fileb://blah.enc --output text --query Plaintext | base64 --decode

For base64 encrypted output:

aws kms encrypt --region ap-southeast-2 --key-id alias/blah --plaintext fileb://blah --output text --query CiphertextBlob > blah.enc
aws kms decrypt --ciphertext-blob fileb://<(cat blah.enc | base64 --decode) --output text --query Plaintext | base64 --decode

or try: