Integrate with Stripe

by Macz Norton
Follow

You can set up an integration with Stripe to process eCommerce transactions for offers that you sell - domain subscriptions, courses, paths, and plans.

When students purchase access to your training domain or register for a priced course, path, or plan they will need to enter:

  • Name on card
  • Credit for debit card

image-20210308-163448.png

In this article:

 

Connect Stripe to your Skilljar organization

image2.png

  1. From the Organization dropdown in the Dashboard left navigation bar, click Settings.
  2. Click the Connect with Stripe button. A Skilljar Stripe authentication page will open in your browser.
    1. Type your email and password into the Stripe sign in page.
    2. Once authenticated with Stripe, you will be redirected to the Organization page in the Skilljar Dashboard.
    1. Click Authorize access to this account on
    2. Once your Stripe account is activated, you will be redirected to the Organization pages in the Skilljar Dashboard.
    1. To sign-in to an existing Stripe account, click Sign in
    2. To active a new Stripe account, complete the provided form. 
  3. Once authenticated to Stripe via Skilljar, the Organization page will update to show your Connected Account and your Stripe account ID. By default, Skilljar retrieves the live mode API key upon authentication.

 

Attention: You must have Stripe admin permissions in order to sign in to an existing Stripe account via Skilljar.

image4.png

 

Complete test payments

Stripe provides two API keys: one for live mode and one for test mode. By default, Skilljar retrieves the live mode API key upon authentication. While in live mode, you cannot use test Stripe cards.

To enable the test mode API keys on the backend of Skilljar, contact Skilljar Support and include your:

  • Skilljar Organization name
  • Stripe Account ID
  • Stripe Public test API key
  • Stripe Secret test API key

image5.png

Best practice: If you have a Sandbox Organization, enable your Stripe account first to allow for testing of your company’s entire eCommerce flow (e.g. Skilljar purchase to Stripe to your accounting / finance systems).

Use the Stripe test cards to test these example student payment flows in Skilljar on your training domain:

  • Purchase priced course at full price
  • Purchase priced course with promo code (<100% discount)
  • Purchase domain subscription.

To re-enable the live mode API keys on the backend of Skilljar, contact Skilljar Support with your Skilljar Organization name. You can then send the following items via a secure service such as LastPass or Dropbox:

  • Stripe Account ID
  • Stripe Public live API key
  • Stripe Secret live API key

image8.png

Learn more: Stripe Docs, Testing.

 

Integration data flow

image1.png

An offer in Skilljar refers to priced domain subscriptions, course bundles, and courses. For any offer type, Skilljar sends Stripe:

  • skilljarUserEmail, the email from the student’s training domain account
  • skilljarQuantity, the number of offers purchased
  • skilljarOfferType, the offer type (i.e.  domain, published_path, published_course)
  • skilljarOrderId, the purchase order ID
  • skilljarOfferSku, the offer SKU
  • skilljarDescription, the offer description

If an offer is on a priced published course, Skilljar sends Stripe:

  • skilljarCourseTitle, the published course title
  • skilljarPublishedCourseId,  the obfuscated ID

If an offer is on a domain subscription, Skilljar sends Stripe:

  • skilljarDomainName, the training domain name
  • skilljarDomainAccessDurationUnit, the access duration period

Events and logs details the API calls when the payment was created, charged, and payment succeeded.

image6.png

To enable billing details in the Stripe form on the purchase page in Skilljar, contact Skilljar Support and include your Skilljar Organization name.image3.png

Remove Stripe integration

To remove the Stripe integration from your Skilljar Organization, contact Skilljar Support and include your Skilljar Organization name.

When the Stripe integration is disconnected from your Organization, students will no longer be able to complete payments via Stripe on your training domain(s). 

 

Frequently asked questions

What information do I need to activate a new Stripe account via Skilljar?

To complete the Stripe activation from via Skilljar, you will need the following information:

Business details:

  • Country
  • Business address
  • Business phone
  • Type of business
  • Employer Identification Number
  • Business website
  • Business description
  • Time from payment until customers receive goods / services

Individual or sole proprietor details

  • Full name
  • Phone number
  • Date of birth
  • Last 4 digits of Social Security number
  • Home address

Credit card statement details

  • Statement descriptor
  • Support phone number
  • Customer support address 

Bank details

  • Routing number
  • Account number

Two-step authentication

  • Email
  • Password

Learn more:  Stripe Docs, Account.

 

Will a Stripe receipt automatically be generated and sent upon purchase?

Not by default. If you'd like, you can contact your CSM or support@skilljar.com to enable this feature for your organization. Once enabled, when a learner makes a purchase on Skilljar using Stripe, Stripe will automatically send an email receipt to the learner's email address. Please see your Stripe Dashboard to review the email receipt branding and customization options. 

 

Can Skilljar calculate sales tax and pass that value through to Stripe?

No, Skilljar does not calculate sales tax. To collect tax on your eCommerce purchases, we advise that you set-up an external payment processor and configure your tax calculations in that processor.

 

What student registration flows will bypass the Stripe payment details?

Students in these scenarios will not need to enter their name or billing details for a Stripe payment:

  • Student purchases a course, with a 100% discount on the course using a promo code.
  • Student registers for a free course.
  • Admin Manually registers a Student in a course from the Skilljar Dashboard

 

Does Skilljar store student credit card information?

Skilljar does not store credit card information and only collects transaction details with Stripe’s tokenization process. We also use SSL on the purchase pages where we collect credit card information.

 

 

Direct Stripe Integration 

External Payment Processor Integration

What objects are used/created in Stripe?

An offer in Skilljar refers to priced domain subscriptions, course bundles, and courses. For any offer type, Skilljar sends Stripe:

  • skilljarUserEmail, the email from the student’s training domain account

  • skilljarQuantity, the number of offers purchased

  • skilljarOfferType, the offer type (such as  domain, published_path, and published_course)

  • skilljarOrderId, the purchase order ID

  • skilljarOfferSku, the offer SKU

  • skilljarDescription, the offer description

If an offer is on a priced published course, Skilljar sends Stripe:

  • skilljarCourseTitle, the published course title

  • skilljarPublishedCourseId,  the obfuscated ID

If an offer is on a domain subscription, Skilljar sends Stripe:

  • skilljarDomainName, the training domain name

  • skilljarDomainAccessDurationUnit, the access duration period

 

Stripe then sends the following data back to Skilljar:

Preview unavailable

 

LaunchDarkly will have full control over how it's mapped from Skilljar.

How are taxes handled? How would Avalara ↔︎ Stripe integration work? Do the taxes show up in Skilljar when the customer is making a purchase?

Skilljar does not calculate sales tax or add it to the sticker price. Some customers choose to include tax in the total price listed in Skilljar and separate out taxes in their external systems. 

 

To collect tax on your eCommerce purchases, we advise that you set up an external payment processor and configure your tax calculations in that processor.

 

 

With the external payment processor configured, when a user clicks on "Proceed to Checkout" in Skilljar, they will be redirected to the external payment checkout URL with the purchase_id appended to the URL as a query parameter. The external processor can then send taxes back to Skilljar and we can pull it into the Order Report section of the Administrator Dashboard. Some customers choose to add a sentence that notifies users that regional/local taxes will be added at checkout. 

Is promo code data sent to Stripe?

The Skilljar system shows what promo code the learner uses, the offer price, and the promo price (the price the user paid after applying the promo code).

LaunchDarkly will have full control over how Skilljar data is mapped to Stripe.

Integration - How does it work?

The direct Stripe integration securely embeds Stripe's payment page during the Skilljar checkout flow. 

 

Stripe manages the charging process and informs Skilljar on the outcome of the Charge. Skilljar never stores any purchasing data, credit card information, etc. Depending on the successful purchases, Skilljar will allow the completion of purchase and registration into the course.

 

Stripe provides 2 API keys: one for live mode, one for testing mode. By default, Skilljar retrieves the live mode API key, but while in live mode you cannot use test Stripe cards.

This would be managed by LaunchDarkly on how they would like to manage the API. 

Keep reading

Powered by Zendesk