List all payment methods

GET /api/financial/payment-methods

Success: 200 OK

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
curl -X GET '{base_url}/api/financial/payment-methods' \
  -H 'Authorization: Bearer {accessToken}' \
  -H 'X-Use-SSO: true'

Response fields

FieldTypeDescription
[].idstringThe 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.
[].descriptionstringThe 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.
[].collectionInterfaceobjectThe 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.idinteger (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.descriptionstringThe name of the collection interface, taken from the collection interface itself rather than set on the payment method.
[].collectionInterface.isActivebooleanWhether 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.
[].giveChangebooleanWhether 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.
[].useAtPOSbooleanWhether 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.
[].openCashDrawerbooleanWhether 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.
[].nonBankedIncomebooleanWhether 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.
[].allowCountedTotalbooleanWhether 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.
[].avsWhenCustomerPresentbooleanWhether 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.
[].avsWhenCustomerNotPresentbooleanWhether Address Verification is required for a cardholder-not-present sale, such as a telephone or online payment. Gated by canModifyAVSCVSSettings in the same way.
[].cvsWhenCustomerPresentbooleanWhether card number verification is required when the cardholder is at the till. Gated by canModifyAVSCVSSettings.
[].cvsWhenCustomerNotPresentbooleanWhether card number verification is required for a cardholder-not-present sale. Gated by canModifyAVSCVSSettings.
[].eftSystemobjectThe 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.idinteger (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.descriptionstringThe scheme name, taken from the EFT system. null when no EFT system is attached.
[].produceDuplicateReceiptbooleanWhether a second copy of the receipt is printed for this tender. Only ever true where the collection interface's canModifyDuplicateReceipt is true.
[].printSignatureOnReceiptbooleanWhether a signature line is printed on the receipt. Only ever true where the collection interface's canModifySignatureOnReceipt is true.
[].isActivebooleanWhether 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

200 OK
[
  {
    "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

StatusMeaningWhen
404Not foundNo payment methods found.
500Internal server error

This page as markdown · All pages · llms.txt