PayPack logo
PayPack logo

All articles

Payment LinkUpdated a month ago

Easily add a payment link to NetSuite sales orders, invoices, invoice groups, and quotes/estimates that are sent to your customers. This allows them to pay using any payment method supported by Stripe.

Note: Invoice groups is a feature that needs to be enabled on NetSuite. See NetSuite's documentation for Invoice Groups Setup.

Enable the feature by selecting the checkbox for Enable Payment Link on Sales Order & Invoice.Enable Payment Link.png

In some business workflows, NetSuite users may want a payment link on the Sales Order but not on the Quote/Estimate. 

Follow the steps below to disable payment links from generating for the following NetSuite transactions (Quote/Estimate, Sales Order, Invoice, and Invoice Groups).

  1. Go to NetSuite → Customization → Scripting → Script Deployments
  2. Click on Filters and select User Event in the Type Dropdown.
  3. For Quote/Estimate, search for script "nm PayPack Estimate Generate Param". For Sales Order/Invoice/Invoice Groups, search for script "nm PayPack for NS Generate Param".
  4. Click on Edit.
  5. Uncheck the checkbox DEPLOYED on the page and change the status to TESTING.
  6. Finally click Save.

Display Billing Address

Show or hide the transaction billing address by selecting the checkbox for Display Billing Address.

Display Billing Address.png

Save Payment Methods

If there is a requirement to save customer payment method to their Stripe customer at the time of payment, select the checkbox for Save Payment Method in Stripe. Additionally, you can check Default if you want to automatically mark the newly saved payment method as the default moving forward.

Save_Payment_Method_in_Stripe_as_Default.png

Saved Cards

Offer customers the ability to save cards on a payment link for future purchases. This is a different customer experience than using Stripe Link.

Enable this setting by checking Display Saved Cards.

The payment link will have a new option named Saved.

Note

A customer can choose to save payment details by selecting the checkbox.

Note: If the payment link configuration also has Save Payment Method in Stripe checked, this will remove the customer facing checkbox and display a notice on the page.

Supported Payment Methods

Specify which payment methods will be available for a customer on a payment link by selecting the available payment methods in the PayPack configuration. This is a global setting that is applied to all transactions.

Select Payment Methods in Global Configuration.png

Using Rule-Based Logic

With PayPack, you are able to leverage NetSuite Workflows to define rules for displaying specific  payment methods at the customer and transaction level (quote, sales order, invoice, and invoice group).

Example 1: Select allowable payment methods at the customer level.

Select Payment Methods by Customer Preference.png

Example 2: Select allowable payment methods at the transaction level.

Example 3: Automatically select ACH Direct Debit as the only allowable payment method for all Sales Orders with a total greater than to $100.

  • Step 1 - Create a new NetSuite Workflow.
  • Step 2 - Set the workflow event definition.
  • Step 3 - Update parameters field and value selection.


The following is a list of payment methods currently supported by PayPack:

  • Pre-authorized debit payments
  • Affirm
  • Afterpay / Clearpay
  • Alipay
  • Amazon Pay
  • BECS Direct Debit
  • Bacs Direct Debit
  • Bancontact
  • BLIK
  • Boleto
  • Card payments
  • Stripe Terminal
  • Bank Transfer
  • EPS
  • FPX
  • giropay
  • GrabPay
  • iDEAL
  • Interac Stripe Terminal
  • Klarna
  • Konbini
  • Link
  • OXXO
  • Przelewy24
  • PayNow
  • PayPal
  • PromptPay
  • SEPA Direct Debit
  • Sofort
  • ACH Direct Debit
  • WeChat Pay

Please note that support for specific payment methods can vary depending on the customer's location and the currency used for the transaction. You can find the latest information on regionally available payment methods through Stripe's guide: Guide to Payment Methods.

Pay Other Amount

When using Sales Order Prepayment or Invoice Partial Payment Percentages, a customer can also Pay Other Amount. The minimum amount is the percentage set for the transaction and a customer can choose to pay any amount between the minimum and 100%.

Enable Pay Other Amount.png

Pay_Other_Amount_on_Payment_Link_Page.png

ACH Micro-Deposit Verification

Enable the feature by selecting the checkbox for Enable Micro-Deposit Verification.

Payment_Link_-_Enable_Micro-Deposit_Verification.png

When Micro-Deposit Verification is enabled, you will see a notice above the Pay button and under Stripe's pop-up Agree button.

Stripe_ACH_Micro-deposit_Verification.png

Payment Schedule

When a customer preference needs to be collected as one-time or recurring charge, this setting can be enabled and displayed on the payment link page.

The recurring toggle, Default Recurring, can be set to on so it automatically shows as recurring on the payment link page. Additionally, the payment schedule label text can be modified to meet your business requirements.

Add Payment Schedule.png

Customer records will store the payment schedule option under the custom PayPack field.

Payment Schedule Flag on Customer Record.png

Payment Schedule on Payment Link.png

Update the header or footer design using the WYSIWYG editors.

  • Header Design (label) is used for anything above the payment form.
  • Add Text to Payment Link Page (label) is used for anything below the payment form.

Customize

When dealing multiple brands on the sales order or invoice, include conditional logic on the record type fields to specify appropriate content.

1<#if record.custbody2 == 'Offline Order'>
2 <img src="https://www.novamodule.com/novamodule-logo.png">
3<#else>
4 <img src="https://www.novamodule.com/PayPack-Logo.png">
5<#if>

Add custom footer text using text area field Add Text to Payment Link Page.Add_Text_to_Payment_Link_Page.png

Additionally customize footer text on the error page by using  text area field Add Text to Error Page.Add Custom Text to Error Page.png

Custom Error Text on Payment Link Error Page.png

Guest Checkout Customer ID

When using the PayPack payment link for guest checkout, you are able to set a single Stripe Customer ID to catch all transactional data into Stripe. This will benefit your Stripe dashboard so a new Stripe Customer ID will not be created for every PayPack payment link checkout.

Use Single Stripe Customer ID for PayPack Payment Link Guest Checkout.png

When using guest checkout Stripe Customer ID, certain payment link features will no longer be available for security reasons such as:

  • Save Payment Method in Stripe
  • Enable Payment Schedule

Note: In order for a PayPack payment link to use a guest checkout customer ID, the NetSuite Stripe Customer Id (PayPack) field must be blank. The customer record Stripe Customer Id will take priority over the Guest Checkout Customer ID.

Payment Intent Cancellation

There are instances where an invoice that is open may have multiple Stripe Payment Intents. In order to close out Stripe Payment Intents when an invoice status changes to paid, you will need to add a Saved Search ID.

Saved Search Template Name: novamodule PayPack Payment Intent Cancellation

Payment_Intent_Cancellation_Saved_Search_ID.png

After saving your Payment Intent Cancellation Saved Search ID, you will need to deploy the script nm PayPack for Payment Intent Cancel.

nm_PayPack_for_Payment_Intent_Cancel.png


Payment Intent Process

If you are using payment methods that require authorization and a delayed capture process (i.e. ACH Direct Debit), a script deployment for nm PayPack for Payment Intent Process is required.

Payment_Intent_Process.png

This script will run every so often to check if the Stripe Payment Intent has been updated from processing to succeeded.

Invoice_Payment_Intent_Status.png


Sales Order Prepayment

PayPack supports prepayment percentage using a global configuration value, a custom field on the Sales Order, or by a couple configuration override field IDs on the sales order and customer records.

Note: Prepayment percentage only applies on the first payment of a sales order. The subsequent amount due will be the remaining amount of the sales order.

The override record is prioritized from top to bottom.

  1. Sales Order Field ID (Override Percentage)- Find this at PayPack's Configuration → Payment Link → Sales Order Prepayment.
    • If this field id is populated in the configuration, any sales order that has a blank field value will automatically set prepayment percentage to 100%.
      Sales_Order_Prepayment_Override.png

    • Create the custom field record as type: Free-Form Text.
      Custom_Field_for_Sales_Order_Prepayment_Percentage.png

  2. Prepayment Percentage on Sales Order Record- Find this on the Sales Order → novamodule tab → PayPack subtab.
    • If this field is empty in the sales order, the prepayment percentage will default to the lesser priority.
      Custom_PayPack_Field.png

  3. Customer Field ID (Override Percentage)- Find this at PayPack's Configuration → Payment Link → Sales Order Prepayment.
    • If this field id is populated in the configuration, any sales order that has a blank field value will automatically set prepayment percentage to 100%.
      Sales_Order_Prepayment_Customer_Override.png

  4. Prepayment Percentage on Customer Record - Find this on the Customer → novamodule tab → PayPack subtab.
    • If this field is empty in the sales order, the prepayment percentage will default to the global configuration value.
      Custom_PayPack_Field_on_Customer_Record.png

  5. Prepayment Percentage (%) - Find this at PayPack's Configuration → Payment Link → Sales Order Prepayment. This is the global configuration value.
    Sales_Order_Prepayment_Global_Configuration.png


Invoice Partial Payment

PayPack supports partial payment percentage using a global configuration value, a custom field on the Invoice, or with a configuration override custom field ID on the invoice records.

The override record is prioritized from top to bottom.

  1. Invoice Field ID (Override Percentage)- Find this at PayPack's Configuration → Payment Link → Invoice Partial Payment.
    • If this field id is populated in the configuration, any invoice that has a blank field value will automatically set partial percentage to 100%.
  2. Partial Percentage- Find this on the Invoice → novamodule tab → PayPack subtab.
    • If this field is empty in the invoice, the partial percentage will default to the global configuration value.
  3. Partial Percentage (%) - Find this at PayPack's Configuration → Payment Link → Invoice Partial Payment. This is the global configuration value.

Invoice_Partial_Payment.png


Stripe Radar Rules

Occassionally there may be a requirement to only allow debit cards. With the Stripe card payment method, there is no option to allow for debit cards and not credit cards.

With Stripe Radar fraud rules, it is possible to block credit cards by adding a block rule (card_funding = 'credit').

Use Stripe Radar block rule to decline credit cards.png


PayPack supports adding a Payment link to NetSuite's Advance PDF/HTML template. This type of template is found under Customization > Forms > Advance PDF/HTML Templates.   

To add the Payment Link Field to this form:

  1. Open the form you would like to add the payment link too 
  2. Navigate to the section where you want to add the payment link
  3. Click the "plus" button
  4. Search for "PayPack Payment Link" or "PayPack Payment Link (Plain Text)"

If you would like to add a Payment Link to a button, you will need to add the field ID, custbody_nm_stripe_charge_pt_lnk_plain, to the source code of your document:

This is an example of the document when it is ready to be sent:

To display the PayPack customer portal link instead of a payment link for customers with a recurring payment schedule, use the below NetSuite PDF/HTML form syntax.

1<#if record.entity.custentity_nm_stripecharge_pay_schedule=="Recurring">
2 <a href="${record.entity.custentity_pp_stripe_cust_port_lnk}" rel="link">Click Here to Update Payment Method</a>
3<#else>
4 <a href="${record.custbody_nm_stripe_charge_pt_lnk_plain}" rel="link">Click Here to Pay Invoice Online</a>
5</#if>
Was this article helpful?
Yes
No