Payments

Accept payments through your own payment service provider

Overview

Billingrails is provider agnostic. You can connect your existing payment service provider and route transactions through the provider that best fits each payment—whether by geography, currency, or failover.

Bring your own key (BYOK)

Billingrails supports payments through a Bring Your Own Key (BYOK) model. You connect your own payment service provider and maintain full control of your funds—money never touches our servers.

Security

Your payment provider credentials are securely encrypted at rest using AES-256-GCM encryption. Only your Billingrails instance can decrypt and use these credentials to process payments on your behalf.

Setup process

To start accepting payments:

  1. Get your API keys from your payment service provider (Stripe, Paystack, etc.)
  2. Navigate to Settings → Integrations in your Billingrails dashboard
  3. Add a payment integration and enter your provider credentials
  4. Test the connection to verify everything works correctly

Once configured, Billingrails can use your payment provider to process transactions while keeping your funds flowing directly to your account.

Integrations

Connect your Billingrails application to payment providers to process customer payments. Billingrails currently supports the following payment providers, with plans to add more in the future.

Payment routing

Payment routing lets you define rules that determine which payment provider handles each transaction. This is useful for:

  • Geographic optimization: Route payments to local providers for better conversion
  • Currency handling: Direct transactions to providers with the best currency support
  • Load balancing: Distribute traffic across multiple providers
  • Failover: Automatically switch to backup providers if one fails

How routing works

  1. When a payment is initiated, Billingrails evaluates your routing rules in priority order
  2. The first rule whose conditions match is selected
  3. The payment is processed through that rule's assigned provider
  4. If no rules match, the default rule is used

Rule conditions

You can route payments based on:

  • Currency
  • Customer location
  • Transaction type (e.g. one-time or recurring)
  • Payment amount

Health checks

Enable health checks to automatically skip providers that recently failed, ensuring higher success rates and better customer experience.

On this page