Verify a nonce in Form submission

Problem is, you are submitting data as POST data, but verifying nonce from GET data.

Here is how you can create a nonce field in a form easily:

wp_nonce_field( 'add_new_addres' );

Actually, I personally don’t use more than 1 parameter when calling the wp_nonce_field function.

Then when verify use the following code:

if ( ! wp_verify_nonce( $_POST['_wpnonce'], 'add_new_addres' ) ) {
    wp_die( 'Are you cheating?' );
    // Anything that you want to display for unauthorized action
} else {
    // Good to go for next step
}