HSRCPAY Documentation

Provider and Adapter Model

Public overview of provider catalog, config, adapter execution, and the confirm orchestrator.

In HSRC Pay, provider integration is not a plugin model deployed to production with a single JSON file. Catalog, method support, account provider configs, and confirm routing work together.

This page does not expose internal registry or credential details; it clarifies which concepts connect when reading the integration.

What Is a Provider?

A record for a bank, PSP, wallet, sandbox, or simulated provider. A record alone does not charge a payment: confirm requires payment method, suitable config, routing plan, and execution step.

Method and Config

ConceptShort meaning
ProviderSystem that can process payments (catalog record)
Provider methodSupported network, card type, country, etc.
Provider configCredential and rule set tied to an account; source of routing candidates
CapabilitiesFit signals such as 3DS, installments, currency

The merchant API has no adapter class names or internal registry lists. On confirm, optional routing_strategy narrows config or provider identifiers; read the result from payment.status, confirmResult, and charge records.

Execution Result (Adapter Level)

After confirm, the orchestrator summary roughly falls into one of these families:

ResultTypical reflection on Payment
SuccessSUCCEEDED or AUTHORIZED (if auto capture is off)
Additional step requiredREQUIRES_ACTION + redirect URL
Decline / errorCharge DECLINED or FAILED; payment mostly REQUIRES_PAYMENT_METHOD

Do not build UI or accounting from raw provider responses; rely on normalized status and webhooks.

Confirm Flow (High Level)

Sandbox Providers

The sandbox catalog is not a real bank or card network. The goal is to see lifecycle, 3DS, and decline behavior safely before production. Producing REQUIRES_ACTION when secure mode is enabled is a normal test outcome.

Public Documentation Boundary

  • Credentials, endpoint URLs, and internal mapping lists are not in the docs.
  • Full PAN/CVV or issuer datasets are not shared.
  • Promises such as "add a provider with YAML" are not part of this product narrative.

On this page