Stripe logo
ERPNext: Stripe Integration

ERPNext Features Item Code: Feature-Stripe

UOM : Nos

Stripe payment integration for ERPNext supporting shopping cart checkout, email payments, offline subscriptions, card readers and Point of Sale


  1. All Stripe payment methods supported including Cards, Wallets, Direct Debit, SEPA, Klarna and many more
  2. Website and card-present card reader payments (contact us for mobile bluetooth)
  3. ERPNext Payment Request support
  4. ERPNext (>14.16.0) Point-of-Sale integration (contact us for POSAwesome integration)
  5. One-off and recurring offline payments (subscriptions)
  6. Payments in 46 countries & 135+ currencies
  7. Unlimited and free, just an additional 0.3% fee on top of standard Stripe fees


Contact us if you're interested, also available on frappe cloud!

Basic configuration of a Stripe account

  1. Add a Stripe2 Settings document
  2. Link to a completed Contact record of the person in your organisation responsible for external payment integrations, such as a Financial Director. This needs to be the Contact record of a valid system User with an email address
  3. Link to the Company record that this payment integration is applicable to
  4. Choose whether you want to take Live payments or only Test payments and submit
  5. Verify the email address by clicking on the link in the email sent to you
  6. Start the Stripe onboarding by clicking on Connect with stripe. You can set up a new Stripe account or link with an existing one
  7. Once Authorised you only need to configure an Online and Offline Mode of Payment

How to take Shopping Cart Payments

  1. Configure E Commerce Settings including:
    1. Enable Checkout
    2. Payment Gateway Account of your configured Stripe account
  2. Make sure you enable Show Pay Button in Purchase Order Portal in Buying Settings
  3. On your products website, choose some items, complete the shopping cart and Place Order
  4. Click the Pay button on the order and you will be directed to the payment page
  5. Complete the payment including choosing from the available payment methods, and click the Pay button

How to use the website checkout to take a payment manually

  1. Submit a transaction compatible with a Payment Request. The most common would be a Sales Invoice
  2. Create and submit a Payment Request for the transaction:
    1. ensure you use a Mode of Payment that is not the one configured for offline use
    2. run set_payment_request_url() on the Payment Request which will set the payment_url field
  3. Copy and paste the contents of the payment_url field into a browser. A Stripe payment checkout page will be rendered
  4. Choose your payment method, complete and submit the payment

Depending on the payment method, the payment will complete immediately or will be updated by webhook at a later time.

How to set up a payment method for offline payments of subscriptions

As above, except the transaction should have a completed auto_repeat field.

How to take offline subscription payments

  1. Submit a transaction compatible with a Payment Request. The most common would be a Sales Invoice
  2. Create a Payment Request for the transaction:
    1. ensure you use a Mode of Payment that is the one configured for offline use

Upon submission of the Payment Request, an offline payment will be attempted using the previously saved payment method. If you completed the To email address in the payment request, an email will be sent with a pdf copy of the transaction attached upon completion of the payment.

How to take Point of Sale Payments

This integration supports standalone Stripe card terminals like BBPOS WisePOS E as well as browser payments. It also theoretically supports mobile bluetooth card readers but there is currently no existing mobile app available. Contact us if this is necessary for your scenario.

NOTE: you may need to contact Stripe to enable Terminal support on your account, please see this.

  1. Create a POS Profile with all the Payment Methods you intend to offer as Modes of Payment. This could include Browser Checkout, a Terminal Reader and Cash
  2. If using a card reader, Assign a Location in Stripe2 Settings
  3. Add a Terminal Mode of Payment and register the Pairing Code
  4. Now Open Point of Sale and process a sale
  5. Use the rendered buttons, like below, to take the payment: POS Buttons

Support

Discuss ideas in GitHub

Report issues in GitHub

License

Proprietary