# API & SDK

### **Payment Processing APIs and SDKs:**

1. **StreamPayments API**: This API serves as a core component for online and in-app payments. It facilitates the creation of payments using tokens from the Web3 Payments SDK or the In-App **Stream**Payments™ SDK. It also allows retrieval and processing of payments generated through other **Stream**Payments™ APIs.
2. **Refunds API**: Enables the refunding of payments made through any **Stream**Payments™ API or product.
3. **Web3 Payments SDK**: Offers customizable payment entry forms for websites, enhancing the online checkout experience. It returns secure payment tokens utilized in Payments API calls for payment creation.
4. **Checkout API**: Provides a customizable checkout experience, encompassing purchase details and a payment form. It creates payments, and if needed, payments can be retrieved later using the Payments API.
5. **In-App Payments SDK**: Designed for mobile applications on Android, iOS, Flutter, and React Native, this SDK captures payments within the app. It returns secure payment tokens for use in Payments API calls.
6. **Terminal API**: Tailored for in-person payments at the point of sale (Stream**POS**), where payments are processed on a Stream**Pay**™ Terminal. This API facilitates payment requests from Stream**POS**™ and Stream**Pay**™ applications.
7. **Reader SDK**: Intended for in-person payments using StreamPayments Reader within POS applications. It does not offer a UI but integrates seamlessly.
8. **Point of Sale API**: Works with the Stream**Pay**™ Reader, opening a **Stream**Payments UI within the Stream**POS™** application for payment processing.

### **Additional Payment Features:**

1. **Disputes API**: Manages disputes (chargebacks) arising when cardholders seek payment reversals through their issuing banks due to perceived invalid payments.
2. **Invoices API**: Allows the creation and management of invoices sent to buyers, streamlining payment collection.
3. **Cards API**: Stores credit or debit card information for future use as a payment source.
4. **Subscriptions API**: Enables the integration of subscription functionality, automating recurring charges for customers.
5. **Bank Accounts API**: Retrieves information about linked external bank accounts.
6. **Payouts API**: Provides details about fund transfers from seller **Stream**Payments™ accounts to linked bank accounts.
7. **Mobile Authorization API**: Accepts account credentials to generate authorization codes for initiating **Stream**Payment´s Stream**Pay**™ mobile solutions.
