I do this with a script (suitescript 1.0) that looks like this:
function notifySubmit() {
// build request url, headers, and post data...
...
// when I'm sending the submit notification to my API, I want to know
// what record is being submitted and who is submitting, so some of the
// data I'll add to by postData object is:
var recordType = nlapiGetRecordType();
var internalId = nlapiGetRecordId();
var requestUser = nlapiGetUser();
...
// send the request
return nlapiRequestURL(url, JSON.stringify(postData), headers);
}
I upload the file with this function in it. Then I create a new script record (at Customization > Scripting > Scripts > New) attached to that file, with a type of "User Event".
On that script record, Netsuite has form fields to specify the function to be called before load, before submit, and after submit. Since I only have a single function, and I want that function to be called after a record has been submitted, I set the value of the "After Submit Function" field to "notifySubmit".
Scripts are attached to record types through "Script Deployments". After saving the script record, hit "Deploy Script". That takes you to a new page for a script deployment, where in the "Applies To" field you would select "Invoice". You'll probably need to set the status, logging level, and audience of the deployment as well.
The relationship of script to script deployment is one to many. So if later you decide you want to send the notification when sales orders and purchase orders are created, you'll still just have the one script record, but that single script record will have 3 script deployments (one for invoice, one for sales order, one for purchase order).
SuiteAnswer 29246 explains this whole script creation and deployment process in more detail.