openapi: 3.0.1 info: title: Method Financial Accounts Payments API description: The Method API enables developers to connect, retrieve, and pay down a consumer's liabilities (credit cards, student loans, auto loans, mortgages, and personal loans) across a network of financial institutions. Core resources are Entities, Accounts, Payments, Merchants, Connect, Transactions, and Webhooks. All requests are authenticated with a Bearer API key. termsOfService: https://methodfi.com/legal/platform-agreement contact: name: Method Support url: https://docs.methodfi.com email: support@methodfi.com version: '2026-03-30' servers: - url: https://production.methodfi.com description: Production - url: https://sandbox.methodfi.com description: Sandbox - url: https://dev.methodfi.com description: Development (simulations enabled) security: - bearerAuth: [] tags: - name: Payments description: Electronic transfers between a source and destination account. paths: /payments: post: operationId: createPayment tags: - Payments summary: Create a payment description: Pulls funds from a source account and sends them to a destination liability or asset account. Settlement occurs in 1-3 business days. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PaymentCreateRequest' responses: '200': description: Payment created content: application/json: schema: $ref: '#/components/schemas/PaymentResponse' get: operationId: listPayments tags: - Payments summary: List payments parameters: - $ref: '#/components/parameters/Page' - $ref: '#/components/parameters/PageLimit' responses: '200': description: A list of payments content: application/json: schema: $ref: '#/components/schemas/PaymentListResponse' /payments/{pmt_id}: parameters: - $ref: '#/components/parameters/PaymentId' get: operationId: getPayment tags: - Payments summary: Retrieve a payment responses: '200': description: The payment content: application/json: schema: $ref: '#/components/schemas/PaymentResponse' delete: operationId: deletePayment tags: - Payments summary: Delete a pending payment responses: '200': description: The deleted payment content: application/json: schema: $ref: '#/components/schemas/PaymentResponse' /payments/{pmt_id}/reversals: parameters: - $ref: '#/components/parameters/PaymentId' post: operationId: createPaymentReversal tags: - Payments summary: Create a payment reversal description: Balances funds for an unsuccessful payment. requestBody: required: true content: application/json: schema: type: object responses: '200': description: Reversal content: application/json: schema: type: object get: operationId: listPaymentReversals tags: - Payments summary: List payment reversals responses: '200': description: Reversals content: application/json: schema: type: object components: schemas: PaymentResponse: type: object properties: id: type: string source: type: string destination: type: string amount: type: integer description: type: string status: type: string enum: - pending - processing - sent - settled - failed - reversed - canceled error: nullable: true type: object created_at: type: string format: date-time updated_at: type: string format: date-time PaymentListResponse: type: object properties: data: type: array items: $ref: '#/components/schemas/PaymentResponse' PaymentCreateRequest: type: object required: - amount - source - destination properties: amount: type: integer description: Amount in cents (100 to 100000000). minimum: 100 maximum: 100000000 source: type: string description: Source account ID. destination: type: string description: Destination account ID. description: type: string maxLength: 10 metadata: type: object parameters: Page: name: page in: query required: false schema: type: integer default: 1 PaymentId: name: pmt_id in: path required: true schema: type: string description: The payment identifier (e.g. pmt_xxx). PageLimit: name: page_limit in: query required: false schema: type: integer default: 50 maximum: 100 securitySchemes: bearerAuth: type: http scheme: bearer description: Provide your Method API key as a Bearer token in the Authorization header. Optionally send a Method-Version header (e.g. 2026-03-30).