### GET /customers Source: https://docs.resolvepay.com/_bundle/merchant-api/@v5/openapi.json Return a list of customers. ```markdown ### Parameters - **limit** (integer, query, optional): Limit the number of customers returned. - **page** (string, query, optional): Specify the page of customers returned. - **filter** (object, query, optional): Filter customers by the specified fields. Filter semantics: `filter[field][operator]=value`. Available filter operators: - `eq` - equal (=) - `ne` - not equal (!=) - `gt` - greater than (>) - `gte` - greater than or equal (>=) - `lt` - less than (<) - `lte` - less than or equal (<=) Filtering is allowed by the following fields: - `email` (`eq`) - `business_name` (`eq`) - `created_at` (`eq`, `gt`, `lt`, `gte`, `lte`) - `amount_approved` (`eq`, `gt`, `lt`, `gte`, `lte`) - `amount_available` (`eq`, `gt`, `lt`, `gte`, `lte`) - `amount_authorized` (`eq`, `gt`, `lt`, `gte`, `lte`) - `amount_balance` (`eq`, `gt`, `lt`, `gte`, `lte`) - `amount_unapplied_payments` (`eq`, `gt`, `lt`, `gte`, `lte`) - `advance_rate` (`eq`, `gt`, `lt`, `gte`, `lte`) - `archived` (`eq`, `ne`) Example: `filter[email][eq]=test@resolvepay.com` Note: filter with the `eq` operator is equivalent to the following filter `filter[field]=value` - **sort** (string, query, optional): Sort customers by the specified fields. The sort order for each sort field is ascending unless it is prefixed with a minus, in which case it is descending. Multiple sort fields supported by allowing comma-separated sort fields. Sort fields will be applied in the order specified. Sorting is allowed by the following fields: `id`, `created_at`, `amount_approved`, `amount_available`, `business_name`. Example: `sort=business_name,-created_at` ### Responses #### 200 - response **CustomerList** - **count** (integer) (example: 1) - **limit** (integer) (example: 25) - **page** (integer) (example: 1) - **results** (array) #### 400 - response - **error** (object) - **message** (string): A short string, describing error details (example: "Validation error") - **type** (string (validation_error)): A short string, describing error type (example: "validation_error") ("validation_error") - **details** (array (object)) Array items: - **path** (string): Path to the field failed validation (example: "path.to.field") - **message** (string): Detailed description of the error (example: "`[field]` is required") #### 401 - response **UnauthorizedError** - **error** (object) - **message** (string): A short string, describing error details (example: "Invalid merchant credentials") - **type** (string (authentication_error)): A short string, describing error type (example: "authentication_error") ("authentication_error") #### 429 - response **RateLimitError** - **error** (object) - **message** (string): A short string, describing error details (example: "Too many requests") - **type** (string (rate_limit_error)): A short string, describing error type (example: "rate_limit_error") ("rate_limit_error") ### Example Usage ```bash curl -X GET "https://app-sandbox.resolvepay.com/api/customers?limit=25&page=1&filter=value&sort=string" ``` ``` -------------------------------- ### GET /charges Source: https://docs.resolvepay.com/_bundle/merchant-api/@v5/openapi.json Return a paginated list of charges. ```markdown ### Parameters - **limit** (integer, query, optional): Limit the number of charges returned. - **page** (string, query, optional): Specify the page of charges returned. - **search** (string, query, optional): Search across supported charge fields. Search is applied to charge and associated record values including: `id`, `number`, `merchant_invoice.order_number`, `merchant_invoice.po_number`, and customer/merchant identifying fields. - **order** (string, query, optional): Sort charges by field. Prefix with `-` for descending order. Examples: - `order=-created_at` - `order=amount` - **starting_at** (string (date-time), query, optional): Return charges created at or after this timestamp. - **ending_at** (string (date-time), query, optional): Return charges created at or before this timestamp. ### Responses #### 200 - response **ChargeListResponse** - **count** (integer) (example: 1) - **limit** (integer) (example: 25) - **page** (integer) (example: 1) - **results** (array (Charge)) Array items: - **id** (string): Unique identifier for the charge. (example: "PMMlaE5wbg0") - **amount** (number (double)): Authorized amount of the charge in USD. (example: 1000) - **customer_id** (string): Unique identifier of the customer. (example: "X50sgfRd") - **amount_refunded** (number (double)): Total refunded amount for the charge in USD. (example: 0) - **canceled** (boolean): Indicates whether the charge is canceled. (example: false) - **canceled_at** (string (date-time)): Date the charge was canceled. (example: null) - **captured** (boolean): Indicates whether the charge has been captured. (example: true) - **captured_at** (string (date-time)): Date the charge was captured. (example: "2020-01-02T00:00:00.730Z") - **created_at** (string (date-time)): Date the charge was created. (example: "2020-01-01T00:00:00.730Z") - **invoice_url** (string (uri)): URL of the invoice document associated with this charge. (example: "https://example.com/invoice.pdf") - **metadata** (object): Custom metadata attached to the charge. (example: {"source":"checkout"}) - **number** (string): Charge number identifier. (example: "ch_100001") - **terms** (string (due_upon_receipt|net7|net10|net10th|net15|net20|net30|net45|net60|net75|net90|net120|net180)): Payment terms associated with the charge. (example: "net30") ("due_upon_receipt"|"net7"|"net10"|"net10th"|"net15"|"net20"|"net30"|"net45"|"net60"|"net75"|"net90"|"net120"|"net180") - **updated_at** (string (date-time)): Date the charge was last updated. (example: "2020-01-02T00:00:00.730Z") - **merchant_invoice_id** (string): ID of the merchant invoice associated with the charge. (example: "INabc123") - **order_number** (string): Order number associated with the charge. (example: "5055") - **po_number** (string): PO number associated with the charge. (example: "PO-555") - **fee** (number (double)): Fee amount associated with the charge in USD. (example: 25.5) - **fee_refunded** (number (double)): Refunded fee amount for the charge in USD. (example: 0) #### 400 - response - **error** (object) - **message** (string): A short string, describing error details (example: "Validation error") - **type** (string (validation_error)): A short string, describing error type (example: "validation_error") ("validation_error") - **details** (array (object)) Array items: - **path** (string): Path to the field failed validation (example: "path.to.field") - **message** (string): Detailed description of the error (example: "`[field]` is required") #### 401 - response **UnauthorizedError** - **error** (object) - **message** (string): A short string, describing error details (example: "Invalid merchant credentials") - **type** (string (authentication_error)): A short string, describing error type (example: "authentication_error") ("authentication_error") #### 429 - response **RateLimitError** - **error** (object) - **message** (string): A short string, describing error details (example: "Too many requests") - **type** (string (rate_limit_error)): A short string, describing error type (example: "rate_limit_error") ("rate_limit_error") ### Example Usage ```bash curl -X GET "https://app-sandbox.resolvepay.com/api/charges?limit=100&page=1&search=string&order=-created_at&starting_at=2023-01-01T00:00:00Z&ending_at=2023-01-01T00:00:00Z" ``` ``` -------------------------------- ### GET /payments Source: https://docs.resolvepay.com/_bundle/merchant-api/@v5/openapi.json Return a list of payments. ```markdown ### Parameters - **limit** (integer, query, optional): Limit the number of payments returned. - **page** (string, query, optional): Specify the page of payments returned. - **filter** (object, query, optional): Filter payments by the specified fields. Filter semantics: `filter[field][operator]=value`. Available filter operators: - `eq` - equal (=) - `gt` - greater than (>) - `gte` - greater than or equal (>=) - `lt` - less than (<) - `lte` - less than or equal (<=) - `after` - after date - `before` - before date - `start` - start date - `end` - end date Filtering is allowed by the following fields: - `customer_id` (`eq`) - `status` (`eq`) - `amount` (`eq`, `gt`, `lt`, `gte`, `lte`) Example: `filter[customer_id][eq]=X50sgfRd` Note: filter with the `eq` operator is equivalent to the following filter `filter[field]=value` - **sort** (string (id|-id|created_at|-created_at|amount|-amount), query, optional): Sort payments by the specified field. Use `-` prefix for descending order. Available sort fields: - `id` - `created_at` - `amount` Example: `sort=-created_at` (sort by created_at in descending order) ### Responses #### 200 - response **PaymentListResponse** - **count** (integer) (example: 1) - **limit** (integer) (example: 25) - **page** (integer) (example: 1) - **results** (array (Payment)) Array items: - **id** (string): Unique identifier for the payment. (example: "PMMlaE5wbg0") - **customer_id** (string): Unique identifier of the customer that made the payment. (example: "X50sgfRd") - **source** (string (api|merchant_user|admin_user|customer_user|payment_gateway|check|guest_checkout)): Source of the payment. (example: "customer_user") ("api"|"merchant_user"|"admin_user"|"customer_user"|"payment_gateway"|"check"|"guest_checkout") - **amount** (number (double)): Amount of the payment in USD. (example: 1000) - **method** (string (check|ach_debit|direct_deposit|card|merchant|unapplied_payment_adjustment|credit_note|adjustment|wire)): Method of payment made by the customer. (example: "ach_debit") ("check"|"ach_debit"|"direct_deposit"|"card"|"merchant"|"unapplied_payment_adjustment"|"credit_note"|"adjustment"|"wire") - **status** (string (pending|in_transit|in_review|paid|failed|canceled)): Status of the payment. - `pending` - Payment is pending processing. - `in_transit` - Payment has been processed and is in transit. - `in_review` - Payment is being reviewed. - `paid` - Payment has been confirmed and applied to the customer's account. - `failed` - Payment failed confirmation (e.g., bank transfer or credit card payment rejected). - `canceled` - Payment was canceled by request. (example: "paid") ("pending"|"in_transit"|"in_review"|"paid"|"failed"|"canceled") - **created_at** (string (date-time)): Date the payment was created. (example: "2020-01-01T00:00:00.730Z") - **paid_at** (string (date-time)): Date the payment was confirmed by Resolve and applied to the customer's account. (example: "2020-01-02T00:00:00.730Z") - **canceled_at** (string (date-time)): Date the payment was canceled by request. (example: null) - **failed_at** (string (date-time)): Date the payment failed processing. (example: null) - **processed_at** (string (date-time)): Date the payment was processed by Resolve. (example: "2020-01-01T12:00:00.730Z") - **scheduled_at** (string (date-time)): Date the payment was scheduled for processing, if applicable. (example: null) - **processing_fee** (number (double)): Processing fee for the payment. (example: 25.5) - **canceled_code** (string): Code indicating the reason the payment was canceled. (example: null) - **failed_code** (string): Code indicating the reason the payment failed processing. (example: null) - **payment_links** (array (object)): List of records the payment is applied to. Array items: - **record_id** (string): ID of the record. (example: "PMMlaE5wbg0") - **record_type** (string (invoice)): Type of record the payment is applied to. (example: "invoice") ("invoice") - **amount** (number (double)): Amount applied to this record. (example: 500) - **created_by_user_id** (string): ID of the user who created the payment, if applicable. (example: null) #### 400 - response - **error** (object) - **message** (string): A short string, describing error details (example: "Validation error") - **type** (string (validation_error)): A short string, describing error type (example: "validation_error") ("validation_error") - **details** (array (object)) Array items: - **path** (string): Path to the field failed validation (example: "path.to.field") - **message** (string): Detailed description of the error (example: "`[field]` is required") #### 401 - response **UnauthorizedError** - **error** (object) - **message** (string): A short string, describing error details (example: "Invalid merchant credentials") - **type** (string (authentication_error)): A short string, describing error type (example: "authentication_error") ("authentication_error") #### 429 - response **RateLimitError** - **error** (object) - **message** (string): A short string, describing error details (example: "Too many requests") - **type** (string (rate_limit_error)): A short string, describing error type (example: "rate_limit_error") ("rate_limit_error") ### Example Usage ```bash curl -X GET "https://app-sandbox.resolvepay.com/api/payments?limit=25&page=1&filter=value&sort=-created_at" ``` ``` -------------------------------- ### GET /invoices Source: https://docs.resolvepay.com/_bundle/merchant-api/@v5/openapi.json Return a list of invoices. ```markdown ### Parameters - **limit** (integer, query, optional): Limit the number of invoices returned. - **page** (string, query, optional): Specify the page of invoices returned. - **filter** (object, query, optional): Filter invoices by the specified fields. Filter semantics: `filter[field][operator]=value`. Available filter operators: - `eq` - equal (=) - `ne` - not equal (!=) - `gt` - greater than (>) - `gte` - greater than or equal (>=) - `lt` - less than (<) - `lte` - less than or equal (<=) Filtering is allowed by the following fields: - `number` (`eq`) - `order_number` (`eq`) - `po_number` (`eq`) - `customer_id` (`eq`) - `advance_requested` (`eq`) - `created_at` (`eq`, `gt`, `lt`, `gte`, `lte`) - `fully_paid` (`eq`, `ne`) - `fully_paid_at` (`eq`, `gt`, `lt`, `gte`, `lte`) - `amount_due` (`eq`, `gt`, `lt`, `gte`, `lte`) - `amount_balance` (`eq`, `gt`, `lt`, `gte`, `lte`) - `amount_pending` (`eq`, `gt`, `lt`, `gte`, `lte`) - `amount_refunded` (`eq`, `gt`, `lt`, `gte`, `lte`) - `archived` (`eq`, `ne`) Example: `filter[number][eq]=100` Note: filter with the `eq` operator is equivalent to the following filter `filter[field]=value` ### Responses #### 200 - response **InvoiceListResponse** - **count** (integer) (example: 1) - **limit** (integer) (example: 25) - **page** (integer) (example: 1) - **results** (array (Invoice)) Array items: - **id** (string): Unique identifier for the invoice. (example: "PMMlaE5wbg0") - **source** (string (QUICKBOOKS|MERCHANT_USER|ADMIN_USER|CUSTOMER_USER|API)) (example: "MERCHANT_USER") ("QUICKBOOKS"|"MERCHANT_USER"|"ADMIN_USER"|"CUSTOMER_USER"|"API") - **customer_id** (string): ID of the customer being charged. - **order_number** (string): Order number identifier. (example: "5055") - **number** (string): Invoice number identifier. (example: "Inv # 123") - **po_number** (string): PO number identifier. (example: "PO-555") - **notes** (string): Additional notes for the Customer (example: "Example of additional notes for Customer.") - **line_items** (array): Line item data (example: []) - **merchant_invoice_url** (string): The invoice PDF that you've uploaded to Resolve. (example: "https://www.example.com/invoice.pdf") - **resolve_invoice_url** (string): Resolve-issued invoice PDF with your invoice attached. (example: "https://www.example.com/resolve-invoice.pdf") - **resolve_invoice_status** (string (not_generated|processing|completed)): Shows current status of the Resolve-issued invoice PDF. - `not_generated` - PDF wasn't created or queued for creation. Resolve PDFs are generated when an invoice is sent. - `processing` - PDF is in the process of being generated. Try to refetch the invoice in a minute to get a `resolve_invoice_url` link. - `completed` - PDF is generated, `resolve_invoice_url` points to the generated file. (example: "completed") ("not_generated"|"processing"|"completed") - **fully_paid** (boolean): Indicates whether the invoice is fully paid. (example: true) - **fully_paid_at** (string (date-time)): The date the invoice has been fully paid. (example: "2020-01-01T00:00:00.730Z") - **advanced** (boolean): Indicates whether the invoice has been advanced. (example: false) - **due_at** (string (date-time)): The current due date for this invoice's payment. (example: "2020-02-01T00:00:00.750Z") - **original_due_at** (string (date-time)): The due date for this invoice at the time an advance was issued. (example: "2020-02-01T00:00:00.750Z") - **invoiced_at** (string (date-time)): The date this invoice was created in your system of record (Resolve or Quickbooks). (example: "2020-01-01T00:00:00.750Z") - **advance_requested** (boolean): Indicated if advance was requested. (example: "false") - **terms** (string (due_upon_receipt|net7|net10|net10th|net15|net20|net30|net45|net60|net75|net90|net120|net180)): The terms selected for this invoice. ("due_upon_receipt"|"net7"|"net10"|"net10th"|"net15"|"net20"|"net30"|"net45"|"net60"|"net75"|"net90"|"net120"|"net180") - **amount_payout_due** (number (double)): The original amount that Resolve owed on this invoice on the advance date. (example: 4000) - **amount_payout_paid** (number (double)): The amount that Resolve has paid out. (example: 2000) - **amount_payout_pending** (number (double)): The amount that Resolve has currently pending to be paid out. (example: 1000) - **amount_payout_refunded** (number (double)): The amount that Resolve has debited from due to refunds. (example: 500) - **amount_payout_balance** (number (double)): The amount remaining to be paid out. (example: 500) - **payout_fully_paid** (boolean): The status of whether or not this invoice has been fully paid out. (example: false) - **payout_fully_paid_at** (string (date-time)): The date of when this invoice has been fully paid out. (example: "2020-01-02T00:00:00.730Z") - **amount_balance** (number (double)): Current balance due. (example: 2000) - **amount_due** (number (double)): Original amount due. (example: 4000) - **amount_refunded** (number (double)): Amount that has been refunded. (example: 0) - **amount_pending** (number (double)): Amount of total payments pending. (example: 1000) - **amount_paid** (number (double)): Amount of total payments applied to this invoice. (example: 1000) - **amount_advance** (number (double)): Amount of advance received. (example: 4000) - **amount_additional_advance** (number (double)): Amount of additional advance received. (example: 1000) - **amount_advance_fee** (number (double)): Fee for the amount of advance. (example: 10.75) - **amount_advance_fee_refund** (number (double)): Refunded fees for the amount of advance. (example: 10.75) - **advance_rate** (number (double)): The advance rate that was used to determine amount of advance. (example: 0.75) - **advanced_at** (string (date-time)): The date this invoice was advanced. (example: "2020-01-02T00:00:00.730Z") - **amount_customer_fee_total** (number (double)): The total amount of customer fees accrued. (example: 500) - **amount_customer_fee_waived** (number (double)): The total amount of customer fees waived. (example: 120) - **amount_customer_fee_paid** (number (double)): The total amount of customer fees paid. (example: 300) - **amount_customer_fee_balance** (number (double)): The current amount of customer fees owed. (example: 80) - **created_at** (string (date-time)): Date the invoice was created. (example: "2020-01-02T00:00:00.730Z") - **updated_at** (string (date-time)): Date the invoice was last updated. (example: "2020-01-02T00:00:00.730Z") - **archived** (boolean): Boolean indicating if invoice is archived. (example: false) - **invoice_payment_url** (string): Link to make invoice payments. (example: "https://app.resolvepay.com/merchant/invoices/PMMlaE5wbg0") - **canceled** (boolean): Indicates whether the invoice is canceled. (example: false) - **canceled_at** (string (date-time)): Date the invoice was canceled. (example: null) - **voided** (boolean): Indicates whether the invoice is voided. (example: false) - **voided_at** (string (date-time)): Date the invoice was voided. (example: null) - **amount_canceled** (number (double)): Amount that has been canceled. (example: 0) - **amount_voided** (number (double)): Amount that has been voided. (example: 0) #### 400 - response - **error** (object) - **message** (string): A short string, describing error details (example: "Validation error") - **type** (string (validation_error)): A short string, describing error type (example: "validation_error") ("validation_error") - **details** (array (object)) Array items: - **path** (string): Path to the field failed validation (example: "path.to.field") - **message** (string): Detailed description of the error (example: "`[field]` is required") #### 401 - response **UnauthorizedError** - **error** (object) - **message** (string): A short string, describing error details (example: "Invalid merchant credentials") - **type** (string (authentication_error)): A short string, describing error type (example: "authentication_error") ("authentication_error") #### 429 - response **RateLimitError** - **error** (object) - **message** (string): A short string, describing error details (example: "Too many requests") - **type** (string (rate_limit_error)): A short string, describing error type (example: "rate_limit_error") ("rate_limit_error") ### Example Usage ```bash curl -X GET "https://app-sandbox.resolvepay.com/api/invoices?limit=25&page=1&filter=value" ``` ``` -------------------------------- ### GET /credit-notes Source: https://docs.resolvepay.com/_bundle/merchant-api/@v5/openapi.json Return a list of credit notes. ```markdown ### Parameters - **limit** (integer, query, optional): Limit the number of credit notes returned. - **page** (string, query, optional): Specify the page of credit notes returned. - **filter** (object, query, optional): Filter credit notes by the specified fields. Filter semantics: `filter[field][operator]=value`. Available filter operators: - `eq` - equal (=) - `gt` - greater than (>) - `gte` - greater than or equal (>=) - `lt` - less than (<) - `lte` - less than or equal (<=) Filtering is allowed by the following fields: - `number` (`eq`) - `customer_id` (`eq`) - `invoice_id` (`eq`) - `payment_id` (`eq`) - `amount` (`eq`, `gt`, `lt`, `gte`, `lte`) - `amount_balance` (`eq`, `gt`, `lt`, `gte`, `lte`) - `amount_paid` (`eq`, `gt`, `lt`, `gte`, `lte`) Example: `filter[number][eq]=CN-001` Note: filter with the `eq` operator is equivalent to the following filter `filter[field]=value` - **sort** (string (id|-id|created_at|-created_at|amount|-amount|amount_balance|-amount_balance), query, optional): Sort credit notes by the specified field. Use `-` prefix for descending order. Available sort fields: - `id` - `created_at` - `amount` - `amount_balance` Example: `sort=-created_at` (sort by created_at in descending order) ### Responses #### 200 - response **CreditNoteListResponse** - **count** (integer) (example: 1) - **limit** (integer) (example: 25) - **page** (integer) (example: 1) - **results** (array (CreditNote)) Array items: - **id** (string): Unique identifier for the credit note. (example: "CNMlaE5wbg0") - **source** (string (MERCHANT_USER|ADMIN_USER|API)): Source of the credit note creation. (example: "MERCHANT_USER") ("MERCHANT_USER"|"ADMIN_USER"|"API") - **customer_id** (string): ID of the customer associated with the credit note. (example: "X50sgfRd") - **merchant_id** (string): ID of the merchant. (example: "MER456789") - **invoice_id** (string): ID of the invoice this credit note is associated with. (example: "PMMlaE5wbg0") - **created_by_user_id** (string): ID of the user who created the credit note. (example: "USR123456") - **number** (string): Credit note number identifier. (example: "CN-001") - **amount** (number (double)): Total amount of the credit note. (example: 1000) - **amount_balance** (number (double)): Remaining balance to be applied. (example: 500) - **amount_paid** (number (double)): Amount that has been applied/paid out. (example: 500) - **amount_voided** (number (double)): Amount that has been voided. (example: 0) - **amount_payout** (number (double)): Total payout amount for the credit note. (example: 1000) - **amount_payout_balance** (number (double)): Remaining payout balance. (example: 500) - **amount_payout_paid** (number (double)): Amount that has been paid out. (example: 500) - **credit_note_url** (string): The credit note PDF that you've uploaded to Resolve. (example: "https://www.example.com/credit-note.pdf") - **resolve_credit_note_url** (string): Resolve-issued credit note PDF. (example: "https://www.example.com/resolve-credit-note.pdf") - **reason_code** (string (chargeback|duplicate|fraudulent|requested_by_customer|missing_remittance|overpayment_on_invoice|invoice_was_refunded|double_payment_on_invoice|missing_invoice_in_resolve|credit_transfer|other)): The reason code for issuing this credit note. (example: "requested_by_customer") ("chargeback"|"duplicate"|"fraudulent"|"requested_by_customer"|"missing_remittance"|"overpayment_on_invoice"|"invoice_was_refunded"|"double_payment_on_invoice"|"missing_invoice_in_resolve"|"credit_transfer"|"other") - **reason_message** (string): Additional details explaining the reason for the credit note. (example: "Customer returned damaged goods") - **voided** (boolean): Indicates whether the credit note is voided. (example: false) - **voided_at** (string (date-time)): Date the credit note was voided. (example: null) #### 400 - response - **error** (object) - **message** (string): A short string, describing error details (example: "Validation error") - **type** (string (validation_error)): A short string, describing error type (example: "validation_error") ("validation_error") - **details** (array (object)) Array items: - **path** (string): Path to the field failed validation (example: "path.to.field") - **message** (string): Detailed description of the error (example: "`[field]` is required") #### 401 - response **UnauthorizedError** - **error** (object) - **message** (string): A short string, describing error details (example: "Invalid merchant credentials") - **type** (string (authentication_error)): A short string, describing error type (example: "authentication_error") ("authentication_error") #### 429 - response **RateLimitError** - **error** (object) - **message** (string): A short string, describing error details (example: "Too many requests") - **type** (string (rate_limit_error)): A short string, describing error type (example: "rate_limit_error") ("rate_limit_error") ### Example Usage ```bash curl -X GET "https://app-sandbox.resolvepay.com/api/credit-notes?limit=25&page=1&filter=value&sort=-created_at" ``` ``` -------------------------------- ### GET /orders Source: https://docs.resolvepay.com/_bundle/merchant-api/@v5/openapi.json Return a paginated list of orders. ```markdown ### Parameters - **limit** (integer, query, optional): Limit the number of orders returned. - **page** (string, query, optional): Specify the page of orders returned. - **filter** (object, query, optional): Filter orders by the specified fields. Filter semantics: `filter[field][operator]=value`. Available filter operators: - `eq` - equal (=) - `gt` - greater than (>) - `gte` - greater than or equal (>=) - `lt` - less than (<) - `lte` - less than or equal (<=) Filtering is allowed by the following fields: - `status` (`eq`) - `order_number` (`eq`) - `po_number` (`eq`) - `customer_id` (`eq`) - `authorized_at` (`eq`, `gt`, `lt`, `gte`, `lte`) - `amount_authorized` (`eq`, `gt`, `lt`, `gte`, `lte`) - `amount_captured` (`eq`, `gt`, `lt`, `gte`, `lte`) - `amount_canceled` (`eq`, `gt`, `lt`, `gte`, `lte`) - `amount_remaining` (`eq`, `gt`, `lt`, `gte`, `lte`) Example: `filter[status][eq]=authorized` Note: filter with the `eq` operator is equivalent to `filter[field]=value` ### Responses #### 200 - response **OrderListResponse** - **count** (integer) (example: 1) - **limit** (integer) (example: 100) - **page** (integer) (example: 1) - **results** (array (OrderListItem)) Array items: - **id** (string): Unique identifier for the order. (example: "ORDlaE5wbg0") - **checkout_id** (string): ID of the checkout session associated with this order. (example: "CHKabc123") - **number** (string): Order number identifier. (example: "ord_100001") - **po_number** (string): Purchase order number associated with the order. (example: "PO-555") - **advance_requested** (boolean): Whether an advance was requested for this order. (example: false) - **source** (string): Source channel that created the order. (example: "checkout") - **status** (string): Current status of the order. (example: "authorized") - **amount_authorized** (number (double)): Total authorized amount for the order in USD. (example: 1000) - **amount_captured** (number (double)): Total captured amount for the order in USD. (example: 500) - **amount_canceled** (number (double)): Total canceled amount for the order in USD. (example: 0) - **amount_remaining** (number (double)): Remaining authorized amount available for capture in USD. (example: 500) - **first_captured_at** (string (date-time)): Timestamp of the first capture event. (example: "2024-01-15T10:00:00.000Z") - **line_items** (array (OrderLineItem)): Line items associated with the order. Array items: - **name** (string): Name or description of the line item. (example: "Widget A") - **quantity** (number): Quantity of units. (example: 2) - **unit_price** (number (double)): Price per unit in USD. (example: 50) - **sku** (string): SKU or product identifier. (example: "ABC-123") - **total_price** (number (double)): Total price for this line item in USD. Defaults to unit_price × quantity if omitted. (example: 100) - **type** (string): Line item type. Common values: `product`, `shipping`, `subtotal`. (example: "product") - **tax_amount** (number (double)): Tax amount for this line item in USD. (example: 8.5) - **authorization_expires_at** (string (date-time)): Timestamp when the authorization expires. (example: "2024-02-15T10:00:00.000Z") - **authorization_expiry_source** (string): Source that determined the authorization expiry. (example: "system") - **authorized_at** (string (date-time)): Timestamp when the order was authorized. (example: "2024-01-01T00:00:00.000Z") - **updated_at** (string (date-time)): Timestamp when the order was last updated. (example: "2024-01-15T10:00:00.000Z") - **customer** (object) - **id** (string): Unique identifier of the customer. (example: "X50sgfRd") - **name** (string): Business name of the customer. (example: "Acme Corp") - **remaining_credit** (number (double)): Remaining available credit for the customer in USD. (example: 5000) #### 400 - response - **error** (object) - **message** (string): A short string, describing error details (example: "Validation error") - **type** (string (validation_error)): A short string, describing error type (example: "validation_error") ("validation_error") - **details** (array (object)) Array items: - **path** (string): Path to the field failed validation (example: "path.to.field") - **message** (string): Detailed description of the error (example: "`[field]` is required") #### 401 - response **UnauthorizedError** - **error** (object) - **message** (string): A short string, describing error details (example: "Invalid merchant credentials") - **type** (string (authentication_error)): A short string, describing error type (example: "authentication_error") ("authentication_error") #### 429 - response **RateLimitError** - **error** (object) - **message** (string): A short string, describing error details (example: "Too many requests") - **type** (string (rate_limit_error)): A short string, describing error type (example: "rate_limit_error") ("rate_limit_error") ### Example Usage ```bash curl -X GET "https://app-sandbox.resolvepay.com/api/orders?limit=100&page=1&filter=value" ``` ``` -------------------------------- ### GET /webhooks Source: https://docs.resolvepay.com/_bundle/merchant-api/@v5/openapi.json Returns a list of all configured webhook endpoints for the merchant account. ```markdown ### Parameters - **limit** (integer, query, optional): Limit the number of webhook endpoints returned. - **page** (string, query, optional): Specify the page of webhook endpoints returned. ### Responses #### 200 - response - **count** (integer): Total number of webhook endpoint subscriptions (example: 3) - **page** (integer): Current page number (example: 1) - **limit** (integer): Number of results per page (example: 25) - **results** (array (WebhookEndpoint)): Array of webhook endpoint objects. Each object represents one endpoint-topic subscription. If an endpoint is subscribed to multiple topics, it will appear multiple times in the array. Array items: - **id** (string): Unique identifier for the webhook endpoint (example: "whe_abc123def456") - **merchant_id** (string): The merchant ID associated with this webhook endpoint (example: "mer_xyz789") - **endpoint_url** (string (uri)): The HTTPS URL where webhook events will be sent (example: "https://example.com/webhooks/resolve") - **topic** (object): The event topic this endpoint is subscribed to - **name** (string): The event topic name (example: "invoice.created") - **description** (string): Human-readable description of the event topic (example: "Triggered when a new invoice record is created") - **created_at** (string (date-time)): When this webhook endpoint subscription was created (example: "2021-05-20T09:23:53+00:00") - **updated_at** (string (date-time)): When this webhook endpoint subscription was last updated (example: "2021-05-20T09:23:53+00:00") #### 400 - response - **error** (object) - **message** (string): A short string, describing error details (example: "Validation error") - **type** (string (validation_error)): A short string, describing error type (example: "validation_error") ("validation_error") - **details** (array (object)) Array items: - **path** (string): Path to the field failed validation (example: "path.to.field") - **message** (string): Detailed description of the error (example: "`[field]` is required") #### 401 - response **UnauthorizedError** - **error** (object) - **message** (string): A short string, describing error details (example: "Invalid merchant credentials") - **type** (string (authentication_error)): A short string, describing error type (example: "authentication_error") ("authentication_error") #### 429 - response **RateLimitError** - **error** (object) - **message** (string): A short string, describing error details (example: "Too many requests") - **type** (string (rate_limit_error)): A short string, describing error type (example: "rate_limit_error") ("rate_limit_error") ### Example Usage ```bash curl -X GET "https://app-sandbox.resolvepay.com/api/webhooks?limit=25&page=1" ``` ```