Review Stripe Integration for SCA


Overview

Introduction

Khaos Control has been updated to support Stripe Strong Customer Authentication (SCA) requirements.
Strong Customer Authentication was introduced as part of the PSD2 regulations and requires additional authentication for many online card payments, including the use of 3D Secure. Transactions that do not meet the authentication requirements may be declined by the customer's bank.
This article explains how to configure Stripe within Khaos Control, link it to a bank account, enable MOTO (Mail Order / Telephone Order) payments and use common Stripe payment functions.

Prerequisites

Before starting, you will need:
  • An active Stripe account.
  • Access to your Stripe Dashboard.
  • Access to Khaos Control System Data.
  • Your Stripe Publishable Key and Secret Key.

Create a New Stripe Card Integration

Follow these steps to configure Stripe as a card integration account.

Steps

  1. Open a System Data screen.
  2. Press Alt + E or click the Edit button.
  3. Press F3 or click the Add button.
  4. Configure the new integration:
    • The Account Number is assigned automatically and must not match any account configured in [ System Operations | Edit Credit Card Integration Settings ].
    • Enter a name such as Stripe in the Name column.
    • In Integration Type, press F4, select Stripe and click OK.
    • Tick Token Swap.
    • Leave Copy PreAuth to Following Payments unticked.
    • Leave PreAuth Full Order Value unticked.
  5. Press Ctrl + S or click the Save button.
  6. Select the new account, right-click and choose Configure.
    • Tick Testing if this account is for testing purposes.
    • Open your Stripe Dashboard.
    • Open Developers.
    • Open API Keys.
    • Copy the Publishable Key into the Publishable API Key field.
    • Copy the Secret Key into the Secret API Key field.
  7. Click OK.
  8. Close the Card Integration Accounts screen.

Important Notes

  • Token Swap must be enabled for Stripe.
  • Stripe pre-authorisations are only valid for 24 hours, which is why:
    • Copy PreAuth to Following Payments should remain unticked.
    • PreAuth Full Order Value should remain unticked.

Once Stripe has been configured, it must be linked to a bank account within Khaos Control.

Steps

  1. Create a new Stripe bank account if required.
  2. Locate the Stripe bank account.
  3. Set the CT Account field to the account number of the Stripe integration created earlier.
  4. Press Ctrl + S or click Save.

Enable MOTO Payments in Stripe

Khaos Control assumes that many transactions will be processed as Mail Order / Telephone Order (MOTO) payments.
Check whether MOTO payments are already enabled on your Stripe account.

Check MOTO Availability

  1. Sign in to your Stripe account.
  2. Open Payments for MOTO.
If the page opens successfully, MOTO payments are already enabled.
If the page displays Page Not Found, MOTO payments must be enabled manually.

Enable MOTO Payments

  1. Ensure your Stripe account has a verified mobile number by following Phone Verification for Cards.
  2. Enable direct integration settings within Stripe by accepting responsibility for handling card details via Integration Settings.
  3. Contact Stripe and request MOTO payments to be enabled via Stripe Support.
Stripe may ask additional security questions before enabling the feature.

Stripe Dashboard

The Stripe Dashboard is useful for testing and monitoring payment activity.
For test transactions, Stripe provides a range of test card numbers via:
By using Stripe's test API keys and test cards, you can safely validate your configuration before processing live payments.
The Developers section of the dashboard contains logs and events that can be invaluable when troubleshooting payment issues.

Using Token Swap

Token Swap securely replaces stored card details with a token managed by Stripe.

Steps

  1. Create a new sales order. See How To: Create a New Sales Order.
  2. Confirm:
    • The bank account is your Stripe bank account.
    • The payment type is Card.
  3. Select New and enter customer card details.
  4. Save the sales order.

Successful Token Swap

If Token Swap has completed successfully:
  • The payment shows Token with a green tick.
  • Only the last four digits of the card number remain visible.
  • A customer record is created within Stripe.
  • The payment method is stored against that Stripe customer.
  • The payment method is marked for future use.

Important Note

Stripe matches customer payment methods primarily by billing address information. To associate multiple payment methods with the same Stripe customer, the billing address must include an email address.

Authorising a Payment

To process an authorised payment:
  1. Open the Sales Order.
  2. Go to the Payment tab.
  3. Right-click the payment transaction.
  4. Select Authorise Transaction.

Result

The payment appears in the Stripe Dashboard under:
Payments > All Payments
The transaction status will be Succeeded.

Pre-authorising a Payment

Pre-authorisation reserves funds without capturing them immediately.

In Khaos Control

  1. Open the Sales Order.
  2. Open the [ Sales Order | Payment ] tab.
  3. In the Payment Grid, right-click the transaction.
  4. Select Pre-Authorise Transaction.

In Stripe

The transaction appears under:
Payments > All Payments
with a status of Incomplete.

Important Note

Stripe pre-authorisations must be fully authorised within 24 hours.

Reject a Pre-authorised Payment

If a pre-authorised transaction is no longer required, it can be cancelled.

Steps

  1. Open the Sales Order.
  2. Open the [ Sales Order | Payment ] tab.
  3. Right-click the pre-authorised transaction.
  4. Select View Payment Details.
  5. Select Reject Authorisation.

Result

The transaction status in Stripe changes to Cancelled.

Process a Refund

Authorised Stripe payments can be refunded directly from Khaos Control.

Steps

  1. Open the customer record.
  2. Load the customer associated with the Stripe transaction.
  3. Select the relevant credit note.
  4. Right-click and choose:
    Refund - Refund Credit Note or Payment (automatic)
    • Tick Refund?
    • Confirm the refund value.
    • Confirm the bank account is correct.
    • Click OK.

Partial Refunds

To process a partial refund:
  • Enter the amount to refund instead of the full value.
  • Save the refund.
Additional refunds can be processed later until the full transaction value has been returned.

Refund Status in Stripe

Full Refund

The payment status changes to:
Refunded

Partial Refund

The payment status changes to:
Partially Refunded
You can review the refunded amount by opening the payment details within Stripe.


See Also


Did you find this article helpful?