SpareSpare Docs
GuidesAPI Reference

Open Banking

What open banking means in the Spare platform and how consent drives access.

Open banking lets regulated third parties initiate payments and access account data with a payer's explicit consent. Spare is the API layer between your application and licensed financial institutions, so you don't build bank-by-bank integrations.

In this guide

  • What open banking means for payment initiation
  • The roles of your app, Spare, and the payer's bank
  • Core platform objects you will work with
  • How tenant and provider selection works

What is open banking?

In traditional integrations, each bank exposes different APIs, auth flows, and certificate requirements. Open banking standardizes how a payer authorizes a third party (you) to act on their behalf at their bank.

For payment initiation, the payer:

  1. Sees what they are approving (amount, beneficiary, schedule if applicable)
  2. Authenticates at their bank
  3. Grants consent for that specific payment or mandate

Spare runs this flow and gives you one API regardless of which bank the payer selects.

Platform architecture

Your application

Your backend holds API credentials (appId, apiKey) and calls Spare server-to-server. Your frontend (or Spare Link) collects payer authorization, never your API key.

Spare API

Handles provider routing, consent records, payment execution, mandate scheduling, and status APIs. You interact through REST endpoints today; official SDKs are coming soon (under review).

The payer's bank

The licensed financial institution (LFI) where the payer holds their account. Authorization always happens at the bank; Spare does not store payer passwords.

Core objects

Understanding these objects upfront makes every other guide easier to follow.

ObjectWhat it representsCreated when
ProviderA bank or institution available in your tenantListed via API, you do not create providers
Payment requestYour intent to collect money (amount, beneficiary, type)POST /payment-requests
Payment consentPayer authorization linked to a requestCreated from a payment request or via Spare Link
PaymentA settled or in-flight bank paymentAfter consent is authorized and execution runs
MandatePermission for recurring or scheduled paymentsCreated as part of multi-payment / schedule flows
Bank accountYour creditor account that receives fundsPOST /payment/bank-account

Payment initiation vs account information

Spare's public API focuses on payment initiation (PIS), moving money with consent. Account information services (balances, transactions) may be available depending on your product configuration and region. These docs cover PIS flows.

Regional tenants

Pass the tenant header (or SDK tenant field) for your operating region, for example UAE. The tenant determines:

  • Available providers and payment types
  • Currency and validation rules (e.g. AED in UAE)
  • Regulatory context applied transparently through the API

You do not need separate API hosts per country beyond sandbox vs production.

Authorization models

Two patterns are supported for collecting payer approval:

PatternBest forDocs
Direct API consentFull control over redirects and brandingPayment flow
Spare LinkFaster integration with hosted bank UISpare Link

Both produce the same underlying consent and payment objects.

What Spare handles for you

ConcernSpare provides
Bank connectivityProvider directory and routing to LFIs
Consent storageDurable consent records with status and expiry
ExecutionPayment submission after authorization
SecurityToken-based API auth, signed payloads where required
ObservabilityStatus APIs and webhooks

Onboarding checklist

Before your first sandbox payment:

  1. Obtain sandbox appId, apiKey, and tenant
  2. Read Payment flow and Consent lifecycle
  3. Register a creditor bank account
  4. Complete the Quickstart

Key takeaways

  • Open banking means payer-authorized access, consent is the legal and technical gate for every payment.
  • You work with payment requests, consents, and payments, not raw bank APIs.
  • Choose direct API or Spare Link for authorization; the domain model is the same.

On this page