Overview
Payment API summary
Our FrontStream Payment API offers a robust set of endpoints designed to manage payment-related operations securely. It provides comprehensive tools for processing transactions—whether for donations to charity non-profit organizations or payments to for-profit merchants—along with fee calculation, charity data management, webhook notifications, and detailed transaction reporting for our Integrated Partners. This enables seamless integration with payment processing systems and other related platforms. Below is an overview of the key features and functionality supported by this API:
Authentication & Access Control:
Our Endpoints require an AccessToken to authenticate API requests and this token is provided after successful authentication through the /api/ClientSession endpoint.
1. Retrieve a ClientSession (POST /api/ClientSession)
Purpose: This endpoint is used to authenticate an application and generate an API AccessToken.
Responses:
200 OK: Successful authentication, returns an AccessToken.400 Bad Request: Authentication failure.
Request: The request body contains FrontStream assigned
Client Specificdata.
Create and configure Pay links
2. Create a Pay Link (POST /api/payLink)
Purpose: Returns a Pay link URL configured to your specific parameters that when ‘clicked’ will render our FrontStream Payment Form your customers can use to make payments.
Parameters: Requires an
AccessTokenand includes optional and required body parameters for successful Pay Link creation.Responses:
200 OK: Returns a Pay Link URL.400 Bad Request: If the Pay Link creation fails.404 Not Found: If no Pay Link are found.
Finding your favorite Charity
3. Charity Search (GET /api/CharitySearch)
Purpose: Looking to Donate to a particular Charity Organization? This allows searching for nonprofit charities based on various optional filters such as name, EIN, city, and state.
Parameters: Parameters include charity name, EIN, charity source, city, state, pagination options like
PageIndexandPageSize, and sorting options.Responses:
200 OK: Returns search results for charities.400 Bad Request: If the search request is malformed.404 Not Found: If no matching charities are found.
Tokenization
Tokenize Credit Cards or Bank Account data (POST
/api/tokenizeand/api/tokenizeAch)
Purpose: Securely tokenize cards and bank data and return newly created token to use to process subsequent payment transactions.
Parameters: Requires an
AccessTokenand includes optional and required body parameters for successful transactions.Responses:
201 Created: Returns a newly created token.400 Bad Request: If the token creation fails.
Make Payments
5. Make Payment (POST /api/payment or /api/paymentAch or /api/paymentToken)
Purpose: Initiates a payment transaction with card or bank data or newly created tokens.
Parameters: Requires an
AccessTokenand includes optional and required body parameters for successful transactions.Responses:
201 Created: Returns the details of the created payment.400 Bad Request: If the payment creation fails.
Help cover Fees
6. Fees Calculation (GET /api/fee)
Purpose: Used in our Non-Profit space to help cover any fees on Donations giving the option for all of a donation to go to a Charity. Calculates various fees based on transaction details, including transaction amount, source grouping, and other parameters like charity ID, card type, cover the fee flag, etc.
Parameters: Includes optional and required parameters like
Amount,TransactionSourceGroupId,PayFee, etc.Responses:
200 OK: Returns calculated fee details.400 Bad Request: If fee calculation fails.404 Not Found: If fees are not found.
Details: Detailed breakdown of fees such as card fees, commission rates, partner overrides, etc.
Transaction Reporting
7. Generate Transaction Report (POST /api/sourceTransactionsReport)
Purpose: Generates a report on transactions, filtered by various criteria.
Parameters: Requires an
AccessTokenand a request body containing the report filters.Responses:
200 OK: Returns the generated transactions report.400 Bad Request: If report generation fails.
And get Webhook Notifications
8. Set up and test Notifications for example - Notification Test (POST /api/notificationTest)
Purpose: Sends a test notification to an integration source API, useful for testing notification payloads.
Parameters: Requires
url(endpoint) andpayload(notification data).Responses:
200 OK: Successfully sent the notification.400 Bad Request: If the notification fails.
API Structure:
The API is designed with a set of resources organized by functional groups (e.g., Authentication, Charity Search, Payments, Token Payments, Fees, Reports, and Notifications).
It supports various HTTP methods like
GET,POST, and utilizes JSON for data exchange.
The FrontStream Payment API offers a complete set of tools for managing transactions, fees, charity data, and reporting, allowing for smooth integration with payment processing systems and other related platforms. Take the next step into our Quick Start guide.
Last updated
