> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://beta-docs.payabli.com/api-reference/subscription/get-subscription/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://beta-docs.payabli.com/_mcp/server. # Get subscription GET https://api-sandbox.payabli.com/api/Subscription/{subId} Retrieves a single subscription's details. Reference: https://beta-docs.payabli.com/api-reference/subscription/get-subscription ## Authentication - `requestToken` header (required) — API Key authentication via header ## Servers - `https://api-sandbox.payabli.com/api` (Sandbox, default) - `https://api.payabli.com/api` (Production) ## Request ### Path parameters - `subId` (integer, required) — The subscription ID. ## Response ### 200 Success - `CreatedAt` (datetime, optional) — Timestamp of when the subscription ws created, in UTC. - `Customer` (QueryTransactionPayorData, optional) - `EndDate` (datetime, optional) — The subscription's end date. - `EntrypageId` (long, optional) — If applicable, the internal reference ID to the payment page capturing the payment. - `ExternalPaypointID` (string, optional) — A custom identifier for the paypoint, if applicable. Like `entrypoint` is the Payabli identifier for the merchant, `externalPaypointId` is a custom field you can use to include the merchant's ID from your own systems. - `FeeAmount` (double, optional) — Fee applied to the subscription. - `Frequency` (string, optional) — The subscription's frequency. - `IdSub` (long, optional) — The subscription's ID. - `InvoiceData` (BillData, optional) - `LastRun` (datetime, optional) — The last time the subscription was processed. - `LastUpdated` (datetime, optional) — The last date and time the subscription was updated. - `LeftCycles` (integer, optional) — The number of cycles the subscription has left. - `Method` (string, optional) — The subscription's payment method. - `NetAmount` (double, optional) — The subscription amount, minus any fees. - `NextDate` (datetime, optional) — The next date the subscription will be processed. - `ParentOrgName` (string, optional) — The name of the parent organization. - `PaymentData` (QueryPaymentData, optional) - `PaypointDbaname` (string, optional) — The paypoint's DBA name. - `PaypointEntryname` (string, optional) — The paypoint's entryname. - `PaypointId` (long, optional) — The paypoint's ID. Note that this is different than the entryname. - `PaypointLegalname` (string, optional) — The paypoint's legal name. - `PlanId` (integer, optional) — Payment plan ID. - `Source` (string, optional) — Custom identifier to indicate the transaction or request source. - `StartDate` (datetime, optional) — The subscription start date. - `SubEvents` (list of GeneralEvents, optional) — Events associated with the subscription. - `SubStatus` (integer, optional) — The subscription's status. - 0: Paused - 1: Active - `TotalAmount` (double, optional) — The subscription amount, including any fees. - `TotalCycles` (integer, optional) — The total number of cycles the subscription is set to run. - `UntilCancelled` (boolean, optional) — When `true`, the subscription has no explicit end date and will run until canceled. ## Errors ### 400 Bad Request Error Bad request/ invalid data - `any` ### 401 Unauthorized Error Unauthorized request. - `any` ### 500 Internal Server Error Internal API Error - `any` ### 503 Service Unavailable Error Database connection error - `isSuccess` (boolean, optional) — Boolean indicating whether the operation was successful. A `true` value indicates success. A `false` value indicates failure. - `responseData` (map from string to any, optional) — The object containing the response data. - `responseText` (string, optional) — Response text for operation: 'Success' or 'Declined'. ## Types ### QueryTransactionPayorData - `AdditionalData` (string, optional) — Custom dictionary of key:value pairs. You can use this field to store any data related to the object or for your system. Example usage: ```json { "additionalData": { "key1": "value1", "key2": "value2", "key3": "value3" } } ``` - `BillingAddress1` (string, optional) — Customer's billing address. - `BillingAddress2` (string, optional) — Additional line for Customer's billing address. - `BillingCity` (string, optional) — Customer's billing city. - `BillingCountry` (string, optional) — Customer's billing country. - `BillingEmail` (string, optional) — Customer's email address. - `BillingPhone` (string, optional) — Customer's phone number. - `BillingState` (string, optional) — Customer's billing state. Must be 2-letter state code for address in US. - `BillingZip` (string, optional) — Customer's billing ZIP code. - `CompanyName` (string, optional) — Customer's company name. - `CreatedAt` (datetime, optional) — Timestamp of when record was created, in UTC. - `customerId` (long, optional) — The Payabli-generated unique ID for the customer. - `CustomerId` (long, optional) — The Payabli-generated unique ID for the customer. - `CustomerNumber` (string, optional) — User-provided unique identifier for the customer. This is typically the customer ID from your own system. - `customerStatus` (integer, optional) — Customer Status. Possible values: - `-99` Deleted - `0` Inactive - `1` Active - `85` Locked (typically due to multiple failed login attempts) - `FirstName` (string, optional) — Customer/Payor first name. - `Identifiers` (list of any, optional) — Array of field names to be used as identifiers. - `LastName` (string, optional) — Customer/Payor last name. - `ShippingAddress1` (string, optional) — The shipping address. - `ShippingAddress2` (string, optional) — Additional line for shipping address. - `ShippingCity` (string, optional) — Shipping city. - `ShippingCountry` (string, optional) — Shipping address country. - `ShippingState` (string, optional) — Shipping state or province. - `ShippingZip` (string, optional) — Shipping ZIP code. For Pay In functions, this field supports 5-digit and 9-digit ZIP codes and alphanumeric Canadian postal codes. For example: "37615-1234" or "37615". ### BillData - `AdditionalData` (string, optional) — Custom dictionary of key:value pairs. You can use this field to store any data related to the object or for your system. Example usage: ```json { "additionalData": { "key1": "value1", "key2": "value2", "key3": "value3" } } ``` - `attachments` (list of FileContent, optional) — Array of `fileContent` objects with attached documents. Max upload size is 30 MB. - `company` (string, optional) — Company name of the recipient of the invoice. - `discount` (double, optional) — Discount applied to the invoice. - `dutyAmount` (double, optional) — Duty amount. - `firstName` (string, optional) — First name of the recipient of the invoice. - `freightAmount` (double, optional) — Freight/shipping amount. - `frequency` (enum, optional) — Frequency of scheduled invoice. - Allowed values: `one-time`, `weekly`, `every2weeks`, `every6months`, `monthly`, `every3months`, `annually` - `invoiceAmount` (double, optional) — Invoice total amount. - `invoiceDate` (date, optional) — Invoice date in any of the accepted formats: YYYY-MM-DD, MM/DD/YYYY. - `invoiceDueDate` (date, optional) — Invoice due date in one of the accepted formats: YYYY-MM-DD, MM/DD/YYYY. - `invoiceEndDate` (date, optional) — Indicate the date to finish a scheduled invoice cycle (`invoiceType`` = 1) in any of the accepted formats: YYYY-MM-DD, MM/DD/YYYY. - `invoiceNumber` (string, optional) — Invoice number. Identifies the invoice under a paypoint. - `invoiceStatus` (integer, optional) — Status for invoice. The accepted status values are: - 0 draft - 1 active - 2 partially paid - 4 paid/complete - 99 cancelled - `invoiceType` (integer, optional) — Type of invoice. Only `0` for one-time invoices is currently supported. - `items` (list of BillItem, optional) — Array of line items included in the invoice. - `lastName` (string, optional) — Last name of the recipient of the invoice. - `notes` (string, optional) — Notes included in the invoice. - `paymentTerms` (enum, optional) — Payment terms for invoice. If no terms are defined, then reponse data for this field defaults to `N30`. - Allowed values: `PIA`, `CIA`, `UR`, `NET10`, `NET20`, `NET30`, `NET45`, `NET60`, `NET90`, `EOM`, `MFI`, `5MFI`, `10MFI`, `15MFI`, `20MFI`, `2/10NET30`, `UF`, `10UF`, `20UF`, `25UF`, `50UF` - `purchaseOrder` (string, optional) — Purchase order number. - `shippingAddress1` (string, optional) — The shipping address. - `shippingAddress2` (string, optional) — Additional line for shipping address. - `shippingCity` (string, optional) — Shipping city. - `shippingCountry` (string, optional) — Shipping address country. - `shippingEmail` (string, optional) — Shipping recipient's contact email address. - `shippingFromZip` (string, optional) — Sender shipping ZIP code. - `shippingPhone` (string, optional) — Recipient phone number. - `shippingState` (string, optional) — Shipping state or province. - `shippingZip` (string, optional) — Shipping ZIP code. For Pay In functions, this field supports 5-digit and 9-digit ZIP codes and alphanumeric Canadian postal codes. For example: "37615-1234" or "37615". - `summaryCommodityCode` (string, optional) — Commodity code. - `tax` (double, optional) — Tax rate in percent applied to the invoice. - `termsConditions` (string, optional) — Custom terms and conditions included in the invoice. ### QueryPaymentData - `AccountExp` (string, optional) — Expiration date of card used in transaction. - `accountId` (string, optional) — Custom identifier for payment connector. - `AccountType` (string, optional) — Bank account type or card brand. - `AccountZip` (string, optional) — ZIP code for card used in transaction. - `binData` (BinData, optional) — Object containing information related to the card. This object is `null` unless the payment method is card. If the payment method is Apple Pay, the binData will be related to the DPAN (device primary account number), not the card connected to Apple Pay. - `HolderName` (string, optional) — Account holder name for the method. - `Initiator` (string, optional) — **Strongly recommended** The cardholder-initiated transaction (CIT) or merchant-initiated transaction (MIT) indicator for the transaction. If you don't specify a value, Payabli defaults to `merchant`. Available values: - `payor`: For cardholder-initiated transactions - `merchant`: For merchant-initiated transactions See [Understanding CIT and MIT Indicators](/guides/money-in-cit-mit) for more information. - `MaskedAccount` (string, optional) — Masked card or bank account used in transaction. In the case of Apple Pay, this is a masked DPAN (device primary account number). - `orderDescription` (string, optional) — Text description of the transaction. - `paymentDetails` (PaymentDetail, optional) — Details about the payment. - `Sequence` (string, optional) — The order of the transaction for cardholder-initiated transaction (CIT) and merchant-initiated transaction (MIT) purposes. This field is automatically detected and populated by Payabli. Available values: - `first`: The first use of the payment method. This is almost always a cardholder-initiated transaction. - `subsequent`: For merchant-initiated transactions after the first use of the payment method. See [Understanding CIT and MIT Indicators](/guides/money-in-cit-mit) for more information. - `SignatureData` (string, optional) - `StoredId` (string, optional) — Identifier of stored payment method used in transaction. - `StoredMethodUsageType` (string, optional) — **Strongly recommended** The usage type for the stored method, used for merchant-initiated transactions (MIT). If you don't specify a value, Payabli defaults to `unscheduled`. Available values: - `unscheduled`: This type is used for transactions that are one-time or otherwise not pre-scheduled. - `subscription`: This type is used for subscription payments. For example, monthly rental fees or ongoing service subscriptions. - `recurring`: This type is used for recurring payments that occur per a set plan. For example, splitting an HOA special assessment over 6 monthly payments. See [Understanding CIT and MIT Indicators](/guides/money-in-cit-mit) for more information. ### GeneralEvents - `description` (string, optional) — Event description. - `eventTime` (datetime, optional) — Event timestamp, in UTC. - `extraData` (map from string to any, optional) — Extra data. - `refData` (string, optional) — Reference data. - `source` (string, optional) — The event source. ### FileContent Contains details about a file. See See [fileObject Object Model](/api-reference/schemas/filecontent) for a complete reference. Max upload size is 30 MB. - `fContent` (string, optional) — Content of file, Base64-encoded Ignored if furl is specified. Max upload size is 30 MB. - `filename` (string, optional) — The name of the attached file. - `ftype` (enum, optional) — The MIME type of the file (if content is provided) - Allowed values: `pdf`, `doc`, `docx`, `jpg`, `jpeg`, `png`, `gif`, `txt` - `furl` (string, optional) — Optional url provided to show or download the file remotely ### BillItem - `itemCost` (double, required) — Item or product price per unit. - `itemCategories` (list of string, optional) — Array of tags classifying item or product. - `itemCommodityCode` (string, optional) — Item or product commodity code. Max length of 250 characters. - `itemDescription` (string, optional) — Item or product description. Max length of 250 characters. - `itemMode` (integer, optional) — Internal class of item or product: value '0' is only for invoices , '1' for bills and, '2' common for both. - `itemProductCode` (string, optional) — Item or product code. Max length of 250 characters. - `itemProductName` (string, optional) — Item or product name. Max length of 250 characters. - `itemQty` (integer, optional) — Quantity of item or product. - `itemTaxAmount` (double, optional) — Tax amount applied to item or product. - `itemTaxRate` (double, optional) — Tax rate applied to item or product. - `itemTotalAmount` (double, optional) — Total amount in item or product. - `itemUnitOfMeasure` (string, optional) — Unit of measurement. Max length of 100 characters. ### BinData Object containing information related to the card. This object is `null` unless the payment method is card. If the payment method is Apple Pay, the binData will be related to the DPAN (device primary account number), not the card connected to Apple Pay. - `binCardBrand` (string, optional) — The card brand. For example, Visa, Mastercard, American Express, Discover. - `binCardCategory` (string, optional) — The category of the card, which indicates the card product. For example: Standard, Gold, Platinum, etc. The binCardCategory for prepaid cards is marked `PREPAID`. - `binCardIssuer` (string, optional) — The name of the financial institution that issued the card. - `binCardIssuerCountry` (string, optional) — The issuing financial institution's country name. - `binCardIssuerCountryCodeA2` (string, optional) — The issuing financial institution's two-character ISO country code. See [this resource](https://www.iso.org/obp/ui/#search) for a list of codes. - `binCardIssuerCountryNumber` (double, optional) — The issuing financial institution's ISO standard numeric country code. See [this resource](https://www.iso.org/obp/ui/#search) for a list of codes. - `binCardType` (string, optional) — The type of card: Credit or Debit. - `binMatchedLength` (double, optional) — The number of characters from the beginning of the card number that were matched against a Bank Identification Number (BIN) or the Card Range table. ### PaymentDetail Details about the payment. - `totalAmount` (double, required) — Total amount to be charged. If a service fee is sent, then this amount should include the service fee." - `categories` (list of PaymentCategories, optional) — Array of payment categories/line items describing the amount to be paid **Note**: These categories are for information only and are not validated against the total amount provided. - `checkImage` (map from string to any, optional) — Object containing image of paper check. - `checkNumber` (string, optional) — A check number to be used in the ach transaction. **Required** for payment method = 'check'. - `currency` (string, optional) — Currency code ISO-4217. If not code is provided the currency in the paypoint setting is taken. Default is **USD**. - `serviceFee` (double, optional) — Service fee to be deducted from the total amount. This amount must be a number, percentages aren't accepted. If you are using a percentage-based fee schedule, you must calculate the value manually. - `splitFunding` (list of SplitFundingContent, optional) — Split funding instructions for the transaction. See [Split a Transaction](/developer-guides/money-in-split-funding) for more. ### PaymentCategories - `amount` (double, required) — Price/cost per unit of item or category. - `label` (string, required) — Name of item or category. - `description` (string, optional) — Description of item or category - `qty` (integer, optional, default: 1) — Quatity of item or category ### SplitFundingContent - `accountId` (string, optional) — The accountId for the account the split should be sent to. - `amount` (double, optional) — Amount from the transaction to sent to this recipient. - `description` (string, optional) — A description for the split. - `recipientEntryPoint` (string, optional) — The entrypoint the split should be sent to. ## Examples **Response** ```json { "CreatedAt": "2022-07-01T15:00:01Z", "Customer": { "AdditionalData": "AdditionalData", "BillingAddress1": "1111 West 1st Street", "BillingAddress2": "Suite 200", "BillingCity": "Miami", "BillingCountry": "US", "BillingEmail": "example@email.com", "BillingPhone": "5555555555", "BillingState": "FL", "BillingZip": "45567", "CompanyName": "Sunshine LLC", "CreatedAt": "2022-07-01T15:00:01Z", "customerId": 4440, "CustomerId": 4440, "CustomerNumber": "3456-7645A", "customerStatus": 1, "FirstName": "John", "Identifiers": [ "\\\"firstname\\\"", "\\\"lastname\\\"", "\\\"email\\\"", "\\\"customId\\\"" ], "LastName": "Doe", "ShippingAddress1": "123 Walnut St", "ShippingAddress2": "STE 900", "ShippingCity": "Johnson City", "ShippingCountry": "US", "ShippingState": "TN", "ShippingZip": "37619" }, "EndDate": "2025-10-19T00:00:00Z", "EntrypageId": 0, "ExternalPaypointID": "Paypoint-100", "FeeAmount": 3, "Frequency": "monthly", "IdSub": 396, "InvoiceData": { "AdditionalData": "AdditionalData", "attachments": [ {} ], "company": "ACME, INC", "discount": 10, "dutyAmount": 0, "firstName": "Chad", "freightAmount": 10, "frequency": "one-time", "invoiceAmount": 105, "invoiceDate": "2025-07-01", "invoiceDueDate": "2025-07-01", "invoiceEndDate": "2025-07-01", "invoiceNumber": "INV-2345", "invoiceStatus": 1, "invoiceType": 0, "items": [ { "itemCost": 5, "itemProductName": "Materials deposit", "itemQty": 1 } ], "lastName": "Mercia", "notes": "Example notes.", "paymentTerms": "PIA", "purchaseOrder": "PO-345", "shippingAddress1": "123 Walnut St", "shippingAddress2": "STE 900", "shippingCity": "Johnson City", "shippingCountry": "US", "shippingEmail": "example@email.com", "shippingFromZip": "30040", "shippingPhone": "5555555555", "shippingState": "TN", "shippingZip": "37619", "summaryCommodityCode": "501718", "tax": 2.05, "termsConditions": "Must be paid before work scheduled." }, "LastRun": "2025-10-19T00:00:00Z", "LastUpdated": "2022-07-01T15:00:01Z", "LeftCycles": 15, "Method": "card", "NetAmount": 3762.87, "NextDate": "2025-10-19T00:00:00Z", "ParentOrgName": "PropertyManager Pro", "PaymentData": { "AccountExp": "11/29", "accountId": "accountId", "AccountType": "visa", "AccountZip": "90210", "binData": { "binCardBrand": "Visa", "binCardCategory": "PLATINUM", "binCardIssuer": "Bank of Example", "binCardIssuerCountry": "United States", "binCardIssuerCountryCodeA2": "US", "binCardIssuerCountryNumber": 840, "binCardType": "Credit", "binMatchedLength": 6 }, "HolderName": "Chad Mercia", "Initiator": "payor", "MaskedAccount": "4XXXXXXXX1111", "orderDescription": "Depost for materials for 123 Walnut St", "paymentDetails": { "totalAmount": 100, "categories": [ { "amount": 1000, "label": "Deposit" } ], "checkImage": { "key": "value" }, "checkNumber": "107", "currency": "USD", "serviceFee": 0, "splitFunding": [ {} ] }, "Sequence": "subsequent", "SignatureData": "SignatureData", "StoredId": "1ec55af9-7b5a-4ff0-81ed-c12d2f95e135-4440", "StoredMethodUsageType": "subscription" }, "PaypointDbaname": "Sunshine Gutters", "PaypointEntryname": "d193cf9a46", "PaypointId": 255, "PaypointLegalname": "Sunshine Services, LLC", "PlanId": 0, "Source": "api", "StartDate": "2025-10-19T00:00:00Z", "SubEvents": [ { "description": "TransferCreated", "eventTime": "2023-07-05T22:31:06Z", "extraData": { "key": "value" }, "refData": "refData", "source": "api" } ], "SubStatus": 1, "TotalAmount": 103, "TotalCycles": 24, "UntilCancelled": true } ``` **SDK Code** ```python GetSubscription import requests url = "https://api-sandbox.payabli.com/api/Subscription/263" headers = {"requestToken": ""} response = requests.get(url, headers=headers) print(response.json()) ``` ```javascript GetSubscription const url = 'https://api-sandbox.payabli.com/api/Subscription/263'; const options = {method: 'GET', headers: {requestToken: ''}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); } ``` ```go GetSubscription package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api-sandbox.payabli.com/api/Subscription/263" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("requestToken", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby GetSubscription require 'uri' require 'net/http' url = URI("https://api-sandbox.payabli.com/api/Subscription/263") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["requestToken"] = '' response = http.request(request) puts response.read_body ``` ```java GetSubscription import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.Unirest; HttpResponse response = Unirest.get("https://api-sandbox.payabli.com/api/Subscription/263") .header("requestToken", "") .asString(); ``` ```php GetSubscription request('GET', 'https://api-sandbox.payabli.com/api/Subscription/263', [ 'headers' => [ 'requestToken' => '', ], ]); echo $response->getBody(); ``` ```csharp GetSubscription using RestSharp; var client = new RestClient("https://api-sandbox.payabli.com/api/Subscription/263"); var request = new RestRequest(Method.GET); request.AddHeader("requestToken", ""); IRestResponse response = client.Execute(request); ``` ```swift GetSubscription import Foundation let headers = ["requestToken": ""] let request = NSMutableURLRequest(url: NSURL(string: "https://api-sandbox.payabli.com/api/Subscription/263")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "GET" request.allHTTPHeaderFields = headers let session = URLSession.shared let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in if (error != nil) { print(error as Any) } else { let httpResponse = response as? HTTPURLResponse print(httpResponse) } }) dataTask.resume() ``` > If you're a software company, you're a payments company™