Invoices and Quotes

The following hooks are provided for Invoices and Quotes related events.

AcceptQuote

Executes when a client is accepting a quote.

Parameters

Variable Type Notes
quote_id int The id of the quote being accepted.
invoice_id int The id of the invoice created for the quote (if applicable).

Response

No response supported

Example Code

<?php add_hook('AcceptQuote', 1, function($vars) {
			// Perform hook code here...
}); 

AddInvoiceLateFee

Executes when a late fee has been added to an invoice 

Parameters

Variable Type Notes
invoice_id int

Response

No response supported

Example Code

add_hook('AddInvoiceLateFee', 1, function($vars) {
// Perform hook code here...
}); 

AddInvoicePayment

Invoked when a payment is applied to an invoice (including partial payments).

Parameters

Variable Type Notes
invoice_id int The invoice id payment was applied to
trans_id int The Transaction ID of payment was applied to

Response

No response supported

Example Code

add_hook('AddInvoicePayment', 1, function($vars) {
// Perform hook code here...
}); 

AddTransaction

Executes when a transaction is created. Can be a payment or a refund.

Parameters

Variable Type Notes
trans_id int Transaction ID
user_id int User ID
currency int Currency ID (if not related to a client, otherwise client currency)
gateway int Payment Method ID
date datetime
description string
amountin float
fees float
amountout float
rate float Exchange rate
gateway_trans_id string Transaction ID provided by gateway or admin user
invoice_id int Invoice ID to which the transaction was applied
refundid int Refund ID if a refund

Response

No response supported

Example Code

add_hook('AddTransaction', 1, function($vars) {
// Perform hook code here...
});

CancelAndRefundOrder

Runs when an order is requested to be cancelled and refunded, prior to the change of status actually occurring.

Parameters

Variable Type Notes
order_id int The order ID
user_id int Client ID which related to Order
items Object Orders Items

Response

No response supported

Example Code

add_hook('CancelAndRefundOrder', 1, function($vars) {
// Perform hook code here...
});

InvoiceCancelled

Executes when an invoice is being cancelled

Parameters

Variable Type Notes
invoice_id int

Response

No response supported

Example Code

add_hook('InvoiceCancelled', 1, function($vars) {
// Perform hook code here...
}); 

InvoiceChangeGateway

Executes when changing the gateway on an invoice.

Parameters

Variable Type Notes
invoice_id int The id of the invoice being updated.
old_gateway_id int The old payment method id.
new_gateway_id int The New payment method id which is selected.

Response

No response supported

Example Code

add_hook('InvoiceChangeGateway', 1, function($vars) {
// Perform hook code here...
});	

InvoiceCreated

Executed when an invoice has left “Draft” status and is available to its respective client. Execution of this hook occurs after sending the Invoice Created email.

Parameters

Variable Type Notes
source string Indicates where the invoice creation action originated, can be one of adminarea, api or autogen
user_id int The user who initiated the invoice creation.
invoice_id int The invoice ID.
status string The status of the released invoice.

Response

No response supported

Example Code

add_hook('InvoiceCreated', 1, function($vars) {
// Perform hook code here...
});

InvoicePaid

Executes when an invoice is Paid following the email receipt having been sent and any automation tasks associated with the payment action having been run.

Parameters

Variable Type Notes
invoice_id int

Response

No response supported

Example Code

add_hook('InvoicePaid', 1, function($vars) {
// Perform hook code here...
}); 

InvoicePaidPreEmail

Executes when an invoice is Paid prior to any email or automation tasks associated with the payment action having been run.

Parameters

Variable Type Notes
invoice_id int

Response

No response supported

Example Code

add_hook('InvoicePaidPreEmail', 1, function($vars) {
// Perform hook code here...
}); 

InvoicePaymentReminder

Executes when an automated invoice payment reminder is sent.

Parameters

Variable Type Notes
invoice_id int
reminder_no int

Reminders No as

0=Payment Reminder

1= First Overdue Reminder

2=Second Overdue Reminder

3=Third Overdue Reminder

Response

No response supported

Example Code

<?php
add_hook('InvoicePaymentReminder',1,function($vars){
// Perform hook code here...
});
add_hook('InvoicePaymentFirstoverdueReminder',1,function($vars){
// Perform hook code here...
});
add_hook('InvoicePaymentSecondoverdueReminder',1,function($vars){
// Perform hook code here...
});
add_hook('InvoicePaymentThirdoverdueReminder',1,function($vars){
// Perform hook code here...
});

InvoiceRefunded

Executes when an invoice status is changed to Refunded.

Parameters

Variable Type Notes
invoice_id int Invoice ID

Response

No response supported

Example Code

add_hook('InvoiceRefunded', 1, function($vars) {
// Perform hook code here...
});

InvoiceSplit

Executes as an invoice is being split

Parameters

Variable Type Notes
old_invoice_id int The id of the original invoice
invoice_id int The id of the new invoice

Response

No response supported

Example Code

add_hook('InvoiceSplit', 1, function($vars) {
// Perform hook code here...
});

InvoiceUnpaid

Executes when an invoice is being marked as Unpaid

Parameters

Variable Type Notes
invoice_id int

Response

No response supported

Example Code

add_hook('InvoiceUnpaid', 1, function($vars) {
// Perform hook code here...
});

LogTransaction

Runs any time a payment gateway callback is received and logged.

Parameters

Variable Type Notes
gateway string The payment gateway name
response string A string formatted version of all post data received
invoice_id int The Invoice ID 

Response

No response supported

Example Code

add_hook('LogTransaction', 1, function($vars) {
// Perform hook code here...
});

ManualRefund

Executes when an invoice is refunded via the Manual Refund option.

Parameters

Variable Type Notes
invoice_id int Invoice ID of the Invoice which is going to refund
trans_id int Transaction ID of the original payment
amount float The amount to be refunded
type string Refund Type

Response

No response supported

Example Code

add_hook('ManualRefund', 1, function($vars) {
// Perform hook code here...
});

QuoteCreated

Executes when a new quote is created.

Parameters

Variable Type Notes
quote_id int
quote_status string
responce Array

Response

No response supported

Example Code

add_hook('QuoteCreated', 1, function($vars) {
// Perform hook code here...
});

QuoteStatusChange

Executes when a quote status is updated

Parameters

Variable Type Notes
quote_id
int
quote_status
string
responce Array

Response

No response supported

Example Code

add_hook('QuoteStatusChange', 1, function($vars) {
// Perform hook code here...
});

UpdateInvoiceTotal

Executes when an invoice is updated with changes to or additions of line items. Can be used to manipulate the invoice.

Parameters

Variable Type Notes
invoice_id int Invoice ID

Response

No response supported

Example Code

add_hook('UpdateInvoiceTotal', 1, function($vars) {
// Perform hook code here...
});

ViewInvoiceDetailsPage

Executes as the invoice is being viewed as a client

Parameters

Variable Type Notes
invoice_id int

Response

No response supported

Example Code

add_hook('ViewInvoiceDetailsPage', 1, function($vars) {
// Perform hook code here...
});