Customer-facing NetSuite Invoice Payment Form powered by Stripe +
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Slack Status

Allow Customers to Pay NetSuite Invoices with Stripe

This simple sinatra application enables customers to pay off their open NetSuite invoices using ACH or credit card.

Here's a demo video along with written documentation about this feature.

There is more robust version of this application that is hosted and managed as part of the SuiteSync product. This open source implementation is designed for organizations that would like to customize their collection process beyond what the hosted version allows.


Join the OpenSuite chat room or contact us at


copy .env-example .env
# edit .env with NetSuite and Stripe credentials

bundle exec ruby pay.rb

Getting Started

  1. Deploy app to heroku
  2. Find open invoice
  3. Copy internal ID of NetSuite Invoice to the payment URL, or visit to pick a random invoice from your NetSuite account

SuiteSync can also host a more advanced version of this form for you.


Credit or Debit Card
Card number: 4242 42424 4242 4242
CCV: 123
Expiration 12/2020

ACH Payment
Bank to use: PNC
Username: plaid_test
Password: plaid_good
Security question: tomato

Manual ACH Payment
Routing: 110000000
Account: 000123456789
Verification: 32, 45


Setting up a Link on the NetSuite Invoice

  1. Customization > Lists, Records, and Fields > Transaction Body Fields > New
  2. Configure field:
  • Label: Stripe Invoice Payment Link
  • ID: _stripe_invoice_payment_link
  • Type: Hyperlink
  • Display > Subtab: Main
  • Validation & Defaulting > Default Value:{id}
  • Validation & Defaulting > Formula: unchecked. After save, make sure this value is still unchecked. NetSuite will reset this field value for you without warning.
  • Applies To: Sale
  • Store value: false / unchecked