Data Flow | NetSuite Customer to Stripe Customer Add/Update |
Flow Type | Scheduled |
NS Record | Novamodule Stripe Customer Export Template, Stripe Customer Id, NetSuite Customer Portal URL |
Description:
Get the list of Customers from NetSuite and create or update the customer in Stripe.
- Once the flow is scheduled it gets the list of customer records whose email is not empty from NetSuite using Novamodule Stripe Customer Export Template saved search.
- Performs a lookup in stripe to check the existing customer using the email from NetSuite, if there is an existing customer then it gets the stripe customer id of that customer.
Create/ Update Customer
- The process checks if the customer exists in Stripe. If not, it creates the customer. Before creation, it ensures both the customer ID and Stripe Customer ID fields are empty. If both conditions are met, it proceeds with the import; otherwise, it skips it.
- It then checks if the customer Id is not empty if yes,then the customer is updated in Stripe.
- Once the customer is created or updated in Stripe the Stripe customer id is written back in the NetSuite field Stripe customer id and custom portal URL is mapped with the Stripe Customer Portal URL field in NetSuite
- For this the existing customer is identified by the filter ["internalid","is","{{{[NS Customer]}}}"]
Configure IO Settings:
- Click on Settings - Customers - NetSuite to Stripe
- Select the NetSuite saved search for customer records which will be available after the bundle installation “Novamodule Stripe Customer Export Template”. Make a copy of the saved search and use the copied saved search for any additional criteria or results.
IO Mappings:
-
Update Customer in Stripe
- Updates the customer with name, email address, address, phone number and shipping address.
-
Create Customer in Stripe
- Creates the customer and maps the name, email address, address, phone number and shipping address.
-
Update NS Customer with Stripe Customer ID
- Updates the NetSuite Customer with the Stripe Customer Id
- NetSuite Customer Portal URL: This URL holds the stripe customer portal link. After a set number of days the existing link expires then the suitelet is triggered to get the new link in place of the existing link.
The suitelet is by default NOT DEPLOYED with the bundle installation. User has to manually deploy the script to run.This is the suitelet script for it: novamoduleStripeCustomerPortalLink. Once the script is deployed an external url is generated, add “&strCustId={{customer}}” to the generated url and map this updated external url against NetSuite Customer Portal URL in mappings. This URL redirects to the Stripe Customer Portal where the customer has access to the invoices, payment methods and billing information.
Note:
Make sure that the Stripe Customer Portal URL is populated, if not run the Add/Update Stripe Customer Portal URL on the Customer record in NetSuite flow so that the field gets populated.