diff options
-rw-r--r-- | FS/FS/cust_bill_pay_pkg.pm | 6 | ||||
-rw-r--r-- | FS/FS/cust_pay.pm | 10 |
2 files changed, 12 insertions, 4 deletions
diff --git a/FS/FS/cust_bill_pay_pkg.pm b/FS/FS/cust_bill_pay_pkg.pm index eb2e80c78..5d154d0b7 100644 --- a/FS/FS/cust_bill_pay_pkg.pm +++ b/FS/FS/cust_bill_pay_pkg.pm @@ -102,7 +102,11 @@ sub insert { #payment receipt my $conf = new FS::Conf; - my $trigger = $conf->config('payment_receipt-trigger') || 'cust_pay'; + my $trigger = + $conf->config('payment_receipt-trigger', + $self->cust_bill_pay->cust_bill->cust_main->agentnum, + ) + || 'cust_pay'; if ( $trigger eq 'cust_bill_pay_pkg' ) { my $error = $self->send_receipt( 'manual' => $options{'manual'}, diff --git a/FS/FS/cust_pay.pm b/FS/FS/cust_pay.pm index 3cdbdb33e..26d46dc8a 100644 --- a/FS/FS/cust_pay.pm +++ b/FS/FS/cust_pay.pm @@ -644,6 +644,9 @@ sub send_receipt { my $msgnum = $conf->config('payment_receipt_msgnum', $cust_main->agentnum); if ( $msgnum ) { + my %substitutions = (); + $substitutions{invnum} = $opt->{cust_bill}->invnum if $opt->{cust_bill}; + my $queue = new FS::queue { 'job' => 'FS::Misc::process_send_email', 'paynum' => $self->paynum, @@ -651,9 +654,10 @@ sub send_receipt { }; $error = $queue->insert( FS::msg_template->by_key($msgnum)->prepare( - 'cust_main' => $cust_main, - 'object' => $self, - 'from_config' => 'payment_receipt_from', + 'cust_main' => $cust_main, + 'object' => $self, + 'from_config' => 'payment_receipt_from', + 'substitutions' => \%substitutions, ), 'msgtype' => 'receipt', # override msg_template's default ); |