List all payment methods
GET /api/financial/payment-methods
Success: 200 OK
- Products: Operator (
FOH) - Features: Front of House Generic Access (
FOHGENERIC)
Overview
Lists every payment method configured for the operator, active and inactive alike. A payment
method is a tender type — cash, a card scheme, a direct debit arrangement, loyalty points — and
it is what a sale is recorded against. There is no filter or paging: you always get the whole
set and filter client-side on isActive.
Note that an operator with no payment methods at all returns 404 with No payment methods found, not an empty array. Treat that status as "none configured" rather than as a failure.
When a payment method is created, updated or deleted through this API, the change is visible on the next read.
Almost every boolean below is decided by the payment method's collection interface — the
underlying tender mechanism — rather than being freely chosen. Fetch
List all collection interfaces alongside
this list: its canModify… flags tell you which of these values could have been set at all, and
which were forced by the platform.
Endpoint
GET {base_url}/api/financial/payment-methods
{base_url} is the environment URL issued to your integration. See Authenticating with Gladstone APIs.
Sample request
curl -X GET '{base_url}/api/financial/payment-methods' \
-H 'Authorization: Bearer {accessToken}' \
-H 'X-Use-SSO: true'Response fields
| Field | Type | Description |
|---|---|---|
[].id | string | The code the payment method is known by, chosen by whoever created it rather than generated by the platform. Maximum 15 characters. This is the value you pass in the path to Retrieve, Update and Delete. |
[].description | string | The display name shown to staff against this tender type, for example on the point-of-sale tender list. Maximum 255 characters. Free text — it carries no behaviour. |
[].collectionInterface | object | The tender mechanism this payment method is built on. It determines which of the flags below the platform will let you set, whether an eftSystem is required, and whether more than one payment method of this kind may exist. |
[].collectionInterface.id | integer (int32) | The collection interface type. The recognised values are 0 Manual, 3 External, 5 Cashless, 6 Loyalty, 7 Chip and PIN, 8 Invoicing and 9 Electronic Funds Transfer (EFT). Only 9 carries an eftSystem. |
[].collectionInterface.description | string | The name of the collection interface, taken from the collection interface itself rather than set on the payment method. |
[].collectionInterface.isActive | boolean | Whether the underlying collection interface is still available. Existing payment methods keep working, but while this is false no new payment method can be created against this interface and updates to ones that already use it are rejected with 400. |
[].giveChange | boolean | Whether change is given from this tender — meaningful for cash-like methods. The platform sets false whenever the collection interface's canModifyGiveChange is false, so a false here does not always mean somebody chose it. |
[].useAtPOS | boolean | Whether the payment method is offered as a tender option at the point of sale. It can only be true where the collection interface's canModifyUseAtPos is true. |
[].openCashDrawer | boolean | Whether taking this payment pops the till drawer. Derived by the platform from collectionInterface.id, not from anything a caller sent: it is true for Manual (0) and Chip and PIN (7) and false for every other type. |
[].nonBankedIncome | boolean | Whether takings on this method are treated as non-banked income — money that never reaches a bank account, such as loyalty points redeemed against a sale — and so are excluded from banking figures. Where the collection interface's canModifyNonBankedIncome is false the platform forces this to true. |
[].allowCountedTotal | boolean | Whether takings on this method count towards the counted daily totals at till reconciliation. Saved exactly as supplied; the collection interface places no restriction on it. |
[].avsWhenCustomerPresent | boolean | Whether Address Verification is required when the cardholder is at the till. This and the three flags below are only ever true where the collection interface's canModifyAVSCVSSettings is true; otherwise the platform sets false. |
[].avsWhenCustomerNotPresent | boolean | Whether Address Verification is required for a cardholder-not-present sale, such as a telephone or online payment. Gated by canModifyAVSCVSSettings in the same way. |
[].cvsWhenCustomerPresent | boolean | Whether card number verification is required when the cardholder is at the till. Gated by canModifyAVSCVSSettings. |
[].cvsWhenCustomerNotPresent | boolean | Whether card number verification is required for a cardholder-not-present sale. Gated by canModifyAVSCVSSettings. |
[].eftSystem | object | The direct-debit or bank-collection scheme the money is collected through. Always present, but only populated when collectionInterface.id is 9 (EFT); for every other collection interface you get id: 0 with a null description. |
[].eftSystem.id | integer (int32) | The EFT scheme, matching an id from Get all EFT systems. 0 means no EFT system is attached, which is the normal state for every non-EFT collection interface. |
[].eftSystem.description | string | The scheme name, taken from the EFT system. null when no EFT system is attached. |
[].produceDuplicateReceipt | boolean | Whether a second copy of the receipt is printed for this tender. Only ever true where the collection interface's canModifyDuplicateReceipt is true. |
[].printSignatureOnReceipt | boolean | Whether a signature line is printed on the receipt. Only ever true where the collection interface's canModifySignatureOnReceipt is true. |
[].isActive | boolean | Whether the payment method may still be used. false means retired rather than deleted, and history against it survives. Filter on this before offering the list to a user — the endpoint returns retired methods too. |
Sample response
[
{
"id": "string",
"description": "string",
"collectionInterface": {
"id": 12345,
"description": "string",
"isActive": true
},
"giveChange": true,
"useAtPOS": true,
"openCashDrawer": true,
"nonBankedIncome": true,
"allowCountedTotal": true,
"avsWhenCustomerPresent": true,
"avsWhenCustomerNotPresent": true,
"cvsWhenCustomerPresent": true,
"cvsWhenCustomerNotPresent": true,
"eftSystem": {
"id": 12345,
"description": "string"
},
"produceDuplicateReceipt": true,
"printSignatureOnReceipt": true,
"isActive": true
}
]Errors
| Status | Meaning | When |
|---|---|---|
404 | Not found | No payment methods found. |
500 | Internal server error |