Concepts
payFURL is structured around a few key concepts.
Provider
A provider is a service that processes payments. This could be a credit card payment gateway (eg Stripe, Braintree), PayPal or a Buy Now Pay Later provider (eg Zip Money, Afterpay).
Environments
payFURL has two environments:
- Sandbox - for testing setup and configuration
- Production - to accept real payments
If you're using one of our server SDKs then you can just specify the environment on setup.
If you're using our REST API directly:
- Sandbox - https://sandbox-api.payfurl.com
- Production - https://api.payfurl.com
Transaction or Charge
A transaction or charge is a payment against a provider.
Payment Token
A payment token is a representation of payment details that have been securely converted to a token. You can use a payment token to create a transaction. Tokens are specific to a single provider. Each token can be used only once. To charge the same credit card multiple times, create a Customer with one or more Payment Methods.
Payment Method
A Payment method is something you can use to accept a payment with a Provider. This could be a credit card, or another payment method like PayPal.
Customer
A customer in payFURL represents a customer for your services. A customer can have a number of Payment Methods.
Secret Key
This is use for server to server authentication to the payFURL platform. This should never be shared with anyone else.
Public Key
This is use for client authentication to payFURL, typically used by the Client SDK.
Subscription
A subscription in payFURL represents a recurring payment plan for a customer. Subscriptions are used to automatically charge customers at regular intervals (e.g., daily, monthly) for a service or product. Each subscription is linked to a payment method, ensuring seamless and automated billing. payFURL also supports configuring retries for failed subscription payments. You can set the interval (e.g., hour, day), frequency, and maximum number of retries. This ensures that if a payment fails, it will be retried according to the specified policy, increasing the chances of successful payment processing.
Smart Routing
Smart Routing automatically selects the best payment provider for each transaction. There are two modes:
- Simple — selects the lowest-cost provider for the given amount and currency (least-cost routing).
- Success-Weighted — balances cost and historical approval rates using a configurable weight. Providers with higher success rates may be preferred even if they cost slightly more.
When Success-Weighted routing is enabled, you can configure:
- Cost vs Approval Weight — a value between 0.0 (pure cost) and 1.0 (pure approval rate). The default is 0.5 (balanced).
- Minimum Sample Threshold — the minimum number of transactions a provider must have before success rate data is used. Below this threshold, the system falls back to cost-only routing for that provider.
Smart Routing is configured per account under the Providers > Smart Routing page in the dashboard. See Smart Routing Configuration for setup details.
Vault
The Vault in payFURL is a secure storage system where card numbers are stored. To ensure the highest level of security, card numbers are encrypted using AWS Key Management Service (KMS). This encryption ensures that sensitive payment information is protected and complies with industry standards.
We also run key rotation regularly to further enhance security and minimize risks associated with long-term key usage.
The Vault is designed to securely tokenize and store card details, allowing you to process payments without directly handling sensitive card information. This reduces your PCI compliance scope and enhances the overall security of your payment processing system.