Payment Methods: Reports whether capture is configured.
GET
/api/merchants/{id}/billing/payment-method/capture-readiness
deprecated
Requires: MerchantBilling.PaymentMethods, MerchantBilling.PaymentMethods.Manage, merchant scope.
Answers whether the reseller-level prerequisites for capturing a stored method are in place: whether the reseller has a collection merchant and a card-capture HPP configured and which instrument kinds are allowed, plus the parent reseller id. Backs the operator UI's load-time pre-flight; the authoritative checks still run server-side on capture initiation.
Example request
Every block below sends the same request. Replace {{BASE_URL}} with the address of the API you are calling and {{API_KEY}} with your own key.
The request body is a . See the Request body section below for its fields.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
id
required |
path | string (uuid) | The billed merchant whose capture readiness is requested. |
suppressNulls
required |
query | boolean | If true, omit properties with null values. |
Request body
application/json
, required
| Field | Type | Description |
|---|
This request body has no documented fields.
Responses
200 OK
Body: MerchantBillingPaymentMethodCaptureReadinessDto
Each item has these fields.
| Field | Type | Description |
|---|---|---|
resellerId
required |
string (uuid) | The merchant's parent reseller, so the page can deep-link to the reseller's billing preferences (`/reseller/{ResellerId}`) where the operator fixes any unmet prerequisite. The caller is already authorized for the merchant, so this is the caller's own reseller (no cross-reseller leak). |
collectionMerchantConfigured
required |
boolean | Whether the reseller has a `CollectionMerchantId` configured (required for any capture). |
captureHppConfigured
required |
boolean | Whether the reseller has a card-capture `CaptureHppPageId` configured (required for any capture). |
cardAllowed
required |
boolean | Whether the reseller's allowlist permits Card capture (`AllowCardPayments != false`). |
achAllowed
required |
boolean | Whether the reseller's allowlist permits ACH capture (`AllowAchPayments != false`). |
effectiveResellerId
required |
string (uuid) | The reseller whose collection configuration the flags above describe. Equal to `resellerId` when the merchant's reseller has its own configuration (or nothing is configured anywhere); the nearest configured ancestor when the configuration is inherited. Absent from responses produced before inheritance existed. nullable |
effectiveResellerName
required |
string | The display name of `effectiveResellerId`, when it resolved. nullable |
isInherited
required |
boolean | Whether the configuration is inherited from an ancestor of the merchant's reseller rather than set on it. When `true`, an unmet prerequisite is fixed on `effectiveResellerId`, not on `resellerId`. |
effectiveResellerWithinScope
required |
boolean | Whether the calling operator may act on `effectiveResellerId`. Always `true` when the configuration is not inherited (the caller is already authorized for the merchant's reseller); for an inherited configuration it is `false` for an operator whose own reseller sits below the configured ancestor, who must ask the administrator or that ancestor to change it. |
This response has no documented body fields.
403 Forbidden
Body: RemoteServiceErrorResponse
Each item has these fields.
| Field | Type | Description |
|---|---|---|
error
required |
RemoteServiceErrorInfo |
This response has no documented body fields.
401 Unauthorized
Body: RemoteServiceErrorResponse
Each item has these fields.
| Field | Type | Description |
|---|---|---|
error
required |
RemoteServiceErrorInfo |
This response has no documented body fields.
400 Bad Request
Body: RemoteServiceErrorResponse
Each item has these fields.
| Field | Type | Description |
|---|---|---|
error
required |
RemoteServiceErrorInfo |
This response has no documented body fields.
404 Not Found
Body: RemoteServiceErrorResponse
Each item has these fields.
| Field | Type | Description |
|---|---|---|
error
required |
RemoteServiceErrorInfo |
This response has no documented body fields.
501 Not Implemented
Body: RemoteServiceErrorResponse
Each item has these fields.
| Field | Type | Description |
|---|---|---|
error
required |
RemoteServiceErrorInfo |
This response has no documented body fields.
500 Internal Server Error
Body: RemoteServiceErrorResponse
Each item has these fields.
| Field | Type | Description |
|---|---|---|
error
required |
RemoteServiceErrorInfo |
This response has no documented body fields.
default The request failed. The body carries the standard error envelope: a machine-readable `error.code`, a human-readable `error.message`, and `error.validationErrors` when the failure was a validation rejection. See the error-code reference in this document's description for the values `error.code` can take.
Body: RemoteServiceErrorResponse
Each item has these fields.
| Field | Type | Description |
|---|---|---|
error
required |
RemoteServiceErrorInfo |
This response has no documented body fields.
429 The request was refused because a rate limit was exceeded. Wait at least the interval `Retry-After` names before retrying, then back off. Limits are tuned per deployment, so read the allowance from the response headers rather than assuming a fixed ceiling.
Body: RateLimitProblemDetails
Each item has these fields.
| Field | Type | Description |
|---|---|---|
type
required |
string | The problem type identifier. Always the same value: the failure is the status code itself, so there is no sub-type for a caller to branch on. nullable |
title
required |
string | A short, human-readable summary of the problem type. nullable |
status
required |
integer (int32) | The HTTP status code, repeated in the body as the problem-details format defines. |
detail
required |
string | A human-readable explanation of this occurrence of the problem. nullable |
retryAfterSeconds
required |
integer (int32) | How long to wait before retrying, in whole seconds, carrying the same figure as the `Retry-After` header. Always at least one: a value of zero would invite an immediate retry that is certain to be rejected again. |
This response has no documented body fields.
Errors
A failed request returns the platform error envelope. The
error reference lists every value
error.code can carry and shows the four response shapes.