Every API here is available over the APIs.io API and to AI agents over MCP.
openapi: 3.2.0
info:
title: stax-api Underwriting API
version: '0.1'
servers:
- url: https://apiprod.fattlabs.com/
security:
- ApiKeyAuth: []
tags:
- name: Underwriting
paths:
/underwriting/merchant/{id}/registration/documents:
get:
summary: Get Registration Documents
description: Retrieves the registration documents required for a merchant's registration.
operationId: get-registration-documents
parameters:
- name: id
in: path
schema:
type: string
required: true
- name: user_id
in: query
description: Filters registration documents by the user id of the user who manually created this registration document.
schema:
type: string
- name: subject
in: query
description: Filters registration documents by the given subject.
schema:
type: string
enum:
- business
- principal_owner
- beneficial_owner_1
- beneficial_owner_2
- beneficial_owner_3
- beneficial_owner_4
- name: type
in: query
description: Filters registration documents by the given type.
schema:
type: string
enum:
- 3_MONTHS_STATEMENTS
- ARTICLES_ORGANIZATION
- BUSINESS_DOCUMENT
- BUSINESS_LICENSE
- UTILITY_BILL
- LEASE
- DRIVERS_LICENSE
- GOVERNMENT_ID
- MARKETING_MATERIAL
- SS4
- 147c3
- SSN
- VOID_CHECK
- BANK_LETTER
- name: is_enabled
in: query
description: Filters registration documents by whether or not they are enabled
schema:
type: boolean
default: true
- name: fill_missing
in: query
description: Whether or not to calculate and fill the response with all registration documents for this registration record regardless of if they exist or not.
schema:
type: boolean
default: false
- name: group_by
in: query
description: Groups registration documents by the given property.
schema:
type: string
enum:
- registration_audit_log_id
- user_id
- subject
- type
- required_by
- is_enabled
responses:
'200':
description: '200'
content:
application/json:
examples:
Result:
value: "{\n \"business\": [\n {\n \"id\": \"RD11eb38a5249891f0a8b919df3793afa4\",\n \"registration_id\": \"pending\",\n \"registration_audit_log_id\": \"cdc89a24-caad-46a8-9680-10f71adf1ef7\",\n \"user_id\": \"user\",\n \"subject\": \"business\",\n \"type\": \"ARTICLES_ORGANIZATION,BUSINESS_DOCUMENT\",\n \"required_by\": \"autoverify\",\n \"is_enabled\": true,\n \"meta\": {\n \"verification_results\": {\n \"name\": \"giact_gidentify_business\",\n \"message\": \"Identification failed\",\n \"success\": false\n }\n },\n \"created_at\": \"2020-12-07 03:59:09\",\n \"updated_at\": \"2020-12-17 07:17:07\",\n \"title\": \"Articles of Organization or Official Business Doc\",\n \"files\": [\n {\n \"id\": \"9bc64deb-4fe8-47c4-be38-ce63b0912373\",\n \"merchant_id\": \"pending\",\n \"user_id\": \"user\",\n \"name\": \"BusinessArticlesofOrganization.pdf\",\n \"path\": \"onboarding/9bc64deb-4fe8-47c4-be38-ce63b0912373.pdf\",\n \"public_url\": \"https://fake-bucket.s3.us-west-2.amazonaws.com/onboarding/9bc64deb-4fe8-47c4-be38-ce63b0912373.pdf\",\n \"tag\": \"onboarding\",\n \"meta\": {\n \"filesize_bytes\": 3028,\n \"filesize\": \"0.03 kB\",\n \"extension\": \"pdf\",\n \"size\": null,\n \"mime\": \"application/pdf\",\n \"onboardingMagType\": \"1\"\n },\n \"created_at\": \"2020-12-11T14:32:15.000Z\",\n \"updated_at\": \"2020-12-17T20:41:26.000Z\",\n \"deleted_at\": null\n }\n ]\n },\n {\n \"id\": \"RD11eb3bbd83ac0a80828f2b181cd9c9d0\",\n \"registration_id\": \"pending\",\n \"registration_audit_log_id\": \"6db8dede-ad7c-465a-9e91-1125e9bb158a\",\n \"user_id\": \"user\",\n \"subject\": \"business\",\n \"type\": \"SS4,147c3\",\n \"required_by\": \"user\",\n \"is_enabled\": true,\n \"meta\": {\n \"verification_results\": {\n \"name\": \"tincheck_business\",\n \"message\": \"TIN/EIN passed\",\n \"success\": true\n }\n },\n \"created_at\": \"2020-12-11 02:31:10\",\n \"updated_at\": \"2020-12-17 07:17:06\",\n \"title\": \"SS4 or 147c3\",\n \"files\": []\n },\n {\n \"id\": \"RD11eb3bbd85936820828f2b181cd9c9d0\",\n \"registration_id\": \"pending\",\n \"registration_audit_log_id\": null,\n \"user_id\": \"user\",\n \"subject\": \"business\",\n \"type\": \"VOID_CHECK,BANK_LETTER\",\n \"required_by\": \"user\",\n \"is_enabled\": true,\n \"meta\": null,\n \"created_at\": \"2020-12-11 02:31:14\",\n \"updated_at\": \"2020-12-17 07:17:07\",\n \"title\": \"Void Check or Signed Bank Letter\",\n \"files\": []\n },\n {\n \"id\": \"RD11eb3bbd86740420828f2b181cd9c9d0\",\n \"registration_id\": \"pending\",\n \"registration_audit_log_id\": null,\n \"user_id\": \"user\",\n \"subject\": \"business\",\n \"type\": \"BUSINESS_LICENSE,UTILITY_BILL,LEASE\",\n \"required_by\": \"user\",\n \"is_enabled\": true,\n \"meta\": null,\n \"created_at\": \"2020-12-11 02:31:15\",\n \"updated_at\": \"2020-12-17 07:17:08\",\n \"title\": \"Business License, Utility Bill or Lease\",\n \"files\": []\n },\n {\n \"id\": \"RD11eb3bbd8752f270828f2b181cd9c9d0\",\n \"registration_id\": \"pending\",\n \"registration_audit_log_id\": null,\n \"user_id\": \"user\",\n \"subject\": \"business\",\n \"type\": \"MARKETING_MATERIAL\",\n \"required_by\": \"user\",\n \"is_enabled\": true,\n \"meta\": null,\n \"created_at\": \"2020-12-11 02:31:17\",\n \"updated_at\": \"2020-12-17 07:17:08\",\n \"title\": \"Marketing Materials\",\n \"files\": []\n },\n {\n \"id\": \"RD11eb3e25024747b08dcae1688ccea290\",\n \"registration_id\": \"pending\",\n \"registration_audit_log_id\": null,\n \"user_id\": \"user\",\n \"subject\": \"business\",\n \"type\": \"3_MONTHS_STATEMENTS\",\n \"required_by\": \"autoverify\",\n \"is_enabled\": true,\n \"meta\": {\n \"tooltip\": \"If past processing statements are unavailable, please upload past 3 months of bank statements.\",\n \"description\": \"Internal Verification\",\n \"verification_results\": {\n \"name\": \"internal-check_card-present-percent_business\",\n \"message\": \"card_present_percent less than 80%\",\n \"success\": false\n }\n },\n \"created_at\": \"2020-12-14 03:57:03\",\n \"updated_at\": \"2020-12-17 07:17:09\",\n \"title\": \"3 Months of Previous Processing Statements\",\n \"files\": []\n }\n ],\n \"principal_owner\": [\n {\n \"id\": \"RD11eb38a524992e30a8b919df3793afa4\",\n \"registration_id\": \"pending\",\n \"registration_audit_log_id\": \"42022cf7-a4ac-4842-ad44-8ab7a5ce4d2c\",\n \"user_id\": \"user\",\n \"subject\": \"principal_owner\",\n \"type\": \"DRIVERS_LICENSE,GOVERNMENT_ID\",\n \"required_by\": \"autoverify\",\n \"is_enabled\": true,\n \"meta\": {\n \"verification_results\": {\n \"name\": \"giact_gidentify_principal_owner\",\n \"message\": \"Identification failed\",\n \"success\": false\n }\n },\n \"created_at\": \"2020-12-07 03:59:09\",\n \"updated_at\": \"2020-12-17 07:17:12\",\n \"title\": \"Drivers License or Other Government Issued ID\",\n \"files\": []\n },\n {\n \"id\": \"RD11eb38a5249fe4f0a8b919df3793afa4\",\n \"registration_id\": \"pending\",\n \"registration_audit_log_id\": \"49cc416b-32f2-4bd6-985e-8045a09e4901\",\n \"user_id\": \"user\",\n \"subject\": \"principal_owner\",\n \"type\": \"SSN\",\n \"required_by\": \"autoverify\",\n \"is_enabled\": true,\n \"meta\": {\n \"verification_results\": {\n \"name\": \"tincheck_principal_owner\",\n \"message\": \"TIN/SSN invalid\",\n \"success\": false\n }\n },\n \"created_at\": \"2020-12-07 03:59:10\",\n \"updated_at\": \"2020-12-10 10:43:18\",\n \"title\": \"SSN Card\",\n \"files\": [\n {\n \"id\": \"b23f72a5-de72-490c-bc7a-cdc06b535f67\",\n \"merchant_id\": \"pending\",\n \"user_id\": \"user\",\n \"name\": \"PrincipalOwnerSocialSecurityCard.pdf\",\n \"path\": \"onboarding/b23f72a5-de72-490c-bc7a-cdc06b535f67.pdf\",\n \"public_url\": \"https://fake-bucket.s3.us-west-2.amazonaws.com/onboarding/b23f72a5-de72-490c-bc7a-cdc06b535f67.pdf\",\n \"tag\": \"onboarding\",\n \"meta\": {\n \"filesize_bytes\": 3028,\n \"filesize\": \"0.03 kB\",\n \"extension\": \"pdf\",\n \"size\": null,\n \"mime\": \"application/pdf\",\n \"onboardingMagType\": \"25\"\n },\n \"created_at\": \"2020-12-07T15:59:54.000Z\",\n \"updated_at\": \"2020-12-17T20:50:50.000Z\",\n \"deleted_at\": null\n }\n ]\n }\n ],\n \"beneficial_owner_1\": [\n {\n \"id\": \"RD11eb38a524995540a8b919df3793afa4\",\n \"registration_id\": \"pending\",\n \"registration_audit_log_id\": \"203a3b9d-0216-4dc6-8414-5c6c5fc739ff\",\n \"user_id\": \"user\",\n \"subject\": \"beneficial_owner_1\",\n \"type\": \"DRIVERS_LICENSE,GOVERNMENT_ID\",\n \"required_by\": \"autoverify\",\n \"is_enabled\": true,\n \"meta\": {\n \"verification_results\": {\n \"name\": \"giact_gidentify_beneficial_owner_1\",\n \"message\": \"Identification failed\",\n \"success\": false\n }\n },\n \"created_at\": \"2020-12-07 03:59:09\",\n \"updated_at\": \"2020-12-17 07:17:14\",\n \"title\": \"Drivers License or Other Government Issued ID\",\n \"files\": []\n },\n {\n \"id\": \"RD11eb38a524a05a20a8b919df3793afa4\",\n \"registration_id\": \"pending\",\n \"registration_audit_log_id\": \"3af923ab-8bc1-4e38-a2e4-e415f1cd9bab\",\n \"user_id\": \"user\",\n \"subject\": \"beneficial_owner_1\",\n \"type\": \"SSN\",\n \"required_by\": \"autoverify\",\n \"is_enabled\": true,\n \"meta\": {\n \"verification_results\": {\n \"name\": \"tincheck_beneficial_owner_1\",\n \"message\": \"TIN/SSN invalid\",\n \"success\": false\n }\n },\n \"created_at\": \"2020-12-07 03:59:10\",\n \"updated_at\": \"2020-12-17 07:17:14\",\n \"title\": \"SSN Card\",\n \"files\": []\n }\n ],\n \"beneficial_owner_2\": [\n {\n \"id\": \"RD11eb38a5249c1460a8b919df3793afa4\",\n \"registration_id\": \"pending\",\n \"registration_audit_log_id\": \"659fbb48-0e31-4807-a07a-372ad5c4e563\",\n \"user_id\": \"user\",\n \"subject\": \"beneficial_owner_2\",\n \"type\": \"DRIVERS_LICENSE,GOVERNMENT_ID\",\n \"required_by\": \"autoverify\",\n \"is_enabled\": true,\n \"meta\": {\n \"verification_results\": {\n \"name\": \"giact_gidentify_beneficial_owner_2\",\n \"message\": \"Identification failed\",\n \"success\": false\n }\n },\n \"created_at\": \"2020-12-07 03:59:10\",\n \"updated_at\": \"2020-12-07 04:03:09\",\n \"title\": \"Drivers License or Other Government Issued ID\",\n \"files\": []\n },\n {\n \"id\": \"RD11eb38a524a08130a8b919df3793afa4\",\n \"registration_id\": \"pending\",\n \"registration_audit_log_id\": \"6d738c3e-2580-483a-97eb-ea30acada2bf\",\n \"user_id\": \"user\",\n \"subject\": \"beneficial_owner_2\",\n \"type\": \"SSN\",\n \"required_by\": \"autoverify\",\n \"is_enabled\": true,\n \"meta\": {\n \"verification_results\": {\n \"name\": \"tincheck_beneficial_owner_2\",\n \"message\": \"TIN/SSN invalid\",\n \"success\": false\n }\n },\n \"created_at\": \"2020-12-07 03:59:10\",\n \"updated_at\": \"2020-12-07 04:03:09\",\n \"title\": \"SSN Card\",\n \"files\": [\n {\n \"id\": \"3317951c-82d1-49e5-857b-dc1a449e9505\",\n \"merchant_id\": \"pending\",\n \"user_id\": \"user\",\n \"name\": \"BeneficialOwner2SocialSecurityCard.pdf\",\n \"path\": \"onboarding/3317951c-82d1-49e5-857b-dc1a449e9505.pdf\",\n \"public_url\": \"https://fake-bucket.s3.us-west-2.amazonaws.com/onboarding/3317951c-82d1-49e5-857b-dc1a449e9505.pdf\",\n \"tag\": \"onboarding\",\n \"meta\": {\n \"filesize_bytes\": 3028,\n \"filesize\": \"0.03 kB\",\n \"extension\": \"pdf\",\n \"size\": null,\n \"mime\": \"application/pdf\",\n \"onboardingMagType\": \"35\"\n },\n \"created_at\": \"2020-12-15T20:54:25.000Z\",\n \"updated_at\": \"2020-12-17T20:47:54.000Z\",\n \"deleted_at\": null\n }\n ]\n }\n ]\n}"
schema:
type: object
properties:
business:
type: array
items:
type: object
properties:
id:
type: string
example: RD11eb38a5249891f0a8b919df3793afa4
registration_id:
type: string
example: pending
registration_audit_log_id:
type: string
example: cdc89a24-caad-46a8-9680-10f71adf1ef7
user_id:
type: string
example: user
subject:
type: string
example: business
type:
type: string
example: ARTICLES_ORGANIZATION,BUSINESS_DOCUMENT
required_by:
type: string
example: autoverify
is_enabled:
type: boolean
example: true
default: true
meta:
type: object
properties:
verification_results:
type: object
properties:
name:
type: string
example: giact_gidentify_business
message:
type: string
example: Identification failed
success:
type: boolean
example: false
default: true
created_at:
type: string
example: '2020-12-07 03:59:09'
updated_at:
type: string
example: '2020-12-17 07:17:07'
title:
type: string
example: Articles of Organization or Official Business Doc
files:
type: array
items:
type: object
properties:
id:
type: string
example: 9bc64deb-4fe8-47c4-be38-ce63b0912373
merchant_id:
type: string
example: pending
user_id:
type: string
example: user
name:
type: string
example: BusinessArticlesofOrganization.pdf
path:
type: string
example: onboarding/9bc64deb-4fe8-47c4-be38-ce63b0912373.pdf
public_url:
type: string
example: https://fake-bucket.s3.us-west-2.amazonaws.com/onboarding/9bc64deb-4fe8-47c4-be38-ce63b0912373.pdf
tag:
type: string
example: onboarding
meta:
type: object
properties:
filesize_bytes:
type: integer
example: 3028
default: 0
filesize:
type: string
example: 0.03 kB
extension:
type: string
example: pdf
size: {}
mime:
type: string
example: application/pdf
onboardingMagType:
type: string
example: '1'
created_at:
type: string
example: '2020-12-11T14:32:15.000Z'
updated_at:
type: string
example: '2020-12-17T20:41:26.000Z'
deleted_at: {}
principal_owner:
type: array
items:
type: object
properties:
id:
type: string
example: RD11eb38a524992e30a8b919df3793afa4
registration_id:
type: string
example: pending
registration_audit_log_id:
type: string
example: 42022cf7-a4ac-4842-ad44-8ab7a5ce4d2c
user_id:
type: string
example: user
subject:
type: string
example: principal_owner
type:
type: string
example: DRIVERS_LICENSE,GOVERNMENT_ID
required_by:
type: string
example: autoverify
is_enabled:
type: boolean
example: true
default: true
meta:
type: object
properties:
verification_results:
type: object
properties:
name:
type: string
example: giact_gidentify_principal_owner
message:
type: string
example: Identification failed
success:
type: boolean
example: false
default: true
created_at:
type: string
example: '2020-12-07 03:59:09'
updated_at:
type: string
example: '2020-12-17 07:17:12'
title:
type: string
example: Drivers License or Other Government Issued ID
files:
type: array
beneficial_owner_1:
type: array
items:
type: object
properties:
id:
type: string
example: RD11eb38a524995540a8b919df3793afa4
registration_id:
type: string
example: pending
registration_audit_log_id:
type: string
example: 203a3b9d-0216-4dc6-8414-5c6c5fc739ff
user_id:
type: string
example: user
subject:
type: string
example: beneficial_owner_1
type:
type: string
example: DRIVERS_LICENSE,GOVERNMENT_ID
required_by:
type: string
example: autoverify
is_enabled:
type: boolean
example: true
default: true
meta:
type: object
properties:
verification_results:
type: object
properties:
name:
type: string
example: giact_gidentify_beneficial_owner_1
message:
type: string
example: Identification failed
success:
type: boolean
example: false
default: true
created_at:
type: string
example: '2020-12-07 03:59:09'
updated_at:
type: string
example: '2020-12-17 07:17:14'
title:
type: string
example: Drivers License or Other Government Issued ID
files:
type: array
beneficial_owner_2:
type: array
items:
type: object
properties:
id:
type: string
example: RD11eb38a5249c1460a8b919df3793afa4
registration_id:
type: string
example: pending
registration_audit_log_id:
type: string
example: 659fbb48-0e31-4807-a07a-372ad5c4e563
user_id:
type: string
example: user
subject:
type: string
example: beneficial_owner_2
type:
type: string
example: DRIVERS_LICENSE,GOVERNMENT_ID
required_by:
type: string
example: autoverify
is_enabled:
type: boolean
example: true
default: true
meta:
type: object
properties:
verification_results:
type: object
properties:
name:
type: string
example: giact_gidentify_beneficial_owner_2
message:
type: string
example: Identification failed
success:
type: boolean
example: false
default: true
created_at:
type: string
example: '2020-12-07 03:59:10'
updated_at:
type: string
example: '2020-12-07 04:03:09'
title:
type: string
example: Drivers License or Other Government Issued ID
files:
type: array
'401':
description: '401'
content:
application/json:
examples:
Result:
value: "{\n \"name\": \"UnauthorizedError\",\n \"message\": \"Auth Error\",\n \"code\": \"invalid_token\",\n \"status\": 401,\n \"validation\": {\n \"token\": \"invalid\"\n }\n}"
schema:
type: object
properties:
name:
type: string
example: UnauthorizedError
message:
type: string
example: Auth Error
code:
type: string
example: invalid_token
status:
type: integer
example: 401
default: 0
validation:
type: object
properties:
token:
type: string
example: invalid
deprecated: false
security:
- PartnerApiKey: []
tags:
- Underwriting
/underwriting/disputes/{merchantId}:
get:
summary: List Disputes for a Merchant
description: Retrieves a paginated list (10 results per page) of disputes for the specified merchant in the request URL.
operationId: list-disputes-copy
parameters:
- name: id
in: query
description: Filters results by the dispute id.
schema:
type: string
- name: transaction_id
in: query
description: Filters results by the id of the dispute's associated transaction.
schema:
type: string
- name: status
in: query
description: Filters results according to the dispute's status in the process.
schema:
type: string
enum:
- INQUIRY
- OPEN
- PENDING
- ACCEPTED
- PREARBITRATION
- WON
- LOST
- EVIDENCE_UPLOADED
- UPLOAD_FAILED
- name: reason
in: query
description: Filters results according to the reason for the dispute's creation.
schema:
type: string
enum:
- TECHNICAL
- CLERICAL
- QUALITY
- FRAUD
- INQUIRY
- name: sort
in: query
description: The property by which the results are sorted
schema:
type: string
enum:
- respond_by
- created_at
- updated_at
- status
default: respond_by
- name: order
in: query
description: The order in which the results are sorted
schema:
type: string
enum:
- DESC
- ASC
- name: startDate
in: query
description: Filters results according to the dispute's created_at date.
schema:
type: string
format: date
- name: endDate
in: query
description: Filters results according to the dispute's created_at date.
schema:
type: string
format: date
- name: page
in: query
description: Each page returns up to 10 results.
schema:
type: integer
format: int32
- name: merchantId
in: path
description: The merchant ID value.
schema:
type: string
required: true
responses:
'200':
description: '200'
content:
application/json:
examples:
Result:
value: "{\n \"total\": 22,\n \"per_page\": 10,\n \"current_page\": 3,\n \"last_page\": 3,\n \"next_page_url\": null,\n \"prev_page_url\": \"https://apiprod.fattlabs.com/underwriting/disputes/merchant1?page=2\",\n \"from\": 21,\n \"to\": 22,\n \"data\": [\n {\n \"id\": \"07ad9751-443c-11ea-8e3f-0242ac140002\",\n \"transaction_id\": \"000e8694-d259-47ee-8fa1-bc0667e705a5\",\n \"merchant_id\": \"merchant1\",\n \"reason\": \"FRAUD\",\n \"amount\": 8888.88,\n \"status\": \"PENDING\",\n \"respond_by\": \"2020-01-20T23:48:03.000Z\",\n \"created_at\": \"2020-01-08T23:48:03.000Z\",\n \"updated_at\": \"2020-01-08T23:48:03.000Z\"\n },\n {\n \"id\": \"07dbfe08-443c-11ea-8e3f-0242ac140002\",\n \"transaction_id\": \"aca21c84-d37e-4d47-ad32-579dfda74458\",\n \"merchant_id\": \"merchant1\",\n \"reason\": \"FRAUD\",\n \"amount\": 8888.88,\n \"status\": \"EVIDENCE_UPLOADED\",\n \"respond_by\": \"2020-01-31T23:48:03.000Z\",\n \"created_at\": \"2020-01-08T23:48:03.000Z\",\n \"updated_at\": \"2020-01-08T23:48:03.000Z\"\n }\n ]\n}"
schema:
type: object
properties:
total:
type: integer
example: 22
default: 0
per_page:
type: integer
example: 10
default: 0
current_page:
type: integer
example: 3
default: 0
last_page:
type: integer
example: 3
default: 0
next_page_url: {}
prev_page_url:
type: string
example: https://apiprod.fattlabs.com/underwriting/disputes/merchant1?page=2
from:
type: integer
example: 21
default: 0
to:
type: integer
example: 22
default: 0
data:
type: array
items:
type: object
properties:
id:
type: string
example: 07ad9751-443c-11ea-8e3f-0242ac140002
transaction_id:
type: string
example: 000e8694-d259-47ee-8fa1-bc0667e705a5
merchant_id:
type: string
example: merchant1
reason
# --- truncated at 32 KB (43 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/stax/refs/heads/main/openapi/stax-underwriting-api-openapi.yml