Accorto provides standard layouts for invoice layouts, including a summary format.

Without code changes, you can customize

  • what fields are printed via the Invoice Settings (see below)
  • adding additional header fields via the FieldSet "Pdf Report" of the Invoice object
  • adding additional invoice line field via the FieldSet "Pdf Report" of the Invoice Line object.


Invoice Customization

You can customize the standard layout further by 

  • adding a logo from static resources
  • change/overwrite the CSS


Custom Page - e.g. CustomInvoice.page

<apex:page standardController="accorto__Invoice__c" showHeader="false" 
  standardStylesheets="false" sidebar="false" applyHtmlTag="false" applyBodyTag="false" docType="html-5.0" renderAs="pdf" id="inv">
<html xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">  
<head>
<style>
.slds .orgLogo { 
    height: 70px;
    margin-right: 20px; 
}
.docDescription {
    padding-top: 5px;
}
.docNote {
    padding-top: 5px;
    font-style: italic;
}
</style>
</head>
<body>
<div class="slds">
    <accorto:InvoiceHTML id="c" invoiceId="{!$CurrentPage.parameters.id}" 
      orgLegal=" "
      logoUrl="{!URLFOR($Resource.accorto__Accorto102,'assets/logo/AccortoLogo-310.png')}" />
</div>    
</body>
</html>    
</apex:page>

 (replace the logoUrl with the reference to your logo in static resources)


In Setup > Custom Settings > Accorto Settings (Manage)

set the field Invoice: Custom Page to "c__CustomInvoice" (assuming the VisualForce Page Name is CustomInvoice)

Or create a button which links to your VisualForce page and add it to the invoice layout.



Custom Layout

If the customization options are not sufficient, you need to create a custom layout.

Here are the steps if you want to create a custom invoice layout:

  • upload your logos and optional style sheets as static resources
  • create a component with the layout, e.g. InvoiceCustom.component - see attachment
  • create a Visualforce page, e.g. InvoiceCustom.page referencing the component
  • create a button in the Invoice object referencing the Visualforce page

Custom Invoice Component

The Invoice Component allows to use the layout in pages and also in email templates.  As example, check out the attached InvoiceCustom.component. Add your own styles and modify the layout as required.


Custom Invoice Page

Create a VisualForce page:

 

<apex:page standardController="accorto__Invoice__c" showHeader="false" renderAs="pdf">
    <c:InvoiceCustom cinvoiceId="{!$CurrentPage.parameters.id}"/>
</apex:page>

 

For testing, you may want to remove the "renderAs".


Custom Invoice Button

In the Invoice object, create a New Button or Link

  • Select either Detail Page Link - or - Detail Page Button
  • Behavior: Display in new window
  • Content Source: Visualforce Page - select your Invoice Page


Invoice Settings

In Custom Settings > Accorto Invoice Settings, determine how the invoice is laid out:


Setting
Default
Description
Show Organization Name
yes
Show Organization Name - yes (default) - no
Organization Email

Email Address of Organization
Organization Web Address

Organization Web Address
Header Text 1

Additional Header Text
Show Sales Rep
yes
Show Sales Rep (record owner) info - yes (default) - no
Show Sales Rep Phone
yes
Show the Phone number of the Sales Rep (record owner) - yes (default) - no 
(if the Sales Rep is displayed)
Show Sales Rep Email
no
Show the Email of the Sales Rep (record owner) - yes - no (default)
(if the Sales Rep is displayed)
Show Manager
yes
Show Manager (entered or derived from Project Manager) info - yes (default) or no
Show Manager Phone
yes
Show Phone number of Manager - yes (default) - no
(if Manager is displayed)
Show Manager Email
no
Show Email of Manager - yes - no (default)
(if Manager is displayed)
Currency Prefix

Currency Prefix for amounts - only if the organization is not Multi-Currency - example: $
Show Line Tax
yes
Always show Line Tax with Subtotal - yes (default) - no
If the invoice contains tax information, the tax columns are automatically displayed.
Line Description Show Reason
yes
Show the T+E Reason (if any) in the Line Description
(applies when creating the invoice)
Line Note Show Daily Description
no
Show the T+E Item Daily Description in the Invoice Line Note - yes - no (default)
(applies when creating the invoice)