[memb_list_invoices]

Version Added 2.42

Summary

This shortcode displays a list of invoices held by the user, and optionally enables them to pay any open invoices.

Shortcode Examples

<strong>Unpaid Invoices</strong>
 <table width="100%">
 <thead>
 <td>Inv#</td>
 <td>Description</td>
 <td>Invoice Total</td>
 <td>Paid</td>
 <td>Amount Due</td>
 <td>Due Date</td>
 <td></td>
 <td></td>
 </thead>
 [memb_list_invoices paid=0 unpaid=1]
 <tr>
 <td>%%invoice.id%%</td>
 <td>%%description%%</td>
 <td>$%%invoice.total%%</td>
 <td>$%%total.paid%%</td>
 <td>$%%amount.due%%</td>
 <td>%%date.due%%</td>
 <td>%%creditcard.dropdown%%</td>
 <td>%%submit%%</span></td>
 </tr>
 [/memb_list_invoices]
 </table>

<strong>Paid Invoices</strong>
 <style>
 thead td { font-weight:bold; }
 </style>
 <table width="100%">
 <thead>
 <td>Inv#</td>
 <td>Description</td>
 <td>Invoice Total</td>
 <td>Paid</td>
 <td>Amount Due</td>
 </thead>
 [memb_list_invoices paid=1 unpaid=0]
 <tr>
 <td>%%invoice.id%%</td>
 <td>%%description%%</td>
 <td>$%%invoice.total%%</td>
 <td>$%%total.paid%%</td>
 <td>$%%amount.due%%</td>
 </tr>
 [/memb_list_invoices]
 </table>

Shortcode Parameters

button_text: The text to display on the invoice payment button.  Defaults to “Pay Now”.

date_format: This is the C/PHP date formatting code used to describe how the date is formatted on output.  the default format is “M d, Y”.  Please see this entry for more information on date formatting.

form_class: CSS Class Id to use for the invoice payment forms.

merchant_id: Merchant ID to use.  Defaults to Merchant ID defined in Memberium->Advanced Options (how do I find my merchant account ID?)

paid: Set to “0” to hide Paid Invoices.  Default behaviour is to display paid invoices.

unpaid: Set to “0” to hide Unpaid Invoices. Default behaviour is to display unpaid invoices.

reverse: Set to “Yes” to reverse the sort of the list. Default is “No”.

Merge Fields

The following merge fields or placeholders are used by [memb_list_invoices]

%%credit.status%% – Displays one of “No Credit”, “Partial Credit Applied”, or “Full Credit Applied”, depending on the refund credit status of the invoice.

%%cycler%% – Alternates between the values of “odd” and “even” for each row.  Useful for mixing with CSS

%%date.created%% – The date that the invoice was created

%%description%% – The description field from the invoice

%%invoice.id%% – The Invoice’s ID Number from Infusionsoft.  Note that this is usually but not always different from the Order ID number, since there may be multiple invoices per order.

%%invoice.total%% – The total amount due for this invoice.  This may not reflect the total amount of the order if the order’s payments are spread across a payment plan.

%%line%% – The current line listing.  This starts at 1, and increases by 1 for each entry displayed on the screen.  This is useful for formatting your listing.

%%pay.status%% – Displays one of “Not Paid” or “Paid” depending on the payment status of the invoice.

%%refund.status%% – Displays one of “No Refund”, “Partial Refund”, “Full Refund”, “Full Write-Off”, or “Partial Write-Off” depending on the refund status of the invoice.

%%total.paid%% – Displays the total amount paid so far for this invoice.

The following placeholders are only displayed if there is an amount due on the invoice.

%%amount.due%% – Displays the total amount currently due for this leg of the invoice’s payment plan.   This is not a grand total of what’s owed on this invoice.  Future payments or additional payment plan entries, are not reflected in this amount, as the invoices are not generated until they are due.

%%creditcard.dropdown%% – Displays a dropdown listing the viewer’s available credit cards so that the viewer can select a credit card for payment.  You can enable the user to add additional credit cards using other shortcodes.  This element can be styled using the CSS name of “creditcard_id”.

%%date.due%% – Displays the date that the invoice is due.  The date formatting defaults to “M d, Y” format, and can be set using the date_format attribute of the shortcode if you wish to use a different format.

%%submit%% – Displays a submit button allowing the user to submit the invoice for payment.

Troubleshooting Tip
If the submit button does not render, you may need to set your default Merchant D in Memberium->eCommerce.

Shortcode Attributes

Conditional: No (?)
Nestable: No (?)
Accepts formatting: No (?)
Capturable: No (?)

FAQ

Why doesn’t the invoice total match the order total?

There’s a difference between invoices and orders in Infusionsoft.

The order is the list of items, with the total price. It’s attached to a payment plan. For each payment due on the payment plan Infusionsoft generates an invoice for that amount.

For a single payment plan, the invoice reflects the full amount of the order.

If you have a multi-part payment plan, then Infusionsoft will generate multiple invoices over time, on a schedule, each invoice will be generated for each payment of the overall order, and the amount due will be the amount due for that “part” of the payment plan.

The shortcode lists the invoice payment due, which is NOT the total amount due.

The total amount would be the sum of all invoices existing and to be created for that order’s payment plan.

Can I use shortcodes inside of the [memb_list_invoices] format?

YES!  You can mix-in shortcodes in with the placeholder codes.

Is SSL required to use this shortcode?

No, since the [memb_list_invoices] shortcode does not display or input the actual credit card information, SSL is not required.

Can my users add new credit cards using this shortcode?

No, this shortcode only handles the cards on file.  New cards can be added using the [memb_add_creditcard] shortcode.

Can I use this shortcode as an Admin?

No.  This shortcode relies exclusively on eCommerce data associated with an Infusionsoft contact.  Since Administrator accounts are disconnected from Infusionsoft contacts, this shortcode cannot work with Administrators or any other “Local Only” user.

Can I use this shortcode with PayPal?

No, this shortcode only works with Merchant Accounts.  You CAN use this shortcode with PayPal’s PayFlowPro service.

Can I use this shortcode if I am handling my orders outside of Infusionsoft ( ex. WooCommerce )?

No, this shortcode exclusively uses Infusionsoft invoice and payment plan information.  If you are using an integration that handles payments outside of Infusionsoft please contact us with specifics.

Can I use this shortcode multiple times on a single page?

YES, you can.