Card

Configure and manage Card payment method

Card

Card payments are a widely recognized and trusted method, allowing customers to pay using their credit or debit cards. CrissCross enables seamless integration with major card providers, ensuring a secure and efficient checkout experience for your customers.

Introduction

Card payments are essential for any online business, providing a familiar and straightforward option for customers to complete their purchases. Integrating Card payments with CrissCross allows you to offer various card types, including Visa, Mastercard, American Express, and Discover, while leveraging CrissCross’s secure infrastructure to process transactions efficiently. This guide explains how to integrate Card payments into your application or website using CrissCross.

Pre-requisites

Before accepting Card payments through CrissCross, ensure you meet the following requirements:

  • CrissCross integration:
    You have integrated with CrissCross, either using our hosted checkout, SDK, or server-to-server API.

  • Payment method enabled:
    You have enabled Card payments as a payment option in your CrissCross configuration through the CrissCross dashboard. As your merchant of record, CrissCross handles all payment provider relationships, so you can accept card payments without needing to register with individual card processors or establish commercial relationships with payment providers.

  • Meta fields setup:
    If Card payments require specific meta fields (such as billing details), ensure these fields are correctly configured under Merchant configurations -> Meta fields on your CrissCross dashboard and included in your requests.

Ways to integrate Card with CrissCross

CrissCross supports multiple integration methods for offering Card payments at checkout:

  1. CrissCross hosted checkout
    Using CrissCross’s hosted checkout is the simplest way to accept Card payments. With this option:

    • There’s minimal development required on your end.
    • CrissCross automatically displays the Card payment method during checkout.
    • You can control the payment methods offered through the session creation API call, specifying Card as a payment method if desired.
  2. CrissCross SDK
    If you prefer more control over your checkout experience, you can integrate with the CrissCross SDK:

    • The SDK provides UI components to include Card as a payment method seamlessly.
    • It simplifies capturing any required inputs (like card details) and initiating transactions, without extensive server-side coding.
    • Consult the CrissCross SDK documentation for detailed steps on integrating Card payments.
  3. Server-to-server integration
    For complete control over your payment process and checkout flow, you can integrate Card payments using CrissCross’s server-to-server APIs:

    • This approach offers greater flexibility in implementing the payment flow and handling customer data.
    • You will be responsible for capturing necessary inputs (e.g., card details) and forwarding them to CrissCross securely.

Let’s explore the server-to-server approach in more detail.

Retrieving available payment methods

Using the CrissCross API, you can retrieve a list of available payment methods for a given checkout session by calling the GET /v1/payment/available-methods endpoint with a sessionId. For Card payments, the method type is typically returned as card.

Request:

$curl -G https://api.crisscross.money/v1/payment/available-methods \
> -d sessionId={sessionId}

Response:

1{
2 "success": true,
3 "availableMethods": [
4 {
5 "type": "card",
6 "name": "Credit/Debit Card",
7 "requiredInput": [
8 {
9 "name": "cardNumber",
10 "type": "text",
11 "label": "Card Number"
12 },
13 {
14 "name": "expiryDate",
15 "type": "text",
16 "label": "Expiry Date (MM/YY)"
17 },
18 {
19 "name": "cvv",
20 "type": "text",
21 "label": "CVV"
22 },
23 {
24 "name": "cardholderName",
25 "type": "text",
26 "label": "Cardholder Name"
27 }
28 ]
29 },
30 ...other methods...
31 ]
32}

In this response:

  • The Card payment method is listed with "type": "card".
  • The requiredInput field indicates that the customer must enter their card details.

Creating a checkout session

To create a checkout session, make a POST request to the /v1/checkout/session endpoint.

$curl -X POST https://api.crisscross.money/v1/checkout/session \
> -H "Content-Type: application/json" \
> -d '{
$ "merchantId": "YOUR_MERCHANT_ID",
$ "merchantReference": "ORDER67890",
$ "amount": 20000,
$ "currency": "ZAR",
$ "integrationType": "hosted",
$ "redirectUrl": "https://merchant.com/redirect",
$ "payerDetails": {
$ "emailAddress": "[email protected]",
$ "location": "ZAF",
$ "fullName": "Siyanda Mthembu",
$ "phoneNumber": "0723456789"
$ }
$}'

Response:

1{
2 "sessionId": "SESSION_abcdef123456",
3 "paymentLink": "https://crisscross.money/checkout/SESSION_abcdef123456"
4}

In this example:

  • The sessionId in the response references this specific checkout session, which can be used to retrieve available methods, complete the payment, or make further adjustments before checkout completion.

Handling the payment

After creating a session, your application can direct customers to the paymentLink if using the hosted checkout. If you’re using the CrissCross SDK or a server-to-server integration, you’ll use the session details to process the Card payment. This involves:

  • Capturing card details securely through the CrissCross SDK or your own forms (ensuring PCI compliance).
  • Passing the card details to CrissCross through the appropriate API calls for tokenization and charge authorization.

Supported regions / countries

Card payments through CrissCross are supported in the following regions and countries:

RegionCountries
Southern AfricaSouth Africa, Zambia
East AfricaKenya, Uganda, Tanzania
West AfricaCameroon, Democratic Republic of Congo (DRC), Togo, Côte d’Ivoire, Benin, Nigeria
Middle EastUnited Arab Emirates (UAE), Kingdom of Saudi Arabia (KSA), Kuwait, Bahrain, Qatar, Oman, Egypt
EuropeEuropean Union, United Kingdom

(Note: Support for additional regions and countries may be added in the future. Check CrissCross documentation or contact support for updates.)

Supported workflows and services

The following table outlines the workflows and services supported when using Card payments with CrissCross:

Workflow / ServiceSupported
Available via CrissCross hosted checkout✔️ Yes
Available via CrissCross SDK✔️ Yes
Available via CrissCross server-to-server API✔️ Yes
Instant Capture✔️ Yes
Cancel / Void✔️ Yes
Refund / Reverse✔️ Yes
Delayed / Manual Capture✖️ No
Save Instruments✔️ Yes
Merchant Initiated Transaction (MIT)✔️ Yes
InteroperabilityN/A

Ensuring a seamless and secure payment experience

To optimise your integration and ensure customer satisfaction, consider the following best practices:

  • Prioritise security and compliance:
    Protecting customer data is paramount. CrissCross adheres to PCI DSS standards and other relevant regulations. Ensure you also follow any additional region-specific compliance requirements, especially when handling sensitive financial information across different countries.

  • Focus on a smooth user experience:
    Present payment methods clearly and intuitively. When customers reach the checkout stage, they should easily recognise and trust the payment options available. For example, highlight local payment methods prominently in regions where they are popular.

  • Monitor performance and reliability:
    Keep an eye on transaction success rates and processing times. CrissCross’s dashboard provides insights into each payment method’s performance, enabling you to resolve any latency or downtime issues quickly to maintain customer trust.

  • Scale with your business growth:
    As your business expands, your payment needs may evolve. CrissCross’s flexible infrastructure makes it easy to add new payment methods, integrate with additional PSPs, or adjust your configurations to handle increased transaction volumes without compromising performance.

Additional resources and next steps

With CrissCross, managing and enabling diverse payment methods becomes more efficient and manageable. For detailed integration instructions, coding examples, and advanced customisation options, explore these resources:

  • CrissCross API documentation
    Dive deeper into CrissCross’s API endpoints and discover how to implement server-to-server integrations, handle advanced payment flows, and manage transactions programmatically.

  • Integration guides
    Review step-by-step guides for integrating CrissCross’s SDKs, ensuring a smooth setup experience regardless of your technical background or business model.

By configuring payment methods with CrissCross, you can offer your customers a streamlined and secure checkout experience tailored to their preferences and regional payment norms. Continuously refine your payment configurations and leverage CrissCross’s robust features to stay agile in an ever-evolving e-commerce landscape.