# Overview of Payments API Calls

HTML version: [Overview of Payments API Calls](https://support.gladstonesoftware.cloud/api-integrations/overview-of-payments-api-calls)

## Problem
Users need an overview of the available Payments API methods and their purposes.

## Resolution

1. **AddBillingAccount(obj request):**  
   Insert or update a member’s billing account.

2. **AddSubHolderBillingAccount(obj request):**  
   Insert, update, or delete a sub-member’s billing account.

3. **CreditMember(obj request):**  
   Credit specified sales and payments back to a member’s account.

4. **GetMemberBillingAccountSummary(obj request):**  
   Retrieve information about a member’s billing account.

5. **GetMembersInvoiceDetails(obj request):**  
   Retrieve member invoices based on search criteria.

6. **GetNextOnlineAuthID (string paymentSiteID):**  
   Get the next sequential ID to use in the PayInvoice method.

7. **GetUnpaidDebt (int[] memberIds, bool includeLinkedMembers):**  
   Return all unpaid invoices for the selected member IDs and, if required, their linked members. The invoices can be marked as paid using PayInvoice.

8. **PayInvoice (int salesInvoiceId, int memberId, int onlineAuthId, string paymentSiteId):**  
   Mark a Plus2 sales invoice as paid for a member.  
   *Note: This method is due to be deprecated in favour of PayInvoices().*

9. **PayInvoices (int[] salesInvoiceIds, int memberId, int onlineAuthId, string paymentSiteId):**  
   Mark a list of Plus2 sales invoices as paid for a member in one call.

10. **PrepareSalesInvicePayment(obj request):**  
    Integrate with Payment Manager. This returns a URL within Payment Manager for completing payment of sales invoices.

11. **RetrieveProductPrice(obj request):**  
    Get the prices for specified products for a given member.

12. **SellProductToMember(obj request):**  
    Raise a sale for specified products for a given member.

13. **TopUpMembersBillingAccount(obj request):**  
    Apply top-ups to a member’s cashless billing account.

## Notes
- The `PayInvoice` method is planned for deprecation and will be replaced by `PayInvoices`.
