Browse Guides

Stripe Integration
Reading mode
Copy Link
Link Copied!
Print
Feedback
This guide has multiple versions available:
<style>p { margin: 0; }span.fr-emoticon.fr-emoticon-img { background-repeat: no-repeat !important; font-size: inherit; height: 1em; width: 1em; min-height: 20px; min-width: 20px; display: inline-block; margin: -0.1em 0.1em 0.1em; line-height: 1; vertical-align: middle; } span.fr-emoticon { font-weight: normal; font-family: "Apple Color Emoji", "Segoe UI Emoji", "NotoColorEmoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; display: inline; line-height: 0; } blockquote { border-left: solid 2px #5e35b1; color: #5e35b1; margin-left:0; padding-left:5px;}blockquote blockquote{ border-color: #00bcd4; color: #00bcd4;}blockquote blockquote blockquote{ border-color: #43a047; color: #43a047;} table.grid{ border-collapse: collapse;} table.grid td, table.grid th { border: 1px solid #ddd;} .fr-fic.fr-dib{ display: block; margin: 5px auto;}.fr-fic.fr-dib.fr-fir{ text-align: right; margin: 5px 0 5px auto;}.fr-fic.fr-dib.fr-fil{ text-align: left; margin: 5px auto 5px 0;}.fr-fic.fr-dii{ float: none; margin: 5px auto;}.fr-fic.fr-dii.fr-fil{ float: left; margin: 5px auto;}.fr-fic.fr-dii.fr-fir{ float: right; margin: 5px auto;}img.fr-dib.fr-fir { margin-right: 0; text-align: right;}img.fr-dib.fr-fil { margin-left: 0; text-align: left;}img.fr-dib { margin: 5px auto; display: block; float: none;}img.fr-bordered { box-sizing: content-box; border: solid 5px #CCC;}img.fr-shadow { box-shadow: 10px 10px 5px 0px #cccccc;}img.fr-rounded { border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box;}</style><style> p { margin: 0; } span.fr-emoticon.fr-emoticon-img { background-repeat: no-repeat !important; font-size: inherit; height: 1em; width: 1em; min-height: 20px; min-width: 20px; display: inline-block; margin: -0.1em 0.1em 0.1em; line-height: 1; vertical-align: middle; } span.fr-emoticon { font-weight: normal; font-family: "Apple Color Emoji", "Segoe UI Emoji", "NotoColorEmoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; display: inline; line-height: 0; } blockquote { border-left: solid 2px #5e35b1; color: #5e35b1; margin-left: 0; padding-left: 5px; } blockquote blockquote { border-color: #00bcd4; color: #00bcd4; } blockquote blockquote blockquote { border-color: #43a047; color: #43a047; } table.grid { border-collapse: collapse; } table.grid td, table.grid th { border: 1px solid #ddd; } .fr-fic.fr-dib { display: block; margin: 5px auto; } .fr-fic.fr-dib.fr-fir { text-align: right; margin: 5px 0 5px auto; } .fr-fic.fr-dib.fr-fil { text-align: left; margin: 5px auto 5px 0; } .fr-fic.fr-dii { float: none; margin: 5px auto; } .fr-fic.fr-dii.fr-fil { float: left; margin: 5px auto; } .fr-fic.fr-dii.fr-fir { float: right; margin: 5px auto; } </style><p><strong>In this guide we will cover:</strong></p><p><strong>- What is the Stripe Integration?</strong></p><p><strong>- How to connect to Stripe</strong></p><p><strong>- Syncing Customers</strong></p><p><strong>- Configuring Invoices Payment</strong></p><p style="margin-left: 20px;"><strong>- Automatic Payments</strong></p><p style="margin-left: 20px;"><strong>- Manual Payments</strong></p><p><strong>- Making Payments</strong></p><p><strong>- Have Customers Update their Own Payment Methods</strong></p><p><strong>- Email Notifications/Confirmations for Payments</strong></p><p><br></p><p><br></p><p><strong><span style="font-size: 14pt;">What is the Stripe Integration?</span></strong></p><p>The Stripe integration is used to enable you to take payments for your invoices in Halo. Agents can take payment for customers and customers can make payments themselves through the Halo portal. Automatic payments can also be setup to have payments for recurring invoices be taken automatically.&nbsp;</p><p><br></p><p id="isPasted"><span style="font-size: 14pt;"><strong>Connecting to Stripe</strong></span></p><p><span style="font-size: 11pt;">First you will need to enable the stripe module. Head to configuration &gt; integrations and enable the Stripe integration module using the &#39;+&#39; icon. Once enabled click into the module to pull up the integration setup page.&nbsp;</span></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImMzZDFmZjU2LWQxMGUtNDc5ZS04ODc4LTdlODM1NTI0MGUzOSJ9.JNuEf_3J4XE_QTfOZcGRm47AYJp4ya1bA0aEKoWj8eQ" class="fr-fic fr-fil fr-dib" width="269" style="width: 271px; height: 176.739px;" height="177"></p><p><strong><span style="font-size: 10pt;">Fig 1. Enable integration module</span></strong></p><p><span style="font-size: 11pt;"><br></span></p><p>To connect your Stripe to Halo, you will need to obtain a Publishable &amp; Secret Key from Stripe. Head to Developers &gt; API Keys in Stripe to get these.</p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjdhMzE1MDE1LTJjYmUtNDNkNi1iNzE5LTY2YzA3YzIwZjU3MSJ9.vw01jD6dUzmWIzjrXNbmvEIRurquixBdopoIFtkefHE" class="fr-fic fr-fil fr-dib" style="width: 1175px;" width="1175" height="353"></p><p><strong><span style="font-size: 10pt;">Fig 2. API keys in Stripe<br></span></strong></p><p><br></p><p>Once obtained enter these keys into the relevant fields in Halo.</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjZmM2EyYThlLTFlY2UtNGZhOC04NGM1LWU3MWY2ZTQzZjJmMSJ9.sOVdA2usPKc8BxdGAdwv6Wia_1Cuect3DkhDmrNiaOM" class="fr-fic fr-fil fr-dib" width="802" height="399"></p><p><strong><span style="font-size: 10pt;">Fig 3. Key fields required to connect to stripe</span></strong></p><p><br></p><p>Once connected, you will need to set a currency for payments made in Stripe. This is the currency you would like to receive payments in.&nbsp;</p><p><br></p><p><strong><span style="font-size: 14pt;">Syncing Customers</span></strong></p><p>Customers from Stripe can be mapped to an existing Halo customer. Each customer that you would like to take payments for will need to be present in the customer mappings table (found on the integration setup page).&nbsp;</p><p><br></p><p>To create a mapping add to the table and choose the Halo and Stripe customer to map together. If your customers in Halo and Stripe have identical names you can use the &#39;generate mappings&#39; button to have the mappings automatically generated, this will only work if the names are an exact match. Once customer is mapped they will be able to make payments in Halo using Stripe and will have an additional &#39;Stripe&#39; section under the billing section of their customer profile.&nbsp;</p><p><br></p><p>If you would like customers to be created and updated in Stripe when a customer is created or updated in Halo, enabled the setting highlighted in figure 4.&nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY4NDA1ZGU0LTBiMTYtNDU5Ni05MDFjLTRmOTljOTU3YWQ1YSJ9.9FmHsv7eo85wxpPqQbMZMwRAEZ7BYb_yuS2QIM5PZ0g" class="fr-fic fr-fil fr-dib" width="1215" style="width: 1217px; height: 505.343px;" height="505"></p><p><strong><span style="font-size: 10pt;">Fig 4. Update customers in Stripe when updated in Halo</span></strong></p><p><br></p><p><strong><span style="font-size: 14pt;">Configuring Payments</span></strong></p><p>Now you are connected to Stripe you can begin configuring how payments can be made. Payments can be taken manually by agents in the agent app, or by customers through the self-service portal. Automatic payments can also be scheduled for recurring invoices.&nbsp;</p><p><br></p><p>Before configuring manual/automatic payments you will need to set which payment methods are imported from stripe using the field shown in figure 5.&nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjMzNjQ1MzM5LTlmMzctNDI4ZC05MGM5LWEyZDc0ZDIxN2ZmZCJ9.D9u74M1KjNYG3yJBh1D0sOy8pzpg4FC_4afpYbWNpGg" class="fr-fic fr-fil fr-dib" width="563" style="width: 565px; height: 285.08px;" height="285"></p><p><strong><span style="font-size: 10pt;">Fig 5. Stripe payment methods to import</span></strong></p><p><br></p><p>Customers will only be able to use the payment methods selected here so ensure this encompasses all the payment methods your customers use.&nbsp;</p><p><br></p><p><strong><span style="font-size: 12pt;">Configuring Automatic Payments</span></strong></p><p>To enable this functionality you will need to enable the setting &#39;Enable the automatic payment of recurring invoices when generated as invoices&#39; on the integration setup page.&nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImZjMTNkODE1LTRkOTEtNDk4OC1iMjY0LTk0YTEzMWNkYmYxOCJ9.Yv7BtYLUEdCE2mGSU5P1U_egFRa7UTJT4HAxN0Nxiw4" class="fr-fic fr-fil fr-dib" width="716" style="width: 718px; height: 257.144px;" height="257"></p><p><strong><span style="font-size: 10pt;">Fig 6. Enable automatic payments&nbsp;</span></strong></p><p><br></p><p>Once enabled you will need to set when payments are taken automatically using the &#39;When to take payment&#39; field. Payments can either be taken when invoices are created or on the due date of the invoice. The creation date refers to the date that the invoice is created from the recurring invoice.&nbsp;</p><p><br></p><p>Now you will need to set the payment method that is used for each customer when automatic payment is taken. This is set against the customer profile under the billing tab &gt; stripe section, see figure 7.</p><p><strong><em><br></em></strong></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY0NmFmNGQ2LTE5NTctNGRiMi05YTBhLTA4ODUwYzg5N2I3MyJ9.q84syTCtNmh_5P6sENDkxfMx_RZK1o-ZN7o5kaVktFo" class="fr-fic fr-fil fr-dib" width="1194" height="597"></p><p><strong><span style="font-size: 10pt;">Fig 7. Payment method used for automatic payments&nbsp;</span></strong></p><p><br></p><p><strong><em>Note: If &#39;invoice creation date&#39; is selected, payment is collected from this Payment Method as soon as any recurring invoice is created for the selected client</em></strong></p><p><br></p><p>The payment methods that are available to choose from here (against the customer) will be determined by the payment methods you have imported from Stripe and the payment methods linked to the customer&#39;s account in Stripe.&nbsp;</p><p><br></p><p>Customers can update the payment method they use for automatic payments through the end user portal. See the section &#39;Have customers update their payment methods&#39; for more information on this.&nbsp;</p><p><br></p><p>The last step of the setup is to enable the Halo integrator for the integration, this is enabled using the setting shown in figure 8 on the integration setup page.&nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjZjYThlODljLWQ1ZDctNGRlNC1hYWQzLWY1NzYxOWZhYzYwNCJ9.aCt9PTcImYHCtkvCfS70f2hsn50rRktW2GGocJ83BNQ" class="fr-fic fr-fil fr-dib" width="798" style="width: 800px; height: 201.163px;" height="201"></p><p><strong><span style="font-size: 10pt;">Fig 8. Enable Halo integrator</span></strong></p><p><br></p><p>The Halo integrator will check any invoices that are awaiting payment (due date has passed), on a scheduled basis. It will then take the payment using Stripe. This will run on a daily basis so invoices are checked for outstanding payments daily. This will only take payment for invoices linked to a recurring invoice, other invoices will need to be paid for manually.&nbsp;</p><p><br></p><p>Auto payments processed via Stripe on the integrator will use idempotency keys. This helps prevent the same request (payment) being processed twice when you are running stripe on two integrators at once.&nbsp;</p><p><br></p><p>Auto-pay will not occur for invoices that have a &#39;pending&#39; or &#39;action required&#39; payment, to ensure payment is not taken again if an early payment has been taken manually.&nbsp;</p><p><br></p><p><strong>$ Variable for automatic payment method</strong></p><p>The variable $-PAYMENTMETHOD &nbsp;can be used on PDF templates (recurring invoice templates) to pull through the automatic payment method the customer is using. This is useful if you would like your customers to have a record of the payment method that was used for the invoice.&nbsp;</p><p><br></p><p>If customers do not have an automatic payment method set, the variable will populate with the string &#39;No automatic payment setup&#39;.&nbsp;</p><p><br></p><p><strong><span style="font-size: 12pt;">Configuring Manual Payments&nbsp;</span></strong></p><p>Manual payments can be made for invoices either through the agent app or the end user portal. Before payments can be taken manually you will need to set the payment methods that are allowed for manual payments, using the setting shown in figure 9 (in the integration setup page).</p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjdkYjRlZjVmLTQwOGQtNDI0Ny05ZWEzLTc5ZTQzMDMzZWJjOCJ9.ndUsm8yBdKj_Ckhb5qCIri89joBL3UszD9n2yMjTE0I" class="fr-fic fr-fil fr-dib" width="653" style="width: 655px; height: 417.138px;" height="417"></p><p><strong><span style="font-size: 10pt;">Fig 9. Allowed manual payment methods</span></strong></p><p><br></p><p>This can be used to restrict the payment methods customers can use. If this field is left empty the allowed payment methods will be determined using the &#39;Stripe Payment Method Types to import&#39;, so there will be no restrictions on the payment methods that can be used.</p><p><br></p><p><strong><em>Note: ACSS payment method is available for US customers. &nbsp;</em></strong></p><p><br></p><p><strong><span style="font-size: 12pt;">Processing fee</span></strong></p><p>A processing fee can be set, this is a percentage price that will automatically be added to all customer invoices that are paid using stripe. You can set what the processing fee is using the &#39;Processing Fee (Percentage)&#39; field on the Stripe setup page.</p><p><br></p><p><strong><em><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjVkMGQ4NzExLWViOTMtNDRlYy1hNGFkLTEyMDQ5M2VhZmI1ZCJ9.1vU3cJEuh0nkvXG8Y96ZUWP43tPdPdjI9Efx3udwl0w" class="fr-fic fr-fil fr-dib" width="754" style="width: 756px; height: 325.55px;" height="326"></em></strong></p><p><strong><span style="font-size: 10pt;">Fig 10. Processing fee</span></strong><span style="font-size: 10pt;"><br></span></p><p><strong><br></strong></p><p>Once the field is populated this percentage amount will automatically added to the price of the invoice (as it&#39;s own line) when customers pay for the invoice using Stripe. If the customer pays for multiple invoices at once, a processing fee will be calculated for each individual invoice.&nbsp;</p><p><br></p><p>The total for the processing fee will be paid into the account you have setup to use for processing fees (this is setup in Stripe).&nbsp;</p><p><strong><br></strong></p><p><strong><span style="font-size: 14pt;">Making Payments&nbsp;</span></strong></p><p><strong><span style="font-size: 12pt;">In the agent app</span></strong></p><p>For agents to be able to take payments for customers the agent will need to have the permission &#39;Can Receive Manual Stripe Payments&#39;.</p><p><br></p><p><strong><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImVhYTM3NTI1LTlmOTktNDY4NC1hYzE4LTBiNDVjN2QzMGNkNSJ9.m7aCRGPjr1mQrIqgyuPcU87b945qviXMeF8iYv5zkfI" class="fr-fic fr-fil fr-dib" width="604" style="width: 606px; height: 564.707px;" height="565"></strong></p><p><strong><span style="font-size: 10pt;">Fig 11. permission to receive manual payments</span></strong></p><p><strong><br></strong></p><p>Now these agents will have the option against invoices to &#39;Receive Payment (Manual)&#39;.</p><p><br></p><p><strong><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImVjMTlhMDlhLTQyNTAtNDM2Yy1iNWZmLTdkMDhlODZhNDcxNyJ9.AR3VXWX75YnjoyfOA-Sqaw0pfKLydhYNdQ8rFUoGiyw" class="fr-fic fr-fil fr-dib" width="1209" style="width: 1211px; height: 245.016px;" height="245"></strong></p><p><strong><span style="font-size: 10pt;">Fig 12. Receive payment button</span></strong></p><p><strong><br></strong></p><p>When used a payment form will be displayed allowing the agent to take payment from the end user.&nbsp;</p><p><br></p><p><strong><img data-fr-image-pasted="true" src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjBmNGJkNDBlLTNlOWYtNDU5Ni1iMjI3LTgyYTVkM2FhYzNiZCJ9.XV-uKgwz87iAlCXv_CXirn53I34tMBeV8e82SIz-2Gs" width="577" height="549" style="box-sizing: inherit; border-style: none; cursor: pointer; padding: 0px 1px; user-select: none; text-align: left; color: rgb(0, 0, 0); font-family: sans-serif; font-size: 14px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; max-width: none !important;" id="isPasted" class="fr-fil fr-dib"></strong></p><p><strong><span style="font-size: 10pt;">Fig 13. Payment form</span></strong></p><p><strong><br></strong></p><p><strong><span style="font-size: 12pt;">In the self-service Portal</span></strong></p><p>In order for end users to pay invoices in the portal the customer must have a default payment set, i.e. &#39;Stripe Payment Method for automatic payments&#39; must be populated.&nbsp;</p><p><strong><br></strong></p><p>Invoices can be paid by navigating to the &#39;Invoices&#39; area of the portal. For any invoices that have not been paid a pay button will appear against the invoice.</p><p><strong><img data-fr-image-pasted="true" src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjhmNjY3MTdkLTdmZTctNDAxNy05MTJkLTY0OTM4MGM0ZjM5YiJ9.f13BZbOKmb8YMhZhu4ISWOB7HQ21tgy6y-KQWNCheFY" width="578" height="112" style="box-sizing: inherit; border-style: none; cursor: pointer; padding: 0px 1px; user-select: none; max-width: calc(100% - 10px); min-width: 10px; color: rgb(0, 0, 0); font-family: sans-serif; font-size: 14px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: left; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; white-space: normal; background-color: rgb(255, 255, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;" id="isPasted" class="fr-fic fr-fil fr-dib"></strong></p><p><strong><span style="font-size: 10pt;">Fig 14. Pay button against invoice in portal</span></strong></p><p><strong><br></strong></p><p id="isPasted">Users will also have the option to pay all outstanding invoices at once with a single payment. When paying this was a single payment will be created in Stripe but each invoice will have a payment record logged against it, marking each invoice as paid.&nbsp;</p><p><br></p><p>When paying users can choose between using a saved payment method (the default against the customer) or entering new details. If entering new details they will need to complete the payment form (shown in figure 12).&nbsp;</p><p><strong><br></strong></p><p><strong>Setting Invoice Access&nbsp;</strong></p><p>The users that will be making payments in the portal will need to have access to the invoice area of the portal as well as access to the appropriate invoices.&nbsp;</p><p><br></p><p>To add the invoices area to the portal head to Configuration &gt; Self Service Portal and add the &#39;My Invoices&#39; button.&nbsp;</p><p><br></p><p><strong><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjUwNTMxOTNmLWY2ZGEtNDA2Mi04M2FkLTNiY2U5M2Q0OThlNSJ9.K-rMJCMJsd-y1XRf7qKYhH19DOihGZdt27bCiH9hQyI" class="fr-fic fr-fil fr-dib" width="814" height="482"></strong></p><p><strong><br></strong></p><p><strong><br></strong></p><p><strong><span style="font-size: 10pt;">Fig 15. Invoices portal area</span></strong></p><p><strong><br></strong></p><p>To set restrictions on who can access this area edit the button and set visibility restrictions.</p><p><br></p><p><strong><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjU5MzMyYjdjLTkzMjQtNDE1OS04M2IzLWIyY2FhODdmMzQyMiJ9.NOJsCLJvYb1XRZp8KU69A42uAhxvO_GWByy7OaaFmZw" class="fr-fic fr-fil fr-dib" width="547" height="464"><span style="font-size: 10pt;">Fig 16. Visibility restrictions for portal area</span></strong></p><p><strong><br></strong></p><p>Now, you will need to give users permission to view the invoices for their customer. This is set under the &quot;Permissions&quot; tab of the user profile using the permission &quot;Invoice Access Level&quot;.</p><p><br></p><p><strong><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjBmM2YxZjRiLTE4NDMtNDFhMi1iNTI5LTJjZmE3MDAwOTExYiJ9._WCspzuSYudBI4uRfgTBrTe7OnGFFlX9nr4EC-C10ts" class="fr-fic fr-fil fr-dib" width="1468" height="598"></strong></p><p><strong><span style="font-size: 10pt;">Fig 17. Invoices permission</span></strong></p><p><strong><br></strong></p><p><strong><span style="font-size: 14pt;">Have Customer Update their Own Payment Methods</span></strong></p><p>Agents can set the default payment method each customer will use against the customer profile in the agent app, which is used for automatic payments. However, users can update the default payment method themselves in the portal too.&nbsp;</p><p><strong><br></strong></p><p>Enable this functionality using the setting shown in figure 17 (on the integration setup page).</p><p><br></p><p><strong><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjAwYjBmMDY0LWRhNTktNGJmYS1iZjA1LTBkMTI2MWY3ODIxZCJ9.BHPhMyfnVxr5JDJQjbpRxhgnvrUy8lMyNYWDjisa9nQ" class="fr-fic fr-fil fr-dib" width="654" style="width: 656px; height: 220.245px;" height="220"></strong></p><p><strong><span style="font-size: 10pt;">Fig 18. Setting to allow users to update the payment method used for their automatic payments</span></strong></p><p><strong><br></strong></p><p><strong>Hide&nbsp;</strong>- Users will not be able to update payment methods</p><p><strong>Only show if a payment method is already selected</strong> - Only customers that have an automatic payment method already set will be able to change the method. Customers that do not have this set (so do not use automatic payments) will not be able to set an automatic payment method.&nbsp;</p><p><strong>Show&nbsp;</strong>- Users will be update to update and add a new automatic payment method if one is not already set.&nbsp;</p><p><strong><br></strong></p><p>Once enabled users will have the option to &#39;Add Payment method&#39; in the invoices area of the portal.</p><p><br></p><p><strong><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjlmMmY3MmNhLTQwYTItNGU4Yi1hNDVjLWFmYmUwMmI3Y2Y4ZCJ9.uyZoMhtualpk9LmgQLum63TogIQ8qN--spOhWYcHwmE" class="fr-fic fr-fil fr-dib" width="529" height="371"></strong></p><p><strong><span style="font-size: 10pt;">Fig 19. Add payment method option in portal</span></strong></p><p><strong><br></strong></p><p>When this button is used the user will need to enter the new payment method details. The field &#39;Stripe Payment Method for automatic payments&#39; against the customer profile in Halo will then be updated to reflect these changes.&nbsp;</p><p><br></p><p>As an alternative to customers updating their payment methods through the Halo portal they can also do this through the stripe portal. To do this would will need to set up a stripe customer portal (in Stripe) and share the link to the portal with the relevant users. When in the Stripe portal users will be able to update their payment methods.&nbsp;</p><p><strong><br></strong></p><p><strong><span style="font-size: 14pt;">Email Confirmations for Payments</span></strong></p><p>Email notifications can be configured to send each time a payment is successful or has failed.&nbsp;</p><p><strong><br></strong></p><p><strong><span style="font-size: 12pt;">Have notifications send for failed payments only</span></strong></p><p>To configure this head to Configuration &gt; Integrations &gt; Stripe. Ensure that the setting &#39;Send an email when payments are made successfully&#39; is disabled. You can then enter the email address you would like payment failure notifications to be sent to.</p><p><br></p><p><strong><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjA0OTkwZjRiLTJlNTctNDgyOS1iZTlhLWNkZTQ1MWJmMDFhMSJ9.5ghwRddqRoZHLBJmG1ambZYP7569hpAFCbThjmBJJCA" class="fr-fic fr-fil fr-dib" width="433" style="width: 435px; height: 152.25px;" height="152"></strong></p><p><strong><span style="font-size: 10pt;">Fig 20. Settings to have notifications send for failed payments</span></strong></p><p><strong><br></strong></p><p>Failed payment emails will use the email template titled &#39;Stripe Payment Failure&#39; (ID=285). This template will need to be edited to change the contents of the email that is sent for failure notifications.</p><p><strong><br></strong></p><p><strong><span style="font-size: 12pt;">Have notifications send for successful and failed payments</span></strong></p><p>If you would like email confirmations for successful payments as well as failed payments enable &#39;Send an email when payments are made successfully&#39;.&nbsp;</p><p><strong><br></strong></p><p>When enabled you will have an additional setting called &#39;Use Stripe receipt emails for payments&#39;. When this is enabled stripe will send out payment confirmation emails (rather than Halo). Therefore, the content of the confirmation email will need to be amended in Stripe.&nbsp;</p><p><strong><br></strong></p><p>If disabled Halo will send out confirmation emails using the template titled &#39;Stripe Payment Confirmation&#39; (ID=264).&nbsp;</p><p><strong><br></strong></p><p>Then you will need to set the email address that confirmations and/or failures are sent to using the field below these settings.&nbsp;</p><p><strong><br></strong></p><p><strong><em>Note: The Accounts email address and accounts email CC address set against the customer will be CC&#39;d into the payment confirmation/failure email for that customer. The user who is making the payment will also be CC&#39;d into the email.&nbsp;</em></strong></p><p><br></p><p><strong><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjM5M2YwZGY1LTZiYWUtNDIwNi1hNjkwLTQyMjU1MDNlMWFiZiJ9.XJmaB1rZoKqupk8cwRcDTM9PMZN3MN3OiiRaPNbckT4" class="fr-fic fr-fil fr-dib" width="673" height="354"></strong></p><p><strong><span style="font-size: 10pt;">Fig 21. Accounts email addresses against customer profile</span></strong></p><p><br></p><p><strong><em>Note: Stripe email notifications sent from Halo will use the same Mailbox used when sending an Invoice.</em></strong></p><p><br></p><p><strong><span style="font-size: 14pt;">Stripe Webhooks</span></strong></p><p>On the integration setup page for the integration you will see the button &#39;Save and Create/Update Webhooks in Stripe&#39;.&nbsp;</p><p><br></p><p><strong><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImVkODYzZmRkLWI1NTQtNGQ2Ni1hMWFhLTA1MzQxZmRhY2Y1OCJ9.ZMKj4DsxV7omCV5OmYGGTNnteqYAVzBFfWyRzE1XigQ" class="fr-fic fr-fil fr-dib" width="859" height="391"><span style="font-size: 10pt;">Fig 22. Button to enable Stripe Webhooks</span></strong></p><p><strong><br></strong></p><p><strong>When used additional webhooks for Stripe will be created. When the webhooks are created Halo can update Invoice Payments records in Stripe for the following events:</strong></p><ul><li><strong>Payment Success</strong></li><li><strong>Payment Failure</strong></li><li><strong>Payment Processing</strong></li><li><strong>Payment Cancelled</strong></li><li><strong>Payment Requires Action</strong></li></ul><p>By default, everyone should have webhook subscriptions for both payment success and payment failure, however &#39;Processing&#39;, &#39;Cancelled&#39; and &#39;Requires Action&#39; may need to be added in Stripe manually for those who enabled the Stripe integration prior to version 2.127.1. For information on how to add these manually see the guide <a data-fr-linked="true" href="https://usehalo.com/halopsa/guides/1718" target="_blank" rel="noopener noreferrer"><strong>here</strong></a>.&nbsp;</p><p><br></p><p><br></p>
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.