Payflex · Schema
Create Order Request
Request body for creating a new Payflex BNPL installment payment order via POST /order/productSelect
BNPLBuy Now Pay LaterPaymentsInstallmentsSouth AfricaFintechE-Commerce
Properties
| Name | Type | Description |
|---|---|---|
| amount | string | Total order amount formatted to two decimal places |
| consumer | object | Consumer contact information |
| billing | object | Billing address |
| shipping | object | Shipping address |
| description | string | Human-readable order description |
| items | array | Line items in the order |
| merchant | object | Merchant redirect URLs for post-checkout flow |
| merchantReference | string | Merchant's own order reference number |
| taxAmount | number | Tax amount included in the order total |
| shippingAmount | number | Shipping amount included in the order total |
| merchantSystemInformation | object | Integration platform metadata for Payflex diagnostics |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/payflex/main/json-schema/create-order-request.json",
"title": "Create Order Request",
"description": "Request body for creating a new Payflex BNPL installment payment order via POST /order/productSelect",
"type": "object",
"required": ["amount", "consumer", "merchant", "merchantReference"],
"properties": {
"amount": {
"type": "string",
"description": "Total order amount formatted to two decimal places",
"pattern": "^\\d+\\.\\d{2}$",
"example": "299.99"
},
"consumer": {
"type": "object",
"description": "Consumer contact information",
"required": ["phoneNumber", "givenNames", "surname", "email"],
"properties": {
"phoneNumber": {
"type": "string",
"description": "Consumer's phone number including country code",
"example": "+27821234567"
},
"givenNames": {
"type": "string",
"description": "Consumer's first name(s)",
"example": "Jane"
},
"surname": {
"type": "string",
"description": "Consumer's last name",
"example": "Smith"
},
"email": {
"type": "string",
"format": "email",
"description": "Consumer's email address",
"example": "jane.smith@example.com"
}
}
},
"billing": {
"type": "object",
"description": "Billing address",
"properties": {
"addressLine1": { "type": "string", "example": "12 Main Street" },
"addressLine2": { "type": "string", "example": "Apt 3" },
"suburb": { "type": "string", "example": "Cape Town" },
"postcode": { "type": "string", "example": "8001" }
}
},
"shipping": {
"type": "object",
"description": "Shipping address",
"properties": {
"addressLine1": { "type": "string", "example": "12 Main Street" },
"addressLine2": { "type": "string", "example": "Apt 3" },
"suburb": { "type": "string", "example": "Cape Town" },
"postcode": { "type": "string", "example": "8001" }
}
},
"description": {
"type": "string",
"description": "Human-readable order description",
"example": "Order from Example Store"
},
"items": {
"type": "array",
"description": "Line items in the order",
"items": {
"type": "object",
"required": ["name", "quantity", "price"],
"properties": {
"name": { "type": "string", "description": "Product name", "example": "Blue T-Shirt" },
"sku": { "type": "string", "description": "Product SKU", "example": "SKU-001" },
"quantity": { "type": "string", "description": "Quantity as string", "example": "2" },
"price": { "type": "string", "description": "Unit price to two decimal places", "example": "99.99" }
}
}
},
"merchant": {
"type": "object",
"description": "Merchant redirect URLs for post-checkout flow",
"required": ["redirectConfirmUrl", "redirectCancelUrl"],
"properties": {
"redirectConfirmUrl": {
"type": "string",
"format": "uri",
"description": "URL to redirect consumer after successful payment",
"example": "https://example.com/checkout/confirm?status=confirmed"
},
"redirectCancelUrl": {
"type": "string",
"format": "uri",
"description": "URL to redirect consumer after cancelled payment",
"example": "https://example.com/checkout/cancel?status=cancelled"
}
}
},
"merchantReference": {
"type": "string",
"description": "Merchant's own order reference number",
"example": "12345"
},
"taxAmount": {
"type": "number",
"description": "Tax amount included in the order total",
"example": 0
},
"shippingAmount": {
"type": "number",
"description": "Shipping amount included in the order total",
"example": 0
},
"merchantSystemInformation": {
"type": "object",
"description": "Integration platform metadata for Payflex diagnostics",
"properties": {
"plugin_version": { "type": "string", "example": "2.7.0" },
"php_version": { "type": "string", "example": "8.1.0" },
"ecommerce_platform": { "type": "string", "example": "WooCommerce 8.0" },
"total_plugin_modules": { "type": "string", "example": "25" },
"active_plugin_modules": { "type": "string", "example": "12" }
}
}
}
}
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/create-order-request"
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.