1. Integrations

Pre-built checkout integrations in .NET

Overview

This guide introduces open-source .NET projects designed to accelerate e-commerce checkout integration development. These projects provide:

Integration components

  • Pre-built integrations with shipping providers
  • Tax calculation service connections
  • Payment processing implementations
  • Complete integration framework

Key benefits

  • Accelerated development
  • Proven integration patterns
  • Secure implementation
  • Flexible customization

OrderCloud checkout basics

Checkout implementation complexity stems from multiple sources:

Standard features

  • Credit card processing
  • Security requirements
  • PCI compliance
  • Data protection

Custom requirements

  • Shipping rules and rates
  • Business-specific logic
  • Integration preferences
  • Workflow customization

Implementation approach

OrderCloud uses the Integration Event API resource for checkout implementation. See the Order checkout integration event guide for technical details.

Key features:

  • Webhook requests to custom endpoints
  • Secure credential handling
  • Flexible logic injection
  • Structured data formats
  • Consistent workflows

Common integration vendors

1. Shipping logistics providers

Purpose:

  • Calculate shipping cost estimates
  • Support multiple service levels
  • Enable real-time rate calculation
  • Support warehouse integration

Features:

  • Service-based estimates
  • Cost calculations
  • Label printing support
  • Tracking integration

Example: EasyPost implementation

2. Tax calculation providers

Purpose:

  • Handle complex tax requirements
  • Support multiple jurisdictions
  • Provide real-time calculations
  • Ensure compliance

Implementation timing:

  • Calculate after shipping selection
  • Before payment processing
  • Update on order submission
  • Maintain calculation history

Example: Avalara integration

3. Payment processing providers

Purpose:

  • Accept multiple payment methods
  • Ensure PCI compliance
  • Protect sensitive data
  • Support saved payments

Security features:

  • Secure iframe integration
  • Card data tokenization
  • Vault storage
  • Compliance management

Example: Stripe implementation

Scaffolding starter project

The GitHub repository provides a complete .NET 6 API project with:

Core features

  • Complete checkout functionality
  • Integration framework
  • Security implementation
  • Error handling

Default integrations

  • EasyPost for shipping:
    • Rate calculation
    • Service selection
    • Label generation
  • Avalara for tax:
    • Real-time calculation
    • Multi-jurisdiction support
    • Compliance management
  • Stripe for payments:
    • Multiple payment methods
    • Secure processing
    • Card vaulting

Provider flexibility

  • Modular design
  • Easy provider switching
  • Custom implementation support
  • Maintained interfaces

Deployment guide

Azure Web App setup

  1. Create new Web App Service

  2. Configure environment variables:

    - OrderCloud API keys
    - EasyPost credentials
    - Avalara settings
    - Stripe API keys
    

Provider setup

  1. EasyPost configuration:

  2. Avalara setup:

  3. Stripe integration:

GitHub Actions deployment

  1. Update workflow configuration:

    yaml
    AZURE_APP_NAME: your-app-name
    AZURE_SLOT_NAME: your-slot-name
  2. Configure secrets:

    • Download Azure publish profile
    • Add as AZURE_WEBAPP_PUBLISH_PROFILE
    • Set up deployment authentication
  3. Deploy application:

    • Push to dev branch
    • Monitor action execution
    • Verify deployment

OrderCloud configuration

  1. Create Integration Event
  2. Set CustomImplementationUrl
  3. Configure HashKey
  4. Test integration

Project structure

Key components

  • CheckoutController.cs: API endpoints
  • CheckoutCommand.cs: Business logic
  • Startup.cs: Service configuration
  • AppSettings.cs: Environment settings
  • Xp.cs: Extended properties

Integration architecture

Provider integration

Interface-based design

  • IShippingRateCalculator: Shipping services
  • ITaxCalculator: Tax computation
  • IPaymentProcessor: Payment handling

Implementation approach

  • Provider-specific services
  • Interface implementation
  • Dependency injection
  • Easy provider switching

Available integrations

Source: OrderCloud Catalyst

Payment providers

VendorPackageVersion
StripeOrderCloud.Integrations.Payment.Stripev2.3.0
BlueSnapOrderCloud.Integrations.Payment.BlueSnapv2.3.0
CardConnectOrderCloud.Integrations.Payment.CardConnectv2.3.0

Shipping providers

VendorPackageVersion
EasyPostOrderCloud.Integrations.Shipping.EasyPostv2.3.0
FedexOrderCloud.Integrations.Shipping.Fedexv2.3.0
UPSOrderCloud.Integrations.Shipping.UPSv2.3.0

Tax providers

VendorPackageVersion
AvalaraOrderCloud.Integrations.Tax.Avalarav2.3.0
VertexOrderCloud.Integrations.Tax.Vertexv2.3.0
TaxJarOrderCloud.Integrations.Tax.TaxJarv2.3.0

Custom integration development

Implementation options

  • Create custom interface implementations
  • Maintain private implementations
  • Contribute to public packages
  • Extend existing integrations

Development guidelines

  • Follow interface contracts
  • Maintain security standards
  • Implement error handling
  • Add appropriate logging

Contribution process

See the Contributing integrations guide for:

  • Code standards
  • Testing requirements
  • Documentation needs
  • Submission process
If you have suggestions for improving this article, let us know!