Connection & setup
1. Connect via OAuth
You will need to connect both your GoCardless and NetSuite accounts to the integration. GoCardless will provide secure links that can be used to perform the OAuth connection for both accounts.
Note: the NetSuite connection should be completed by an Administrator, and requires the Token-based authentication feature to be enabled in NetSuite.
2. Install Celigo SuiteApp
Since the integration is facilitated by Celigo, the “Celigo Integrator.io on SuiteScript 2.0” SuiteApp needs to be installed in your NetSuite account. You can follow the steps below to complete the installation.
- Sign in to NetSuite as an Administrator.
- From the Customization menu, select SuiteCloud Development > SuiteApp Marketplace.
- In the SuiteApp Marketplace, search for “Celigo integrator.io”.
- Click the “Celigo integrator.io on SuiteScript 2.0” tile to open the page.
- Click the Install button.
- Wait for the installation to finish. This may take a few minutes.
3. Install GoCardless for NetSuite SuiteBundle
Once connected through OAuth with the Celigo SuiteApp installed, you’ll need to install the “GoCardless for NetSuite” SuiteBundle that includes all of the custom fields, objects, and scripts that are required for the integration to function. The installation instructions are outlined below.
Installation instructions
- Sign in to NetSuite as an Administrator.
- Navigate to Customization > SuiteBundler > Search & Install Bundles.
- Enter “GoCardless for NetSuite” into Keywords and click the Search button (Bundle ID: 540789).
- Click on the “GoCardless for NetSuite” tile to open the page.
- Click the Install button.
- On the Preview Bundle Install page see the list of elements that will be added to your account, then click the Install Bundle button.
- In the pop-up window confirm installation by clicking Ok.
- Wait for the installation to finish. This may take a few minutes.
4. Create GoCardless configuration record
Following the package installation, the next step is to create the GoCardless Configuration record within NetSuite. If you’re connecting multiple GoCardless accounts to the integration, you’ll set up one configuration record per GoCardless account. You can create a new GoCardless Configuration record by navigating to GoCardless > Setup > GoCardless Configuration. From here, you’ll select the “New GoCardless Configuration” button.
On the configuration record, you’ll need to select a fees account, and set up the GoCardless payout bank account > NetSuite bank account mapping. This will be used when reconciling payouts within NetSuite. You can find your GoCardless payout bank account IDs for the mapping here: https://manage.gocardless.com/creditor-bank-accounts
The full set of field definitions is included below.
Field | Description | Editable? |
---|---|---|
Name |
The name of the GoCardless configuration record. The name should reflect the GoCardless account that's associated with the configuration record. |
Y |
Send mandate link automatically? |
The default value for the "Send mandate link automatically" field on the GoCardless > Mandate setup subtab of the customer. When this checkbox is selected on a customer & a mandate link is requested, the link will be emailed to the customer. |
Y |
Mandate Email Template |
The default value for the "Mandate Email Template" field on the GoCardless > Mandate setup subtab of the customer. This template will be used to email a requested mandate link to a customer if the “Send mandate link automatically” checkbox is selected. See step “6. Create mandate link email template”. |
Y |
Mandate Email Sender |
The NetSuite user selected in this field will be the sender/author of the mandate link emails. |
Y |
Autopay |
The default value for the "Autopay" field on the GoCardless > Configuration subtab of the customer. When a customer has autopay enabled, their invoices will have “Pay with GoCardless” selected by default. |
Y |
Fees account |
The bank account used to reconcile fees from GoCardless payouts. |
Y |
Department |
The department used to book GoCardless fees from payouts. |
Y |
Class |
The class used to book GoCardless fees from payouts. |
Y |
Location |
The location used to book GoCardless fees from payouts. |
Y |
Bank Accounts |
The mapping of the GoCardless payout bank accounts to the NetSuite bank accounts. This is used when reconciling payouts from GoCardless in NetSuite. The mapping must be done prior to processing transactions. |
Y |
After the configuration record is set up for each connected GoCardless account, provide the name and internal ID of the record(s) to GoCardless. GoCardless will then enable the integration for your account(s) within Celigo.
5. Create GoCardless > NetSuite currency mapping
Every GoCardless currency that you’ll be collecting in will need to be mapped to a NetSuite currency. You can do this by navigating to the List GoCardless currency mapping page under GoCardless > Setup > GoCardless currency mapping. From there, you’ll create a new mapping record for each currency using the “New GoCardless currency mapping” button.
On the mapping record, you’ll input the 3 letter ISO 4217 currency code for the GoCardless currency (i.e. GBP, USD, EUR, etc.), select the corresponding NetSuite currency from a drop-down menu, and save.
6. Create mandate link email template
If you’d like to automatically send the mandate links that are generated through the integration to your customers, you’ll need to configure an email template. To do this, navigate to “Documents > Templates > Email Templates > New”.
- Give your email template an ID and name.
- Set the record type to “Entity”.
- Use the below information for the template’s subject and body & adjust as desired.
- Save the template.
Subject:
${customer.subsidiary} would like authorization to take payments from you
Text body:
Hi ${customer.companyname},
We'd like to set up a mandate. This will give us permission to collect future payments directly from your bank account.
Once a mandate is set up, you won't need to remember to manually pay our invoices anymore.
Rest assured, you can cancel this authorization at any time by accessing your bank app.
${customer.custentity_ns_gc_mandate_link}
Thanks,
${customer.subsidiary}
7. Update NetSuite customers with GoCardless configuration record
After you’ve created your GoCardless configuration record, you’ll need to assign it to the existing NetSuite customers that you’d like to process through GoCardless. This allows the integration to know which GoCardless account to route requests to for a given customer.
There are a few ways to update this field on the NetSuite customers:
- Manually edit the relevant customers, and select your GoCardless Configuration record on the “GoCardless > Configuration” subtab.
- Perform a bulk update to the applicable customers using a CSV import.
During this process, you may also want to update the following fields on your existing customers:
- “Autopay with GoCardless” - when it’s set to true, all of the customer’s invoices will have the “Pay with GoCardless” checkbox selected by default on a go forward basis. The default value of this field is set on the GoCardless Configuration record for new customers.
- “Send mandate link automatically” - When this field is set to true, a link to the online mandate form will be emailed to the customer once it’s requested. The default value of this field is set on the GoCardless Configuration record for new customers.
- “Mandate email template” - The email template that’s used to send the mandate link to the customer when the "Send mandate link automatically" field is selected. See the “6. Create mandate link email template”. The default value of this field is set on the GoCardless Configuration record for new customers.
Note: if you’re syncing existing mandates from your GoCardless account into NetSuite (see Step 8 for details), all of the NetSuite customer records that auto-match to mandates will have the default GoCardless field values set from your GoCardless configuration record. The configuration record will also be assigned to these customers. Therefore, these customers won’t need to be updated manually or via a CSV import unless you want to override the default values.
8. Sync in GoCardless mandates
When connecting a GoCardless account with pre-existing mandates to the NetSuite integration, you’ll want to sync your mandates into NetSuite. This can be done by selecting the “Mandate sync” button on the related GoCardless configuration record.
If you would like the mandates to automatch to NetSuite customers when the sync is performed, you’ll need to add the NetSuite internal customer IDs as metadata on the GoCardless mandate using the “nscust” key.
Things to note:
- Only one mandate can be linked to a NetSuite customer at a time. Each NetSuite customer internal ID should only be added as metadata to one GoCardless mandate.
- All of the NetSuite customer records that auto-match to mandates will have the default GoCardless field values set from your GoCardless configuration record (Autopay with GoCardless, Send mandate link automatically, Mandate email template). The configuration record will also be assigned to these customers.
- Once a mandate is matched to a customer record, the customer’s open invoices will be updated to reference this mandate for processing payments.
- The time it takes for the mandate sync to complete will vary depending on the number of mandates in your GoCardless account.
Any mandates that do not have a “nscust” metadata ID can be manually matched to NetSuite customers from the List Mandate page as shown below. You can find this page by navigating to GoCardless > Mandates > Mandate.
Mandate sync data flow