支付提供商¶
- class odoo.addons.payment.models.payment_provider.PaymentProvider[源代码]¶
- _compute_feature_support_fields()[源代码]¶
根据提供商计算功能支持字段。
功能支持字段用于指定某个提供商支持哪些附加功能。这些字段如下:
support_express_checkout
:是否支持“快速结账”功能,默认为False
。support_manual_capture
:是否支持“手动捕获”功能,默认为False
。support_refund
:支持哪种类型的“退款”功能:None
、'full_only'
或'partial'
,默认为None
。support_tokenization
:是否支持“令牌化功能”,默认为False
。
为了指定某个提供商支持附加功能,它必须重写此方法,并在适当的
payment.provider
记录上将相关功能支持字段设置为所需的值。- 返回
无
- _get_compatible_providers(company_id, partner_id, amount, currency_id=None, force_tokenization=False, is_express_checkout=False, is_validation=False, report=None, **kwargs)[源代码]¶
搜索并返回符合兼容性条件的提供商。
兼容性条件包括:提供商不得被禁用;必须属于所提供的公司;如果存在,则支持合作伙伴所在国家;如果提供货币,则必须与之兼容。如果提供,可选的关键字参数将进一步细化条件。
- 参数
company_id (int) – 提供商必须所属的公司,作为
res.company
ID。partner_id (int) – 进行支付的合作伙伴,作为
res.partner
ID。amount (float) – 需支付的金额。对于验证交易为
0
。currency_id (int) – 如果事先已知,支付货币作为
res.currency
ID。force_tokenization (bool) – 是否仅允许支持令牌化的提供商匹配。
is_express_checkout (bool) – 支付是否通过快速结账完成。
is_validation (bool) – 操作是否为验证。
report (dict) – 每个提供商的可用状态和原因必须记录在其中的报告。
kwargs (dict) – 可选数据。此参数在此处未使用。
- 返回
兼容的提供商。
- 返回类型
payment.provider
- _get_redirect_form_view(is_validation=False)[源代码]¶
返回用于渲染重定向表单的模板视图。
如果提供商需要根据操作是否为验证返回不同的视图,则必须覆盖此方法并返回适当的视图。
注意:
self.ensure_one()
- 参数
is_validation (bool) – 操作是否为验证。
- 返回
重定向表单模板的视图。
- 返回类型
ir.ui.view
的记录
- _get_validation_amount()[源代码]¶
返回用于验证操作的金额。
为了支持令牌化,提供商必须覆盖此方法并返回验证金额。如果金额为
0
,则无需创建覆盖。注意:
self.ensure_one()
- 返回
验证金额。
- 返回类型
- _get_validation_currency()[源代码]¶
返回用于验证操作的货币。
验证货币必须同时被提供商和支付方式支持。如果未传递支付方式,则仅考虑提供商支持的货币。如果未找到合适的货币,则返回提供商公司的货币。
为了使提供商支持令牌化并指定不同的验证货币,它必须重写此方法并返回适当的验证货币。
注意:
self.ensure_one()
- 返回
验证货币。
- 返回类型
res.currency
的记录集
- _is_tokenization_required(**kwargs)[源代码]¶
根据交易上下文返回是否需要对交易进行令牌化。
为了使模块基于支付上下文要求令牌化,它必须重写此方法并返回是否需要令牌化。