开源 Odoo 19 支付插件:Raiffeisen RaiAccept
作为 AdriaMart 技术准备的一部分,我们开发了一个 Odoo 19 模块,对接 Odoo 电商平台与 Raiffeisen Bank RaiAccept 支付网关。模块已上架 Odoo 官方 Apps Store,同时以 LGPL-3 协议开源——对任何在塞尔维亚及周边地区使用 Odoo + RaiAccept 的公司都可直接使用。
- Odoo Apps:apps.odoo.com/apps/modules/19.0/payment_raiffeisen
- GitHub:github.com/AdriaMartHQ/payment_raiffeisen
功能特性
- 完整的 RaiAccept API 集成(创建订单、跳转结账、状态查询)
- 结算支持 RSD 或 EUR 两种币种
- 内置汇率转换(可配置汇率)
- 全额与部分退款可在 Odoo 后台一键完成
- 生产环境与 sandbox 凭据分离配置
- 地址字段西里尔自动转拉丁
- Webhook 处理使用网关端金额 / 币种权威校验(不信任客户端)
- 50+ 国家代码映射
支持的卡种与市场
卡种:Visa、Mastercard、DinaCard(塞尔维亚本地卡网络,Odoo 官方未内置,本模块以带 logo 的独立品牌记录补齐。)
Apple Pay / Google Pay —— 下个版本计划支持。
本模块适用于在以下地区持有 Raiffeisen 商户账户的商家:
| 国家 | 银行 | 结算币种 |
|---|---|---|
| 塞尔维亚 | Raiffeisen banka a.d. Beograd | RSD |
| 奥地利 | Raiffeisen Bank International | EUR |
| 克罗地亚 | Raiffeisenbank Austria d.d. Zagreb | EUR |
| 波黑 | Raiffeisen Bank d.d. BiH | EUR |
| 科索沃 | Raiffeisen Bank Kosovo | EUR |
| 阿尔巴尼亚 | Raiffeisen Bank Albania | EUR |
| 罗马尼亚 | Raiffeisen Bank Romania | EUR |
| 匈牙利 | Raiffeisen Bank Zrt. | EUR |
| 捷克 | Raiffeisenbank a.s. | EUR |
| 斯洛伐克 | Tatra banka(RBI 集团) | EUR |
| 乌克兰 | Raiffeisen Bank Ukraine | EUR |
客户侧不限地区都能付款——账单地址映射覆盖 50+ 个国家。
技术细节
- 用 AWS Cognito
USER_PASSWORD_AUTH做 RaiAccept API 认证 - 走
_get_specific_rendering_values的跳转流程 - 金额 / 币种以网关返回为准(不信任客户端)
- 多笔 transaction 时优先选成功的
PURCHASEtransaction ID - 退款 callback 按
transactionId路由到正确的 child transaction RSD按无小数位币种处理(minor unit factor:RSD=1,EUR=100)billingAddress.state字段按 RaiAccept 的 0-3 字符限制截取(无法生成短代码时直接省略)
环境要求
- Odoo 19.0(Community 或 Enterprise)
- Raiffeisen Bank RaiAccept 商户账户
- RaiAccept API 凭据(username + password)
安装
最快方式——从 Odoo Apps Store 安装:
- 打开 apps.odoo.com/apps/modules/19.0/payment_raiffeisen 下载模块
- 解压到你的 Odoo addons 路径
- 在 Odoo 里:设置 → 应用 → 更新应用列表
- 安装 Payment Provider: Raiffeisen RaiAccept
- 打开 会计 → 配置 → 支付提供商,输入凭据、选结算币种和汇率、启用
如果想跟最新 branch,也可以直接从 GitHub 克隆仓库。
RaiAccept 商户接入和测试卡号文档:docs.raiaccept.com
为什么开源
我们的团队正在为塞尔维亚市场筹备 Odoo 电商平台,RaiAccept 集成是其中一步。Odoo 本身是开源的,我们的模块自然也应回馈社区。任何用相同组合(Odoo + RaiAccept)的团队都可以安装、测试、贡献代码。
欢迎 pull request 与 issue。
关于 AdriaMart
AdriaMart 是在塞尔维亚注册的电商项目,目前处于开业前筹备阶段。本模块是技术准备的产出之一。建议与问题请联系 [email protected] 或 GitHub Issues。
授权:LGPL-3 —— 可自由使用、修改、再分发。