Payment Gateway
Spreedly
API integration
Ship Payment Gateway features without building the integration. Full Spreedly API access via Proxy and 70+ MCP-ready tools for AI agents — extend models and mappings to fit your product.
Talk to usUse Cases
Why integrate with Spreedly
Common scenarios for SaaS companies building Spreedly integrations for their customers.
Embed multi-gateway subscription billing
Let your SaaS users run recurring charges through their own Spreedly vault so they can route payments across multiple gateways (Stripe, Adyen, Braintree) without you building each integration directly.
Unify payment reconciliation across gateways
Pull normalized transaction and gateway data from each customer's Spreedly account into your finance, accounting, or revenue analytics product without mapping disparate gateway schemas.
Automate card lifecycle for dunning workflows
Trigger account updater inquiries and network token lookups inside your billing or retention product to refresh expiring cards before charges run, reducing involuntary churn for your users.
Power secure payment forwarding for vertical SaaS
For travel, ticketing, or hospitality platforms, deliver vaulted card data from your customer's Spreedly account to third-party receivers (airlines, hotel PMS) without your product ever touching raw PCI data.
Enrich fraud and risk models with payment signals
Ingest protection events, 3DS authentication results, and payment method events from your customer's Spreedly into your fraud detection, risk scoring, or chargeback prevention SaaS.
What You Can Build
Ship these features with Truto + Spreedly
Concrete product features your team can ship faster by leveraging Truto’s Spreedly integration instead of building from scratch.
Multi-gateway purchase orchestration
Execute purchases, authorizations, captures, refunds, and voids through your customer's configured Spreedly gateways from inside your product.
Composer-based smart checkout flows
Ship a checkout module that bundles 3DS authentication, authorization, and capture into single composer purchase or verification requests.
Gateway provisioning and credential management
Let your users add, update, redact, or rotate gateway credentials directly from your UI by programmatically managing Spreedly gateway objects.
Account updater and card refresh automation
Schedule card refresher inquiries before billing cycles and surface network token status to keep payment methods current and authorization rates high.
Sub-merchant and merchant profile management
Provision sub-merchants and assign merchant profiles with custom 3DS and protection configurations for multi-tenant platforms and marketplaces.
Secure payment delivery to third-party receivers
Configure receivers and trigger payment method deliveries to forward tokenized card data to external endpoints like airlines, hotels, or fraud providers.
SuperAI
Spreedly AI agent tools
Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.
create_a_spreedly_export
Create a batch export of multiple Spreedly payment methods to an SFTP endpoint. The operation is asynchronous — the initial response has state "pending", and the final result is posted to callback_url. Returns: token, state, succeeded, message, payment_methods_submitted, url, and receiver. Required: payment_method_tokens, url, callback_url, body.
update_a_spreedly_transaction_by_id
Update a Spreedly transaction's status by syncing it with the gateway to resolve an ambiguous state (e.g., pending). Returns: token, succeeded, state, original_transaction_updated, message, gateway_token, transaction_type, created_at, updated_at, and original_transaction. Required: id. Each transaction supports a maximum of 200 inquiry requests; further requests are rejected.
create_a_spreedly_transaction
Sync a Spreedly transaction with its gateway by triggering a status inquiry, resolving the transaction's ambiguous state. Returns: token, succeeded, state, transaction_type, message, gateway_token, created_at, updated_at, and original_transaction. Required: id.
list_all_spreedly_transactions
List all Spreedly transactions in the authenticated environment, returned in ordered, paginated form. Returns per record: token, succeeded, state, transaction_type, amount, currency_code, gateway_token, gateway_transaction_id, created_at, updated_at, payment_method, and response. Rate-limited to 30 requests per minute per environment.
get_single_spreedly_transaction_by_id
Get a single Spreedly transaction by id. Returns: token, succeeded, state, transaction_type, amount, currency_code, gateway_token, gateway_transaction_id, created_at, updated_at, message, and payment_method. Required: id.
create_a_spreedly_gateway
Create a new gateway in Spreedly by specifying the gateway type and any required credentials. Returns the provisioned gateway record including token, gateway_type, name, state, payment_methods, characteristics, credentials, gateway_settings, sandbox, redacted, mode, created_at, and updated_at. Required: gateway_type.
list_all_spreedly_gateways
List all provisioned gateways in the Spreedly environment, ordered by creation date. Returns: token, gateway_type, name, state, payment_methods, characteristics, credentials, gateway_settings, sandbox, redacted, created_at, and updated_at per gateway record. Defaults to 20 records; maximum 100 per page.
update_a_spreedly_gateway_by_id
Update a provisioned Spreedly gateway by id (gateway token), for example to modify credentials or gateway settings. Returns the updated gateway record including token, gateway_type, name, state, credentials, gateway_settings, sandbox, redacted, created_at, and updated_at. Required: id.
get_single_spreedly_gateway_by_id
Get a single Spreedly gateway by id (gateway token). Returns the gateway record including token, gateway_type, name, state, payment_methods, characteristics, credentials, gateway_settings, sandbox, redacted, created_at, and updated_at. Required: id.
create_a_spreedly_card_refresher_inquiry
Create a Spreedly Just-in-Time card refresher inquiry for a Visa payment method, triggering a real-time card update check via Visa Account Updater (VAU). Returns: token, inquiry_status, message, error_code, region, payment_method_token, and transaction (nullable nested update result containing token, transaction_type, state, and payment_method). Required: payment_method_token, region.
list_all_spreedly_inquiries
List Spreedly Card Refresh inquiries in the current environment, ordered and paginated. Returns: token, inquiry_status, payment_method_token, succeeded, state, created_at, merchant_id, region, and card_refresh_event per inquiry. Max 100 per page.
get_single_spreedly_inquiry_by_id
Get a single Spreedly Card Refresh inquiry by its token. Returns: token, inquiry_status, payment_method_token, succeeded, state, created_at, merchant_id, region, and card_refresh_event. Required: id.
create_a_spreedly_certificate
Create a Spreedly certificate for use in secure payment method tokenization, XML digital signatures, or Apple Pay. Returns: token, cn, email_address, public_key, public_key_hash, csr, pem, created_at, updated_at. Required: certificate.
list_all_spreedly_certificates
List all Spreedly certificates in the authenticated environment in paginated, ordered results. Returns: token, level, algorithm, cn, email_address, public_key, public_key_hash, csr, pem, created_at, updated_at.
update_a_spreedly_certificate_by_id
Update an existing Spreedly SSL certificate record with a signed certificate value in PEM format. Returns: token, pem, public_key, public_key_hash, csr, cn, email_address, created_at, updated_at. Required: id, certificate.
create_a_spreedly_claim
Forward a claim to the Spreedly protection provider for a given payment method. Returns: message, status. Required: payment_method_token, amount, case_id, charge_id, currency, due_date, issue_date, order_id, processor_name, reason_code, reason_description, reason_type, status.
create_a_spreedly_access_secret
Create a new spreedly access secret in an environment. Returns: key, environment, name, access_secret, created_at. Required: name.
delete_a_spreedly_access_secret_by_id
Delete a spreedly access secret by id. Returns an empty 204 response on success. Required: id.
list_all_spreedly_access_secrets
List all spreedly access secrets in an environment. Returns: key, environment, name, access_secret, created_at.
get_single_spreedly_access_secret_by_id
Get a single spreedly access secret by id. Returns: key, environment, name, access_secret, created_at. Required: id.
create_a_spreedly_environment
Create a new Spreedly environment in your organization. Returns: key, name, organization_key, signing_secret, callback_url, smart_routing_enabled, au_enabled, allow_direct_api_payment_method_creation, payment_method_management_enabled, iframe_enhanced_security_enabled, default_gateway_token, retry. Required: name.
list_all_spreedly_environments
List all Spreedly environments in an organization, ordered and paginated. Returns: key, name, organization_key, signing_secret, callback_url, smart_routing_enabled, au_enabled, allow_direct_api_payment_method_creation, payment_method_management_enabled, iframe_enhanced_security_enabled, default_gateway_token, retry per environment.
update_a_spreedly_environment_by_id
Update a Spreedly environment by id. Returns: key, name, organization_key, signing_secret, callback_url, smart_routing_enabled, au_enabled, allow_direct_api_payment_method_creation, payment_method_management_enabled, iframe_enhanced_security_enabled, default_gateway_token, retry. Required: id.
get_single_spreedly_environment_by_id
Get a single Spreedly environment by id. Returns: key, name, organization_key, signing_secret, callback_url, smart_routing_enabled, au_enabled, allow_direct_api_payment_method_creation, payment_method_management_enabled, iframe_enhanced_security_enabled, default_gateway_token, retry. Required: id.
list_all_spreedly_events
List all Spreedly events in the authenticated environment, ordered by creation date. Returns: id, event_type, object_type, object_key, request_id, created_at. Optionally filter by event_type or change sort direction with order. Max 100 records per page.
get_single_spreedly_event_by_id
Get a single Spreedly event by id. Returns: id, event_type, object_type, object_key, request_id, created_at. Required: id.
list_all_spreedly_gateway_transactions
List transactions executed against a specific Spreedly gateway in paginated order. Returns: token, succeeded, amount, currency_code, gateway_transaction_id, message, payment_method, order_id, and additional transaction fields. Required: gateway_token.
create_a_spreedly_general_credit
Create a general credit transaction in Spreedly, adding funds to a credit card outside the scope of any previous reference transaction. Returns: token, succeeded, amount, currency_code, message, gateway_transaction_id, and payment_method details. Required: gateway_token, payment_method_token, amount, currency_code. Support for general credit depends on the gateway.
create_a_spreedly_merchant_profile
Create a Spreedly merchant profile to store SCA provider details for 3DS authentication. Returns: token, description, created_at, updated_at, sub_merchant_key, card_networks. At least one card network object (visa, mastercard, amex, discover, diners, jcb, dankort, union_pay, or cartes_bancaires) must be included in the request body.
list_all_spreedly_merchant_profiles
List all Spreedly merchant profiles in the environment in paginated order. Returns: token, description, created_at, updated_at, sub_merchant_key, card_networks. Defaults to 20 records per page; maximum is 100.
get_single_spreedly_merchant_profile_by_id
Get a single Spreedly merchant profile by its token. Returns: token, description, created_at, updated_at, sub_merchant_key, card_networks. Required: id.
update_a_spreedly_merchant_profile_by_id
Update the description of a Spreedly merchant profile by its token. Only the description field can be modified after creation. Returns: token, description, updated_at, created_at, sub_merchant_key, card_networks. Required: id.
get_single_spreedly_network_tokenization_card_metadatum_by_id
Retrieve network tokenization card metadata for a Spreedly payment method by its token. Returns: backgroundColor, foregroundColor, labelColor, contactEmail, contactNumber, privacyPolicyURL, termsAndConditionsURL, shortDescription, cardData, and issuerFlags. Response keys are determined and may be changed by the card network at any time and should not be considered idempotent. Required: id.
get_single_spreedly_network_token_by_id
Get the network token status for a Spreedly payment method. Returns: token_status indicating whether the network token is currently active or inactive. Required: payment_method_token.
list_all_spreedly_payment_method_events
List Spreedly payment method events for a specific payment method. Returns: token, event_type, state, created_at, payment_method_key, event_data, message, request_id. Required: payment_method_token. Optionally filter by event_type or control ordering; max 100 events per page.
get_single_spreedly_payment_method_event_by_id
Get a specific Spreedly payment method event by its token. Returns: token, event_type, state, created_at, payment_method_key, event_data, message, request_id. Required: id.
list_all_spreedly_payment_method_transactions
List transactions executed against a specific Spreedly payment method in ordered, paginated form. Returns: token, succeeded, amount, currency_code, message, order_id, payment_method, and gateway_transaction_id per transaction. Required: payment_method_token.
get_single_spreedly_payment_by_id
Get a Spreedly payment by its token. A payment represents a collection of transaction attempts made against one or more gateways during a Recover transaction. Returns: token, gateway_tokens, attempts, mode, custom_error_used, override_default_error_codes, created_at, updated_at, stats, and transactions. Required: id.
list_all_spreedly_protection_events
List all Spreedly protection events in the environment, ordered and paginated. Returns: token, state, succeeded, fraud_decision, created_at, updated_at, amount, currency_code, and email, along with full fraud check and 3DS authentication details. Max 100 records per page.
get_single_spreedly_protection_event_by_id
Get a single Spreedly protection check event by token. Returns: token, state, succeeded, fraud_decision, created_at, updated_at, amount, currency_code, email, ip, transaction_type, vendor_response, and full 3DS authentication details. Required: id.
create_a_spreedly_protection_provider
Create a Protection Provider on a spreedly Merchant Profile for use in authorize, purchase, and verify transactions. Returns: token, type, three_ds_enabled, created_at, updated_at, and registered per-card-brand details. Required: merchant_profile_token, merchant_profile_key, type, and at least one card type object (visa, mastercard, amex, discover, diners, jcb, dankort, union_pay, or cartes_bancaires).
get_single_spreedly_protection_provider_by_id
Get a spreedly Protection Provider by its token. Returns: token, type, three_ds_enabled, created_at, updated_at, and registered per-card-brand details (visa, mastercard, amex, discover, diners, jcb, dankort, union_pay, cartes_bancaires). Required: id.
create_a_spreedly_purchase
Create a purchase transaction in Spreedly by charging a payment method at a specified gateway. Returns: token, succeeded, message, amount, currency_code, gateway_transaction_id, response, and payment_method. Required: gateway_token, amount, currency_code, and one of payment_method_token, credit_card, bank_account, apple_pay, google_pay, or sca_authentication_token.
create_a_spreedly_receiver
Create a spreedly receiver for use in payment method distribution. Returns: token, receiver_type, state, hostnames, credentials, company_name, created_at, updated_at. Required: receiver_type.
list_all_spreedly_receivers
List all spreedly receivers in the authenticated environment in paginated, ordered fashion. Returns per receiver: token, receiver_type, state, hostnames, credentials, company_name, created_at, updated_at.
update_a_spreedly_receiver_by_id
Redact a spreedly receiver by id, stripping its sensitive credentials and making it inactive. Returns: token, receiver_type, state, hostnames, credentials, company_name, created_at, updated_at. Required: id.
get_single_spreedly_receiver_by_id
Get a single spreedly receiver by id. Returns: token, receiver_type, state, hostnames, credentials, company_name, created_at, updated_at. Required: id.
create_a_spreedly_sca_authentication
Create a Spreedly SCA (3DS2) authentication for a payment method and amount. Returns: token, succeeded, state, message, transaction_type, sca_provider_key, three_ds_version, flow_performed, ecommerce_indicator, authentication_value, authentication_response_status, directory_response_status. Required: transaction.payment_method_token, transaction.browser_info.
create_a_spreedly_sca_provider
Create a Spreedly SCA Provider on a given merchant profile for use in 3DS2 Global authentications. Returns: token, type, sandbox, created_at, updated_at, and per-brand card configuration objects (visa, mastercard, amex, discover). Required: merchant_profile_token, merchant_profile_key, type. At least one card type object (visa, mastercard, amex, or discover) must be included in the request body.
get_single_spreedly_sca_provider_by_id
Get a Spreedly SCA Provider by its token. Returns: token, type, sandbox, created_at, updated_at, and per-brand card configuration objects (visa, mastercard, amex, discover). Required: id.
create_a_spreedly_sub_merchant
Create a sub-merchant in Spreedly. Returns the created sub-merchant object including token, name, environment_key, organization_key, merchant_email, address, merchant_data, metadata, created_at, and updated_at. Required: name, environment_key.
list_all_spreedly_sub_merchants
List all sub-merchants in a Spreedly organization, returned in ordered, paginated form. Returns: token, name, environment_key, organization_key, merchant_email, address, merchant_data, created_at, updated_at per record.
get_single_spreedly_sub_merchant_by_id
Get a single Spreedly sub-merchant by its token. Returns: token, name, environment_key, organization_key, merchant_url, merchant_email, merchant_data, address, metadata, created_at, updated_at. Required: id.
update_a_spreedly_sub_merchant_by_id
Update an existing Spreedly sub-merchant by its token. Returns the updated sub-merchant object including token, name, environment_key, organization_key, merchant_email, address, merchant_data, metadata, created_at, and updated_at. Required: id.
list_all_spreedly_supported_gateways
List all payment gateways supported by Spreedly along with their properties, credentials, and capabilities. Returns: name, gateway_type, auth_modes, characteristics, payment_methods, supported_countries, supported_cardtypes, regions, homepage, company_name, display_api_url, gateway_settings, and gateway_specific_fields.
create_a_spreedly_gateway_redaction
Redact a Spreedly gateway by its gateway_token, permanently removing sensitive credentials from the environment and setting the gateway state to redacted. Returns the updated gateway object including token, gateway_type, state, description, sandbox, created_at, and updated_at. Required: gateway_token.
create_a_spreedly_gateway_retention
Retain a spreedly gateway to prevent it from being automatically redacted, marking it as permanently kept in the environment. Returns: token, gateway_type, description, sandbox. Required: gateway_token.
list_all_spreedly_supported_receivers
List all payment method distribution receivers supported by Spreedly. Returns: name, receiver_type, hostnames, company_name for each receiver. No authentication required.
create_a_spreedly_receiver_redaction
Redact a Spreedly receiver, permanently marking it as no longer available for payment method delivery. Returns the updated receiver object including token, state (set to `redacted`), receiver_type, company_name, hostnames, credentials, created_at, and updated_at. Required: receiver_token.
create_a_spreedly_certificate_generation
Generate a new X.509 certificate in Spreedly for use with receivers requiring WS-Security Binary Security Token authentication or Apple Pay payment processing. Returns the generated certificate object including its token, which can be referenced in Spreedly receiver template functions.
create_a_spreedly_signing_secret_regeneration
Regenerate the signing secret for a Spreedly environment; the previous signing secret is immediately invalidated and your application must be updated with the new value. Returns the updated environment object including key, signing_secret, name, organization_key, callback_url, smart_routing_enabled, and other environment settings. Required: environment_key.
create_a_spreedly_payment_method_retention
Retain a Spreedly payment method in the vault, preventing it from expiring or being automatically removed. Returns the resulting transaction object including token, transaction_type, state, succeeded, message, and created_at. Required: payment_method_token.
create_a_spreedly_payment_method_recach
Create a recache for a Spreedly payment method, re-submitting sensitive data (such as CVV) for an already-stored payment method token. Returns a transaction object including token, transaction_type, state, succeeded, message, created_at, and updated_at. Required: payment_method_token.
create_a_spreedly_payment_method_delivery
Create a payment method delivery in Spreedly, forwarding a tokenized payment method to a named receiver endpoint in real time. Returns: token, transaction_type, state, succeeded, message, created_at, updated_at, url, callback_url, receiver. Required: receiver_token.
create_a_spreedly_payment_method_export
Create a Spreedly batch payment method export job that asynchronously delivers card data to an SFTP receiver. Returns: token, state, succeeded, payment_methods_submitted, url, callback_url, and receiver. The initial response has state `pending`; the final transaction state is POSTed to callback_url when complete. Required: payment_method_tokens, url, callback_url, body.
list_all_spreedly_all_payment_method_events
List payment method events from Spreedly. Returns: token for each event record. Pagination is cursor-based; Truto advances the cursor automatically.
create_a_spreedly_store
Create a store transaction in spreedly to vault a payment method on a specific gateway. Returns the resulting transaction object including token, succeeded, transaction_type, state, network_transaction_id, and payment_method. Required: gateway_token, payment_method_token.
create_a_spreedly_authorization
Create a Spreedly authorization transaction against a gateway, reserving funds on a payment method without capturing them. Returns: token, transaction_type, succeeded, state, amount, currency_code. Required: gateway_token, payment_method_token, amount, currency_code.
create_a_spreedly_verification
Create a verification transaction against a Spreedly gateway. Returns: amount, currency. Required: gateway_token.
create_a_spreedly_reference_purchase
Create a reference purchase transaction in Spreedly, reusing the payment method from a previous successful transaction on a specified gateway. Returns: network_tokenization (provisioned, attempted, token_status, token_reference) and transaction_metadata. Required: gateway_token, amount.
create_a_spreedly_capture
Create a capture transaction in Spreedly to collect funds from a previously authorized transaction. Returns: token, succeeded, state, transaction_type, amount, currency_code, created_at, message. Required: transaction_token.
create_a_spreedly_refund
Create a credit (refund) against a previously captured transaction in Spreedly. Returns the resulting transaction including token, transaction_type, succeeded, message, amount, currency_code, and payment_method details. Required: transaction_token.
create_a_spreedly_void
Create a void transaction in Spreedly against an existing transaction. Returns the resulting void transaction object including token, transaction_type, succeeded, state, and message. Required: transaction_token.
create_a_spreedly_transaction_completion
Complete a pending spreedly transaction by its transaction_token, moving it from an intermediate gateway state to a final state. The transaction must not already be in a terminal state (succeeded, failed, or gateway_setup_failed). Returns the completed transaction object including token, state, and message. Required: transaction_token.
create_a_spreedly_transaction_confirmation
Confirm a pending Spreedly transaction to finalize payment processing. Returns the updated transaction object including token, transaction_type, state, and succeeded. Required: transaction_token.
create_a_spreedly_composer_purchase
Create a Spreedly Composer purchase transaction that packages Authorize and Capture into a single request routed through the specified workflow. Returns the transaction including attempt_3dsecure and a full payment_method object with token, card_type, last_four_digits, fingerprint, and extensive billing and shipping details. Required: workflow_token, payment_method_token, amount, currency_code.
create_a_spreedly_composer_authorization
Create a Spreedly Composer authorization by routing an authorization request to the gateway configured in a given workflow. Returns: attempt_3dsecure and payment_method (including token, card_type, last_four_digits, first_six_digits, full_name, and billing/shipping address details). Required: workflow_token.
create_a_spreedly_composer_verification
Verify whether a Spreedly payment method is a chargeable card using a Composer workflow. Returns: token, attempt_3dsecure, and payment_method (including card_type, last_four_digits, storage_state, and billing address fields). Required: workflow_token, payment_method_token.
Why Truto
Why use Truto’s MCP server for Spreedly
Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 500+ integrations.
Auto-generated, always up to date
Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.
Fine-grained access control
Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.
Multi-tenant by design
Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.
Works with every MCP client
Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.
Built-in auth, rate limits, and error handling
Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.
Expiring and auditable servers
Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.
How It Works
From zero to integrated
Go live with Spreedly in under an hour. No boilerplate, no maintenance burden.
Link your customer’s Spreedly account
Use Truto’s frontend SDK to connect your customer’s Spreedly account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.
We handle authentication
Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.
Call our API, we call Spreedly
Truto’s Proxy API is a 1-to-1 mapping of the Spreedly API. You call us, we call Spreedly, and pass the response back in the same cycle.
Unified response format
Every response follows a single format across all integrations. We translate Spreedly’s pagination into unified cursor-based pagination. Data is always in the result attribute.
FAQs
Common questions about Spreedly on Truto
Authentication, rate limits, data freshness, and everything else you need to know before you integrate.
How do end users authenticate their Spreedly account?
Spreedly uses API credentials (environment key and access secret) scoped to a specific environment. Your users provide these credentials once during connection, and Truto manages the auth header injection on every request.
Which Spreedly operations are supported out of the box?
Truto exposes the full transaction lifecycle (purchase, authorize, capture, refund, void, verify, store), gateway and receiver management, sub-merchants and merchant profiles, certificates, access secrets, environments, card refresher inquiries, network tokens, SCA, protection events, and exports.
Can we pull historical transactions for reconciliation?
Yes. You can list transactions, gateway transactions, payment method transactions, events, payment method events, and protection events. For bulk historical pulls, you can also create a Spreedly export to retrieve large datasets asynchronously.
How does Truto handle pagination across Spreedly list endpoints?
Spreedly uses cursor-based pagination via since_token on its list endpoints. Truto normalizes this so you can iterate through transactions, events, gateways, and other collections without managing cursors manually.
Does Truto support Spreedly's sandbox and production environments?
Yes. Spreedly credentials are environment-scoped, so your users can connect either their sandbox or production environment. You can also list and create environments programmatically via the supported environment endpoints.
Are we ever exposed to raw PCI card data?
No. All sensitive card data stays inside Spreedly's PCI-compliant vault. Your product and Truto only ever handle payment method tokens, and deliveries to third-party receivers are executed entirely server-side by Spreedly.
From the Blog
Spreedly integration guides
Deep dives, architecture guides, and practical tutorials for building Spreedly integrations.
Spreedly
Get Spreedly integrated into your app
Our team understands what it takes to make a Spreedly integration successful. A short, crisp 30 minute call with folks who understand the problem.