Two · Schema
InvoiceDetailsWithStatusSchema
CompanyB2B PaymentsFinTechAPI PlatformCheckoutTrade Accounts
Properties
| Name | Type | Description |
|---|---|---|
| payee | object | |
| payment_reference | object | |
| payment_reference_type | object | |
| payment_reference_message | string | Text that will be attached to the payment in order for the merchant to reconcile the payment. |
| payment_reference_ocr | string | A string of numbers that will be attached to the payment in order for the merchant to reconcile the payment. E.g. "KID-nummer" in Norway. |
| payment_status | object | |
| due_in_days | object | Please add terms to order instead, with type NET_TERMS and duration_days |
| invoice_number | object | |
| invoice_issue_date | object | |
| due_date | object | |
| invoice_emails | object | We will send invoices to all of the email addresses. |
| id | string | |
| status | object | Status of invoice, mainly interested if has a status of REPLACED from an invoice edit |
| invoice_url | object | |
| due_in_days_calculation_method | object | Method for calculating payment terms (e.g., END_OF_MONTH, END_OF_WEEK) at fulfillment. |
| requested_due_in_days | object | The duration_days value requested at order creation, before applying the due_in_days_calculation_method at fulfillment. |
| recourse_request_status | object | Status of recourse request if one exists (PENDING, APPROVED, REJECTED). |
| gross_amount | string | |
| net_amount | string | |
| tax_amount | string | |
| total_paid_amount | string | |
| total_credited_amount | string | |
| total_collected_amount | string | |
| total_recoursed_amount | string | |
| unpaid_amount | string | |
| statement_number | object | |
| billing_period_id | object | |
| last_updated | string |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/two/json-schema/two-invoice-details-with-status-schema-schema.json",
"title": "InvoiceDetailsWithStatusSchema",
"x-generated": "2026-10-29",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/two-openapi.yaml#/components/schemas/InvoiceDetailsWithStatusSchema",
"properties": {
"payee": {
"anyOf": [
{
"$ref": "#/$defs/BankAccountSchema"
},
{
"type": "null"
}
],
"default": null
},
"payment_reference": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Payment Reference"
},
"payment_reference_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Payment Reference Type"
},
"payment_reference_message": {
"default": "",
"description": "Text that will be attached to the payment in order for the merchant to reconcile the payment.",
"title": "Payment Reference Message",
"type": "string"
},
"payment_reference_ocr": {
"default": "",
"description": "A string of numbers that will be attached to the payment in order for the merchant to reconcile the payment. E.g. \"KID-nummer\" in Norway.",
"title": "Payment Reference Ocr",
"type": "string"
},
"payment_status": {
"anyOf": [
{
"$ref": "#/$defs/PaymentStatusEnum"
},
{
"type": "null"
}
],
"default": null
},
"due_in_days": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"deprecated": true,
"description": "Please add terms to order instead, with type NET_TERMS and duration_days",
"title": "Due In Days"
},
"invoice_number": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Invoice Number"
},
"invoice_issue_date": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Invoice Issue Date"
},
"due_date": {
"anyOf": [
{
"format": "date",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Due Date"
},
"invoice_emails": {
"anyOf": [
{
"items": {
"format": "email",
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"default": null,
"description": "We will send invoices to all of the email addresses.",
"title": "Invoice Emails"
},
"id": {
"format": "uuid",
"title": "Id",
"type": "string"
},
"status": {
"anyOf": [
{
"$ref": "#/$defs/InvoiceStatusEnum"
},
{
"type": "null"
}
],
"default": "PENDING",
"description": "Status of invoice, mainly interested if has a status of REPLACED from an invoice edit"
},
"invoice_url": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Invoice Url"
},
"due_in_days_calculation_method": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Method for calculating payment terms (e.g., END_OF_MONTH, END_OF_WEEK) at fulfillment.",
"title": "Due In Days Calculation Method"
},
"requested_due_in_days": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "The duration_days value requested at order creation, before applying the due_in_days_calculation_method at fulfillment.",
"title": "Requested Due In Days"
},
"recourse_request_status": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"description": "Status of recourse request if one exists (PENDING, APPROVED, REJECTED).",
"title": "Recourse Request Status"
},
"gross_amount": {
"format": "decimal",
"pattern": "^-?[0-9]+(\\.[0-9]{0,2})?",
"title": "Gross Amount",
"type": "string"
},
"net_amount": {
"format": "decimal",
"pattern": "^-?[0-9]+(\\.[0-9]{0,2})?",
"title": "Net Amount",
"type": "string"
},
"tax_amount": {
"format": "decimal",
"pattern": "^-?[0-9]+(\\.[0-9]{0,2})?",
"title": "Tax Amount",
"type": "string"
},
"total_paid_amount": {
"format": "decimal",
"pattern": "^-?[0-9]+(\\.[0-9]{0,2})?",
"title": "Total Paid Amount",
"type": "string"
},
"total_credited_amount": {
"format": "decimal",
"pattern": "^-?[0-9]+(\\.[0-9]{0,2})?",
"title": "Total Credited Amount",
"type": "string"
},
"total_collected_amount": {
"format": "decimal",
"pattern": "^-?[0-9]+(\\.[0-9]{0,2})?",
"title": "Total Collected Amount",
"type": "string"
},
"total_recoursed_amount": {
"format": "decimal",
"pattern": "^-?[0-9]+(\\.[0-9]{0,2})?",
"title": "Total Recoursed Amount",
"type": "string"
},
"unpaid_amount": {
"format": "decimal",
"pattern": "^-?[0-9]+(\\.[0-9]{0,2})?",
"title": "Unpaid Amount",
"type": "string"
},
"statement_number": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Statement Number"
},
"billing_period_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Billing Period Id"
},
"last_updated": {
"format": "date-time",
"title": "Last Updated",
"type": "string"
}
},
"required": [
"id",
"gross_amount",
"net_amount",
"tax_amount",
"total_paid_amount",
"total_credited_amount",
"total_collected_amount",
"total_recoursed_amount",
"unpaid_amount",
"last_updated"
],
"type": "object",
"$defs": {
"BankAccountSchema": {
"properties": {
"id": {
"anyOf": [
{
"format": "uuid",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Id"
},
"bban": {
"anyOf": [
{
"maxLength": 30,
"minLength": 7,
"pattern": "^[0-9A-Za-z]*$",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Bban"
},
"iban": {
"anyOf": [
{
"maxLength": 34,
"minLength": 15,
"pattern": "^[0-9A-Za-z]*$",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Iban"
},
"bic": {
"anyOf": [
{
"maxLength": 12,
"minLength": 8,
"pattern": "^[0-9A-Za-z]*$",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Bic"
},
"country_code": {
"anyOf": [
{
"$ref": "#/$defs/CountryCodeEnum"
},
{
"type": "null"
}
],
"default": null
},
"branch_sort_code": {
"anyOf": [
{
"maxLength": 9,
"pattern": "^[0-9]*$",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Branch Sort Code"
},
"local_account_number": {
"anyOf": [
{
"maxLength": 12,
"minLength": 8,
"pattern": "^[0-9]*$",
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Local Account Number"
},
"organization_name": {
"anyOf": [
{
"maxLength": 140,
"minLength": 1,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Organization Name"
},
"organization_number": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Organization Number"
},
"description": {
"anyOf": [
{
"maxLength": 255,
"minLength": 1,
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Description"
},
"kid_type": {
"anyOf": [
{
"$ref": "#/$defs/KidTypeEnum"
},
{
"type": "null"
}
],
"default": null
}
},
"title": "BankAccountSchema",
"type": "object"
},
"CountryCodeEnum": {
"enum": [
"AD",
"AE",
"AL",
"AM",
"AO",
"AR",
"AT",
"AU",
"AZ",
"BA",
"BB",
"BD",
"BE",
"BF",
"BG",
"BH",
"BI",
"BJ",
"BN",
"BO",
"BR",
"BS",
"BW",
"CA",
"CG",
"CH",
"CL",
"CM",
"CO",
"CR",
"CY",
"CZ",
"DE",
"DJ",
"DK",
"DO",
"DZ",
"EC",
"EE",
"EG",
"ES",
"ET",
"FI",
"FJ",
"FR",
"GA",
"GB",
"GE",
"GH",
"GN",
"GQ",
"GR",
"GT",
"GY",
"HN",
"HR",
"HT",
"HU",
"ID",
"IE",
"IL",
"IN",
"IQ",
"IS",
"IT",
"JM",
"JO",
"JP",
"KE",
"KG",
"KH",
"KR",
"KW",
"KZ",
"LA",
"LB",
"LI",
"LK",
"LT",
"LU",
"LV",
"LR",
"MA",
"MC",
"MD",
"ME",
"MG",
"MK",
"MN",
"MR",
"MT",
"MU",
"MV",
"MW",
"MX",
"MY",
"MZ",
"NA",
"NE",
"NG",
"NL",
"NO",
"NP",
"NZ",
"OM",
"PA",
"PE",
"PG",
"PH",
"PK",
"PL",
"PT",
"PY",
"QA",
"RO",
"RS",
"RW",
"SA",
"SE",
"SG",
"SI",
"SK",
"SL",
"SN",
"SR",
"SV",
"SZ",
"TD",
"TG",
"TH",
"TJ",
"TM",
"TN",
"TR",
"TT",
"TZ",
"UA",
"UG",
"US",
"UY",
"UZ",
"VN",
"ZA",
"ZM"
],
"title": "CountryCodeEnum",
"type": "string"
},
"InvoiceStatusEnum": {
"enum": [
"PENDING",
"ACTIVE",
"REPLACED"
],
"title": "InvoiceStatusEnum",
"type": "string"
},
"KidTypeEnum": {
"enum": [
"MOD_10",
"MOD_11",
"NONE"
],
"title": "KidTypeEnum",
"type": "string"
},
"PaymentStatusEnum": {
"enum": [
"NOT_PAID",
"PAID",
"PARTIAL_PAYMENT",
"OVERDUE",
"IN_COLLECTIONS",
"CANCELLED",
"REFUNDED",
"PARTIAL_REFUND",
"RECOURSED",
"PARTIAL_RECOURSE"
],
"title": "PaymentStatusEnum",
"type": "string"
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/two-invoice-details-with-status-schema"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.