The client(Rabbit Hole Hay-US-NS) would like to create a custom pdf for the invoice. The mapping and mock-up is already given by the client.
RHHUN-15
<?xml version="1.0"?><!DOCTYPE pdf PUBLIC "-//big.faceless.org//report" "report-1.1.dtd">
<pdf>
<head>
<link name="NotoSans" type="font" subtype="truetype" src="${nsfont.NotoSans_Regular}" src-bold="${nsfont.NotoSans_Bold}" src-italic="${nsfont.NotoSans_Italic}" src-bolditalic="${nsfont.NotoSans_BoldItalic}" bytes="2" />
<#if .locale == "zh_CN">
<link name="NotoSansCJKsc" type="font" subtype="opentype" src="${nsfont.NotoSansCJKsc_Regular}" src-bold="${nsfont.NotoSansCJKsc_Bold}" bytes="2" />
<#elseif .locale == "zh_TW">
<link name="NotoSansCJKtc" type="font" subtype="opentype" src="${nsfont.NotoSansCJKtc_Regular}" src-bold="${nsfont.NotoSansCJKtc_Bold}" bytes="2" />
<#elseif .locale == "ja_JP">
<link name="NotoSansCJKjp" type="font" subtype="opentype" src="${nsfont.NotoSansCJKjp_Regular}" src-bold="${nsfont.NotoSansCJKjp_Bold}" bytes="2" />
<#elseif .locale == "ko_KR">
<link name="NotoSansCJKkr" type="font" subtype="opentype" src="${nsfont.NotoSansCJKkr_Regular}" src-bold="${nsfont.NotoSansCJKkr_Bold}" bytes="2" />
<#elseif .locale == "th_TH">
<link name="NotoSansThai" type="font" subtype="opentype" src="${nsfont.NotoSansThai_Regular}" src-bold="${nsfont.NotoSansThai_Bold}" bytes="2" />
</#if>
<macrolist>
<macro id="nlheader">
<table style="width: 100%;"><tr>
<td align="right" style="padding-bottom: 4px; padding-right: 0px; padding-top: -9px;"><span style="font-size: 40px; color: #568b4e; font-family: Helvetica Neue, Helvetica, Arial, sans-serif; ">Invoice</span></td>
</tr>
<tr>
<td align="right" style="padding-bottom: 4px; padding-right: 0px;"><span style="font-size: 18pt; color: #568b4e; font-weight: bold; font-family: apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;">#${record.tranid}</span></td>
</tr>
<tr>
<td align="right" style="padding-bottom: -28px; padding-right: 0px;"><span style="font-size: 16pt; color: #568b4e; font-family: apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;">${record.trandate}</span></td>
</tr>
<tr>
<td align="right"> </td>
</tr>
<tr>
<td align="right"> </td>
</tr>
<tr>
<td align="left" style="padding-left: 476px;"><span style="font-size: 12pt; color: #568b4e; font-weight: bold; font-family: apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;">TOTAL</span></td>
</tr>
<tr>
<td align="right" style="padding-right: 0px; padding-top: -5px;"><span style="font-size: 28pt; color: #568b4e; font-weight: bold; font-family: apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;">${record.total}</span></td>
</tr>
<tr>
</tr>
<tr>
<td align="right" style="padding-left: 470px;"><span style="font-size: 12pt; color:#568b4e; font-family: apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Oxygen, Ubuntu, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;">Due Date : ${record.duedate}</span></td>
</tr></table>
<table style="width: 100%;"><tr>
<td style="width: 50%; vertical-align: top;">
<table style="width: 100%;"><tr>
<td align="left" colspan="3" style="font-size: 14px; padding: 6px 0px 2px -11px; font-weight: bold; color: #568b4e;">INVOICE TO</td>
</tr>
<tr>
<td align="left" colspan="3" style="padding:0px 0px 0px -11px; line-height: 12pt; color: #568b4e; font-size: 13px; "><#if record.billingaddress.attention?has_content><#assign attetion = record.billingaddress.attention><#if record.billingaddress.addressee?has_content><#assign addressee = record.billingaddress.addressee><#if attetion != addressee>${record.billingaddress.attention}<br /></#if> </#if> </#if> <#if record.billingaddress.addressee?has_content>${record.billingaddress.addressee}<br /></#if> <#if record.billingaddress.addr1?has_content>${record.billingaddress.addr1}<br /></#if> <#if record.billingaddress.addr2?has_content>${record.billingaddress.addr2}<br /></#if> <#if record.billingaddress.city?has_content>${record.billingaddress.city}</#if> <#if record.billingaddress.state?has_content>${record.billingaddress.state}</#if> <#if record.billingaddress.zip?has_content>${record.billingaddress.zip}<br /></#if> <#if record.billingaddress.country?has_content>${record.billingaddress.country}<br /></#if></td>
</tr></table>
</td>
<td style="width: 50%; vertical-align: top;">
<table style="width: 100%;"><tr>
<td align="center" border-right="2.5" border-right-color="#568b4e" style="font-size: 12px; line-height: 14px; color: #568b4e; font-weight: bold;margin-top:30px;">TERMS</td>
<td align="center" style="font-size: 12px; line-height: 14px; color: #568b4e; font-weight: bold;margin-top:30px;">PURCHASE ORDER #</td>
</tr>
<tr>
<td align="center" border-right="2.5" border-right-color="#568b4e" style="font-size: 12px; font-weight: light; color: #568b4e;">${record.terms}</td>
<td align="center" style="font-size: 12px; font-weight: light; color: #568b4e;">${record.otherrefnum}</td>
</tr></table>
</td>
</tr></table>
</macro>
<macro id="nlfooter">
<table style="width: 100%; font-size: 12pt;"><tr>
<td class="address" colspan="2" rowspan="6"> </td>
<td align="center" class="address" colspan="2" style="color: #FFFFFF; padding-top:43pt;"> </td>
<td class="address" colspan="2"> </td>
</tr>
<tr>
<td align="center" class="address" colspan="2" style="color: #FFFFFF;">199 E. 13th St.</td>
<td class="address" colspan="2"> </td>
</tr>
<tr>
<td align="center" class="address" colspan="2" style="color: #FFFFFF;">Chico, CA 95928</td>
<td class="address" colspan="2"> </td>
</tr>
<tr>
<td align="center" class="address" colspan="2" style="color: #FFFFFF;">United States of America</td>
<td class="address" colspan="2"> </td>
</tr>
<tr>
<td align="center" class="address" colspan="2" style="color: #FFFFFF;">(530) 763-6900</td>
<td class="address" colspan="2"> </td>
</tr>
<tr>
<td align="center" class="address" colspan="2" style="color: #FFFFFF;">accounting@rabbitholehay.com</td>
<td align="right" class="address" colspan="2" style="padding-right: -34.5px; color: #FFFFFF;"><pagenumber/> of <totalpages/></td>
</tr></table>
<!--</div>-->
</macro>
<macro id="watermark">
<p><img src="https://4501420.app.netsuite.com/core/media/media.nl?id=5067&c=4501420&h=qjqhcGn5NY3ZBOF5_8Fk0GwXp5J8Mw4st2h6YdFN5f4R8eWe" style="width: 612; height: 792;" /></p>
</macro>
</macrolist>
<style type="text/css">* {
<#if .locale == "zh_CN">
font-family: NotoSans, NotoSansCJKsc, sans-serif;
<#elseif .locale == "zh_TW">
font-family: NotoSans, NotoSansCJKtc, sans-serif;
<#elseif .locale == "ja_JP">
font-family: NotoSans, NotoSansCJKjp, sans-serif;
<#elseif .locale == "ko_KR">
font-family: NotoSans, NotoSansCJKkr, sans-serif;
<#elseif .locale == "th_TH">
font-family: NotoSans, NotoSansThai, sans-serif;
<#else>
font-family: NotoSans, sans-serif;
</#if>
}
table {
font-size: 11pt;
table-layout: fixed;
}
th {
font-weight: bold;
font-size: 8pt;
align:center;
vertical-align: middle;
padding-left: 0px;
padding-top: 5px;
padding-bottom:6px;
padding-right: 0px;
color: #333333;
}
/* td {
padding: 4px 6px;
}*/
/*td p { align:left }*/
.address {
text-align: center;
padding-bottom: 2px;
padding-left: 0px;
padding-right: 0px;
padding-top: 0px;
}
table.align td p{
align:center;
}
table.alignitem td p{
align:left
}
/*.alignitem
{
background-color: #f5f4e4;
}*/
</style>
</head>
<body header="nlheader" header-height="35%" footer="nlfooter" footer-height="14%" background-macro="watermark" padding="0.5in 0.5in 0.5in 0.5in" size="Letter">
<#if record.item?has_content>
<table class="alignitem" style="width: 100%; margin-top: 10px; margin-left: -9px; padding-left: 0px; background-color: #f5f4e4;"><!-- start items --><#list record.item as item><#if item_index==0>
<thead>
<tr>
<th align="center" colspan="3" style="padding: 23px 0px; text-transform: uppercase; font-size: 15px; color: #464d30;padding-right:-28px; ">QTY</th>
<th align="left" colspan="12" style="padding: 10px 0px; text-transform: uppercase; font-size: 15px; color: #464d30;">${item.item@label}</th>
<th align="right" colspan="4" style="padding: 10px 0px; text-transform: uppercase; font-size: 15px; color: #464d30;">${item.rate@label}</th>
<th align="right" colspan="4" style="padding-top: 10px; padding-bottom: 10px; padding-left:0px; font-size: 15px; padding-right:12px; text-transform: uppercase; color: #464d30;">${item.amount@label}</th>
</tr>
</thead>
</#if><tr style="padding-bottom: 13px;">
<td align="center" colspan="3" line-height="150%" style="color: #464d30;padding-right:-28px;">${item.quantity}</td>
<td align="left" colspan="12" style="padding-left: 0px; color: #464d30;"><span style="font-weight: bold; line-height: 150%; color: #464d30;">${item.item}</span><br />${item.description}</td>
<td align="right" colspan="4" line-height="150%" style="padding-right: 0px; color: #464d30;">${item.rate}</td>
<td align="right" colspan="4" line-height="150%" style="padding-right: 12px; padding-left: 0px; color: #464d30;">${item.amount}</td>
</tr>
<!--<tr><td colspan="23" line-height="2pt"> </td></tr>--></#list><!-- end items --></table>
</#if>
<table class="alignitem" style="page-break-inside: avoid; padding-top:30px; margin-left: -9px; width: 100%; background-color: #f5f4e4; padding-left: -4px;"><tr style="line-height: 150%;">
<td colspan="4"> </td>
<td align="right" style="font-weight: bold; color: #464d30; text-transform: uppercase; font-size: 12px;">${record.subtotal@label}</td>
<td align="right" style="padding-right: 12px; padding-left: 0px; color: #464d30; font-size: 12px;">${record.subtotal}</td>
</tr>
<tr style="line-height: 150%;">
<td colspan="4"> </td>
<td align="right" style="font-weight: bold; color: #464d30; text-transform: uppercase; font-size: 12px;">TAX(${record.taxrate}%)</td>
<#if record.taxtotal?has_content && record.taxtotal?trim != ''>
<td align="right" style="padding-right: 12px; padding-left: 0px; color: #464d30; font-size: 12px;">${record.taxtotal}</td>
<#else>
<td align="right" style="padding-right: 12px; padding-left: 0px; color: #464d30; font-size: 12px;">$0.00</td>
</#if></tr>
<tr style="line-height: 150%; padding-bottom: 10px;">
<td background-color=" #f5f4e4" colspan="3"> </td>
<td align="right" colspan="2" style="font-weight: bold; text-transform: uppercase; font-size: 12px; color: #464d30;">TOTAL</td>
<td align="right" style="padding-right: 12px; padding-left: 0px; color: #464d30; font-size: 12px;">${record.total}</td>
</tr></table>
</body>
</pdf>