参与性筹资
7种产品,收益来自实际交易或风险的结果,而不是宣布的利率。 合伙企业支付风险所得。分期销售在签署时就获得一次协议的加价,这种加价不会随时间而增长。租赁所得的租金是出租人实际拥有的。
它们共用一个存储层和一组算术,它们分两个读数提供.
同一合同的两段读数
每种产品都有一个 世俗阅读 备注a 宗教读物合同、金钱、分类账和附表是相同的,其词汇和审查要求各不相同。
| 产品 | 静脉末端( 本节) | 宗教阅读 |
|---|---|---|
| 伙伴关系 | /api/v1/pfp/partnerships | 木沙拉卡语Name |
| 分批销售 | /api/v1/pfp/installment-sales | 穆拉巴哈语 |
| 租赁 | /api/v1/pfp/leases | 伊贾拉 |
| 管理的投资 | /api/v1/pfp/managed-investments | 穆达拉巴 |
| 证书发放 | /api/v1/pfp/certificate-issues | 苏库克语Name |
| 保管存款 | /api/v1/pfp/safekeeping-deposits | 瓦迪亚 |
| 投资存款 | /api/v1/pfp/investment-deposits | 穆达拉巴存款 |
宗教读物生活在 /api/v1/baas/islamic-banking/{product_type} 并可供平台运营商和持照银行使用,而不是提供给合作伙伴。 伊斯兰银行 在客户端文档中。
读数之间的实际差异是:
| 世俗 | 宗教 | |
|---|---|---|
| 合同编号前缀 | PRT, INS, LSE, MIV, CRT, SFK, IVD | MSH, MRB, IJR, MUD, SKK, WDA, MUDD |
| 审查 | 可选合同,无合同可供资 | 强制性. 未经审查委员会结论无法获得资金 |
| 反应形状 | 拼写字段列表; 作为字符串的金额 | 空字段的存储记录投放; 数值为整数 |
| 字段名称、算术、时间表、分类账 | 同样的 | 同样的 |
字段名称在两种读数中都是一样的——. compliance_review, markup_rate, custody_type ——因为两种读物都写着相同的栏目,宗教词汇生活在合同文件和操作员的柜子里,而不是在线上.
在一个版本中创建的合同是: ** 没有** 两个地址的家庭是孤立的:在宗教地址返回时要求签订世俗契约。 404,反之亦然。
访问
这些终点要求: 参与性筹资 模块,由您的平台操作员为您的组织激活。
如果不是,本节的每一个终点都会回答:
{
"error": "module_not_active",
"message": "Module 'participatory_finance' is not activated for this organization",
"details": { "module_id": "participatory_finance" }
}
与 HTTP 403。联系您的平台操作员,使其启用。
认证
** 会话符号,不是 API 键。** 这些端点不读 x-api-key 完全不像现在这样
支付结束点,他们坐在会话管道后面, 所以单凭一个键被拒绝 401 no
无论它多么有效。从 POST /api/v1/session (见
认证方法 2),并当作熊耳符寄去.
x-organization-id is 所需经费 平台决定了您
组织内部的会话 标题名称, 以及这些端点前面的模块门
在任何商业逻辑运行前拒绝一个没有它的请求。您得到的代码遵循了通常的代码 。
叉( 双叉)错误:没有信头,合伙人的标志甚至无法解决,所以
它读作未知,然后回来 401; 管理员或客户代号 * 是 * 可解决,所以拒绝是
更具体 400 organization_required.
curl https://4pay.online/api/v1/pfp/partnerships \
-H "Authorization: Bearer $TOKEN" \
-H "x-organization-id: 00000000-1111-2222-3333-444444444444"
基础 URL: https://4pay.online/api/v1/pfp
公约
钱是整数小单位,作为字符串发送
每个货币领域都是 最小货币单位的整数 ——可佩克,美分,薄膜——编码为a. JSON 字符串.
{ "total_value": "150000000", "currency": "RUB" }
这是 1 500 000,00 RUB。没有 150 000 000 RUB,而不会 1 500 000 RUB.
接下来是两条规则 两者在实际操作中都咬伤:
- 发送前换算为货币的最小单位。 用户在表单中输入
1500表示 1 500 RUB,在线路上传输的值应为"150000"。发送"1500"仅记入十五卢布。 - 不要转换为 JavaScript number。 金额可能超过
Number.MAX_SAFE_INTEGER,parseFloat也可能造成静默舍入。请保留字符串,或使用BigInt。
大多数量字段必须是 绝对正面 (^[1-9]\d*$),每个终点都有例外之处:可以零余额开立保管账户,租赁欠款为零来清除拖欠行为。
百分比为整数
| 外地 | 单位 | 示例 |
|---|---|---|
profit_sharing_ratio | 全部比例,双方必须总和 100 | {"bank": 60, "customer": 40} |
markup_rate | 基准点 | 1500 means 15 % |
expected_yield, indicative_rate | 整体百分比 | 7 means 7 % |
bank_ownership_percent | 整体百分比, 得出—— 不稳定 | 60 |
markup_rate 是捉人者:这是底点,所以 15 % is 1500,没有 15.
双方是: bank 和 customer
每个产品中,合同的双方都得名 bank 和 customer 在有效载荷中——融资方及其交易对手,这些名称具有历史意义,并不意味着银行执照:在合作社中, bank 是基金,以及 customer 成员。
数额,数额
回复回数也作为字符串,以及 null 一个字段从未设置。 A null 数量表示 * 未指定*; a "0" * 表示指定和零*。 "minimum_balance": null 没有最小的,一个有 "minimum_balance": "0" 最少为零。
合同编号
每份合同都有一个 contract_number 创作,形式 PREFIX-REGION-YYYYMMDD-XXXXXX:
PRT-P-RU-20260823-4A7F1C
前缀编码产品 及其读本 — PRT-P 在世俗的阅读中是一种永久的伙伴关系, MSH-P 地区是双字母合同区,或 XX 。最后一个组是六个随机十六进制数字,而不是一个计数器:在同一区域同一天创建的两个合同由它来区分,碰撞被一个独特的指数所拒绝,而不是被忽略。
数字由平台生成,不能设置或更改.
环境
每个端点都接受可选的 env 查询参数, test or prod默认为 prod试验-环境合同是分开储存的,从未寄入生产分类账。
共同生命周期
7种产品中有5种遵循相同的开场顺序:
draft ──submit──> under_review ──review──> review_passed ──> (funding) ──> active
│
└──reject──> rejected
draft——创建,可编辑,无动于衷.under_review——报批;双方正在商定条件.review_passed随函附上一个结论,现在可以转移资金。rejected- 一个终端状态。拒绝需要reason.
之后 active,每个产品都有差异:分期销售完成或违约,租约返还或终止,合伙企业解散,证书签发到期和赎回.
这两种存款产品没有审查阶段——它们始于 pending 打开 activate.
审查对象
POST /{product}/{id}/review 附于批准记录。该记录保存在合同中。 compliance_review.
{
"approved_by": "Investment Committee, minutes 14/2026",
"signed_at": "2026-08-01",
"document_ref": "IC-2026-014",
"note": "Approved subject to quarterly reporting"
}
approved_by is 需要且不得为空白. 其他三个领域是自由的。在世俗阅读中,审查是可选的。 draft 直接通过没有一项资金——但如果附上审查,必须指明批准者。
五种合同产品均提供 POST /{product}/{id}/reject,接收 reason,执行后进入终态。两种存款产品均不提供这两项操作。
错误
格式是平台标准——参见: 引用错误.
| 代码 | 本节的含义 |
|---|---|
400 | 身体不整齐,或无法分割 |
403 | 那个... participatory_finance 模块对您的组织不活动 |
404 | 没有这个合同 ID ** 在读本中** - 检查你是不是在谈宗教阅读合同 |
422 | 验证失败 。 details 名称字段: 捐款不与总价值相交, 利润股不与 100,不允许从当前状态过渡 |
那个... details 地图带有平台本身的验证字符串,对于这个产品家族来说,它们都是俄语的。它们意在显示您的日志和支持,而不是显示给终端用户,即当您在自己的界面中显示错误时,绘制字段名称,而不是信息。
试图从错误的状态返回中过渡 422 当前状态命名为:
{
"error": "unprocessable_entity",
"details": { "status": ["переход недоступен из стадии draft"] }
}
下一个去哪里?
| 产品 | 使用它的时候 |
|---|---|
| 伙伴关系 | 双方将资本投入到共同的经营中,分享其所得 |
| 分批销售 | 买家现在需要资产 并用固定的加价支付 |
| 租赁 | 用户需要使用资产;所有人保留所有权和所有权成本 |
| 管理的投资 | 一方提供资本,另一方提供工程 |
| 证书发放 | 许多持有者资助一项资产并分享其收入 |
| 保管存款 | 保证本金和保证不归还的要求账户 |
| 投资存款 | 定期存款的回报取决于结果,而不是利率 |