> This is Payabli documentation. For a complete page index, fetch https://docs.payabli.com/llms.txt — append .md to any page URL for lightweight markdown. For section-level indexes, query parameters, and other AI-optimized access methods, see https://docs.payabli.com/ai-agents.md

## v1.0.26

This release includes breaking changes. It adds clients for the intelligent boarding API (beta) and marks the legacy boarding methods as deprecated. See [October 19, 2026](/changelog/api-changelog/2026/10/19) for more information.

### Intelligent boarding clients (beta)

The client adds the `Businesses`, `People`, `Paypoints`, `PaymentMethods`, `BoardingTemplates`, and `Applications` clients. Their methods return envelope types, such as `*payabli.BusinessDetailEnvelope`.

These endpoints only accept OAuth. Create the client with `option.WithClientCredentials` and your OAuth client ID and client secret. See [OAuth authentication](/developers/oauth-authentication) and [Manage API credentials](/guides/platform-developer-api-credentials-manage).

```go
c := client.NewClient(
	option.WithClientCredentials("CLIENT_ID", "CLIENT_SECRET"),
)
business, err := c.Businesses.GetBusiness(ctx, "BUSINESS_REFERENCE")
if err != nil {
	return err
}
fmt.Println(business)
```

### Legacy boarding methods are deprecated

Legacy boarding will be sunset in Q2 2027. Every method on `Boarding` and `Templates` now has a deprecation warning in its documentation. `Export.ExportApplications` was already deprecated. It doesn't use the `Deprecated:` comment convention, so linters don't flag the calls.

### `UnprocessableEntityError.Body` is now `any`

The new applications endpoints return a different error body for HTTP `422`, so `UnprocessableEntityError.Body` is now `any` instead of `*PayabliErrorBody`. Code that reads its fields, such as after `MoneyOut.AuthorizeOut`, `CaptureOut`, or `Payout`, no longer compiles.

```go
// Before
text := unprocessable.Body.ResponseText

// After
var body any = unprocessable.Body
```

### Case management bank account services use new types

`BankAccountServices.MoneyIn` is now `[]CaseManagementMoneyInService`, and `MoneyOut` is now `[]CaseManagementMoneyOutService`, as are their `Get` and `Set` methods. The new types have the same values as `MoneyInService` and `MoneyOutService`, with constants such as `CaseManagementMoneyInServiceAch`.

```go
// Before
services.SetMoneyIn([]payabli.MoneyInService{payabli.MoneyInServiceAch})

// After
services.SetMoneyIn([]payabli.CaseManagementMoneyInService{payabli.CaseManagementMoneyInServiceAch})
```

## v1.0.25

This release adds methods to get the next check number and cancel ghost cards, a check number on reissued payouts, invoice data on subscription updates, a 1099 flag on vendors, every payout that paid a bill, and card-present device details. See [October 19, 2026](/changelog/api-changelog/2026/10/19) for more information.

### New methods

* `MoneyOut.GetNextCheckNumber(ctx, paypointId int64, accountId string)` returns `*payabli.NextCheckNumberResponse`, whose `CheckNumber` is a `string`.
* `GhostCard.DeleteGhostCard(ctx, cardToken string)` returns `*payabli.DeleteGhostCardResponse`. Its `ResponseData` has `DeleteType` and `CardToken` (`*string`).

```go
next, err := client.MoneyOut.GetNextCheckNumber(ctx, 285, "ACCOUNT_ID")
deleted, err := client.GhostCard.DeleteGhostCard(ctx, "CARD_TOKEN")
```

### Request changes

* `ReissueOutRequest` adds `CheckNumber` (`*VendorCheckNumber`).
* `RequestUpdateSchedule`, the request for `Subscription.UpdateSubscription`, adds `InvoiceData` (`*BillData`). Call `SetInvoiceData(nil)` to remove the subscription's invoice data.
* `VendorData` adds `Issue1099` (`*bool`).

### Vendor 1099 flag

`VendorQueryRecord`, `VendorDataResponse`, `TransferOutDetailVendor`, and `PayoutSubscriptionVendor` add `Issue1099` (`Issue1099`, an alias for `bool`). `AssociatedVendor`, `VCardGetResponseAssociatedVendor`, `VendorOutData`, and `GetMethodResponseResponseDataVendorsItem` add `Issue1099` (`*Issue1099`).

### Payouts that paid a bill

`BillResponseData` and `BillQueryRecord2` add `Transactions` (`[]*BillTransactionReference`). Each `BillTransactionReference` has `IdOut` (`int64`) and `PaymentId` (`*string`).

### Card-present device details

* `TransactionQueryRecords` and `TransactionQueryRecordsCustomer` add `DeviceEntryMode` (`DeviceEntryMode`, an alias for `*string`), `EmvAuthData` (`*EmvAuthData`, with `RequestEmvData` and `ResponseEmvData`), and `DeviceData` (`*QueryDeviceData`).
* `DeviceQueryRecord` adds `OperationalStatus` (`DeviceQueryRecordOperationalStatus`, with the constants `DeviceQueryRecordOperationalStatusOnline`, `DeviceQueryRecordOperationalStatusBusy`, and `DeviceQueryRecordOperationalStatusOffline`), plus `AppVersion` and `OsVersion` (`*string`).

Each new field has its own `Get` method.