支付提供商¶
- 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记录上将相关功能支持字段设置为所需的值。- 返回
无
- _find_available_payment_methods(partner_id, *, currency_id=None, force_tokenization=False, is_express_checkout=False, report=None, **_kwargs)[源代码]¶
查找在给定支付上下文中可用的提供商支付方式。
- _find_available_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.companyID 表示partner_id (int) – 进行支付的合作伙伴,以
res.partnerID 表示amount (float) – 要支付的金额(验证交易时为
0)currency_id (int) – 支付货币,以
res.currencyID 表示force_tokenization (bool) – 提供商是否必须允许令牌化
is_express_checkout (bool) – 提供商是否必须允许快速结账
is_validation (bool) – 该操作是否为验证
report (dict) – 用于记录可用性状态的报告
kwargs (dict) – 转发给
_is_tokenization_required,并可供覆盖使用
- 返回
可用的提供商
- 返回类型
payment.provider
- _find_available_tokens(partner_id, **_kwargs)[源代码]¶
查找在给定支付上下文中可用的提供商令牌。
- 参数
partner_id (int) – 进行支付的合作伙伴,以
res.partnerID 表示- 返回
可用的令牌
- 返回类型
payment.token
- _get_pm_from_code(generic_code, mapping=None)[源代码]¶
返回与提供商关联的具有给定代码的支付方式。
如果提供了映射,搜索将使用与给定提供商特定代码对应的通用支付方式代码。
- _get_redirect_form_view(is_validation=False)[源代码]¶
返回用于渲染重定向表单的模板视图。
如果提供商需要根据操作是否为验证返回不同的视图,则必须覆盖此方法并返回适当的视图。
注意:
self.ensure_one()- 参数
is_validation (bool) – 操作是否为验证。
- 返回
重定向表单模板的视图。
- 返回类型
ir.ui.view的记录
- _get_removal_values()[源代码]¶
当其模块卸载时,返回用于更新提供商的值。
为了使模块指定额外的移除值,它必须重写此方法,并用其特定值补充通用值。
- 返回
用于更新已移除提供商的移除值。
- 返回类型
- _get_supported_currencies()[源代码]¶
返回付款提供商支持的货币。
默认情况下,所有货币(包括非活跃货币)都被视为受支持。如果提供商要过滤掉特定货币,必须重写此方法并返回受支持货币的子集。
注意:
self.ensure_one()- 返回
支持的货币。
- 返回类型
res.currency
- _get_validation_amount()[源代码]¶
返回用于验证操作的金额。
为了支持令牌化,提供商必须覆盖此方法并返回验证金额。如果金额为
0,则无需创建覆盖。注意:
self.ensure_one()- 返回
验证金额。
- 返回类型
- _get_validation_currency()[源代码]¶
返回用于验证操作的货币。
验证货币必须同时被提供商和支付方式支持。如果未传递支付方式,则仅考虑提供商支持的货币。如果未找到合适的货币,则返回提供商公司的货币。
为了使提供商支持令牌化并指定不同的验证货币,它必须重写此方法并返回适当的验证货币。
注意:
self.ensure_one()- 返回
验证货币。
- 返回类型
res.currency的记录集
- _is_tokenization_required(**_kwargs)[源代码]¶
根据交易上下文返回是否需要对交易进行令牌化。
为了使模块基于支付上下文要求令牌化,它必须重写此方法并返回是否需要令牌化。
- _parse_response_error(response)[源代码]¶
从响应中检索错误消息。
此方法用作钩子,允许提供商解析响应的错误消息。
- 参数
response (requests.Response) – 要解析的响应。
- 返回
错误消息。
- 返回类型