Payment methods

Delete a payment method for an entity

Removes a payment method belonging to a named tenant, owner, vendor, applicant, or the company itself. The record is soft-deleted, so it disappears from every read here but stays behind for audit. Requires the payment_methods:delete permission.

DELETE
https://services.magicdoor.com/payments/company-portal/methods/{entityType}/{entityId}/{methodId}

Authorization

Authorizationstringrequired
Bearer token — Send your API token in the Authorization header as Bearer <token>. Requests without a valid token are rejected with 401 Unauthorized.

Path parameters

entityTypeenum<string>required

Who owns the payment method. company is the property management company itself, applicant is a rental applicant. Matching is case-insensitive.

example: tenantapplicanttenantownervendorcompany
entityIdstringrequired

The tenant, owner, vendor, applicant, or company that owns the payment method. A Snowflake id, sent as a decimal string.

example: 1812345678901234560
methodIdstringrequired

The payment method to delete. A Snowflake id, sent as a decimal string.

example: 1830472847398404096

Body

application/json

This request takes no fields, but a JSON body is still required — send {}. A DELETE with no body at all is rejected with 400.

Response

200 · The payment method was deleted. The response has no body.

400 · The request carried no JSON body. Send `{}`.

401 · The request carried no valid access token.

403 · The token is not a property manager token, or it lacks the `payment_methods:delete` permission.

404 · No such payment method, or it belongs to another company, or it was deleted, or it belongs to a different party than the one named in the path.

422 · The path names your own company and this is its last usable payment method, so it cannot be removed.

Which methods this reaches

entityType and entityId name the party the payment method belongs to — a tenant, an owner, a vendor, a rental applicant, or the company itself. Whatever you name, the method must still belong to the calling company; one company can never reach another's. Passing company with your own company id reaches exactly the same methods as the endpoints without an entity in the path.

The company must keep one usable method

This guard applies only when entityType is company and entityId is your own company: MagicDoor collects the company's own fees from those methods, so the last usable one cannot be removed, and the call refuses with 422. Methods belonging to tenants, owners, vendors, and applicants are not protected.