Odoo 19.0 Community · Persistent

payment.provider: fields, relations and API

The payment.provider model ("Payment Provider") is a persistent model declared by the Payment Engine module, then extended by 28 other modules. It exposes 120 fields, 114 of them declared directly on the model; 7 fields from other models point to it. Below you will find every field with its technical name, type, label and relations, followed by an Odoo 19 JSON-2 API call.

Model identity

Technical name
payment.provider
Label
Payment Provider
Type
Persistent (models.Model)
SQL table
payment_provider
Origin module
Payment Engine (payment)
Extended by
account_payment, sale, payment_custom, delivery, payment_adyen, payment_aps, payment_asiapay, payment_authorize, payment_buckaroo, payment_demo, payment_dpo, payment_ecpay, payment_flutterwave, payment_iyzico, payment_mercado_pago, payment_mollie, payment_nuvei, payment_paymob, payment_paypal, payment_payu, payment_razorpay, payment_redsys, payment_stripe, payment_toss_payments, payment_worldline, payment_xendit, website_payment, website_sale_collect
Default order (_order)
module_state, state desc, sequence, name

Model fields

114 own fields, 0 inherited from mixins and 6 automatic ORM fields. Click a name to get a direct link to that field.

120 of 120 fields shown

Technical nameLabelTypeDetails
adyen_api_keyAPI Key

The API key of the webservice user

char

added by Payment Provider: Adyen (payment_adyen)

adyen_api_url_prefixAPI URL Prefix

The base URL for the API endpoints

char

added by Payment Provider: Adyen (payment_adyen)

adyen_client_keyClient Key

The client key of the webservice user

char

added by Payment Provider: Adyen (payment_adyen)

adyen_hmac_keyHMAC Key

The HMAC key of the webhook

char

added by Payment Provider: Adyen (payment_adyen)

adyen_merchant_accountMerchant Account

The code of the merchant account to use with this provider

char

added by Payment Provider: Adyen (payment_adyen)

allow_express_checkoutAllow Express Checkout

This controls whether customers can use express payment methods. Express checkout enables customers to pay with Google Pay and Apple Pay from which address information is collected at payment.

boolean
allow_tokenizationAllow Saving Payment Methods

This controls whether customers can save their payment methods as payment tokens. A payment token is an anonymous link to the payment method details saved in the provider's database, allowing the customer to reuse it for a next purchase.

boolean
aps_access_codeAPS Access Code

The access code associated with the merchant account.

char

added by Payment Provider: Amazon Payment Services (payment_aps)

aps_merchant_identifierAPS Merchant Identifier

The code of the merchant account to use with this provider.

char

added by Payment Provider: Amazon Payment Services (payment_aps)

aps_sha_requestAPS SHA Request Phrasechar

added by Payment Provider: Amazon Payment Services (payment_aps)

aps_sha_responseAPS SHA Response Phrasechar

added by Payment Provider: Amazon Payment Services (payment_aps)

asiapay_brandAsiapay Brand

The brand associated to your AsiaPay account.

selection

Values: paydollar (PayDollar), pesopay (PesoPay), siampay (SiamPay), bimopay (BimoPay)

added by Payment Provider: AsiaPay (payment_asiapay)

asiapay_merchant_idAsiaPay Merchant ID

The Merchant ID solely used to identify your AsiaPay account.

char

added by Payment Provider: AsiaPay (payment_asiapay)

asiapay_secure_hash_functionAsiaPay Secure Hash Function

The secure hash function associated to your AsiaPay account.

selection

Values: sha1 (SHA1), sha256 (SHA256), sha512 (SHA512)

added by Payment Provider: AsiaPay (payment_asiapay)

asiapay_secure_hash_secretAsiaPay Secure Hash Secretchar

added by Payment Provider: AsiaPay (payment_asiapay)

auth_msgAuthorize Message

The message displayed if payment is authorized

html
translatable
authorize_client_keyAPI Client Key

The public client key. To generate directly from Odoo or from Authorize.Net backend.

char

added by Payment Provider: Authorize.Net (payment_authorize)

authorize_loginAPI Login ID

The ID solely used to identify the account with Authorize.Net

char

added by Payment Provider: Authorize.Net (payment_authorize)

authorize_signature_keyAPI Signature Keychar

added by Payment Provider: Authorize.Net (payment_authorize)

authorize_transaction_keyAPI Transaction Keychar

added by Payment Provider: Authorize.Net (payment_authorize)

available_country_idsCountries

The countries in which this payment provider is available. Leave blank to make it available in all countries.

many2many
available_currency_idsCurrencies

The currencies available with this payment provider. Leave empty not to restrict any.

many2many
computed, stored
buckaroo_secret_keyBuckaroo Secret Keychar

added by Payment Provider: Buckaroo (payment_buckaroo)

buckaroo_website_keyWebsite Key

The key solely used to identify the website with Buckaroo

char

added by Payment Provider: Buckaroo (payment_buckaroo)

cancel_msgCancelled Message

The message displayed if the order is cancelled during the payment process

html
translatable
capture_manuallyCapture Amount Manually

Capture the amount from Odoo, when the delivery is completed. Use this if you want to charge your customers cards only when you are sure you can ship the goods to them.

boolean
codeCode

The technical code of this payment provider.

selection
required

Values: none (No Provider Set)

colorColor

The color of the card in kanban view

integer
computed, stored
company_idCompanymany2one
required
custom_modeCustom Modeselection

Values: wire_transfer (Wire Transfer)

added by Payment Provider: Custom Payment Modes (payment_custom)

done_msgDone Message

The message displayed if the order is successfully done after the payment process

html
translatable
dpo_company_tokenDPO Company Tokenchar

added by Payment Provider: DPO (payment_dpo)

dpo_service_refDPO Service IDchar

added by Payment Provider: DPO (payment_dpo)

ecpay_hash_ivECPay Secure Hash IVchar

added by Payment Provider: ECPay (payment_ecpay)

ecpay_hash_keyECPay Secure Hash Keychar

added by Payment Provider: ECPay (payment_ecpay)

ecpay_merchant_idECPay Merchant ID

The Merchant ID solely used to identify your ECPay account.

char

added by Payment Provider: ECPay (payment_ecpay)

express_checkout_form_view_idExpress Checkout Form Template

The template rendering the express payment methods' form.

many2one
flutterwave_public_keyFlutterwave Public Key

The key solely used to identify the account with Flutterwave.

char

added by Payment Provider: Flutterwave (payment_flutterwave)

flutterwave_secret_keyFlutterwave Secret Keychar

added by Payment Provider: Flutterwave (payment_flutterwave)

flutterwave_webhook_secretFlutterwave Webhook Secretchar

added by Payment Provider: Flutterwave (payment_flutterwave)

image_128Imageimage
inline_form_view_idInline Form Template

The template rendering the inline payment form when making a direct payment

many2one
is_publishedPublished

Whether the provider is visible on the website or not. Tokens remain functional but are only visible on manage forms.

boolean
iyzico_key_idIyzico API Keychar

added by Payment Provider: Iyzico (payment_iyzico)

iyzico_key_secretIyzico Secret Keychar

added by Payment Provider: Iyzico (payment_iyzico)

journal_idPayment Journal

The journal in which the successful transactions are posted.

many2one
computed

added by Payment - Account (account_payment)

main_currency_idMain Currency

The main currency of the company, used to display monetary fields.

many2one

related: company_id.currency_id

maximum_amountMaximum Amount

The maximum payment amount that this payment provider is available for. Leave blank to make it available for any payment amount.

monetary
mercado_pago_access_tokenMercado Pago Access Tokenchar

added by Payment Provider: Mercado Pago (payment_mercado_pago)

mercado_pago_access_token_expiryMercado Pago Access Token Expirydatetime

added by Payment Provider: Mercado Pago (payment_mercado_pago)

mercado_pago_account_country_idMercado Pago Account Country

The country of the Mercado Pago account. The currency will be updated to match the country of the Mercado Pago account.

many2one

added by Payment Provider: Mercado Pago (payment_mercado_pago)

mercado_pago_is_oauth_supportedMercado Pago Is Oauth Supportedboolean
computed

added by Payment Provider: Mercado Pago (payment_mercado_pago)

mercado_pago_public_keyMercado Pago Public Keychar

added by Payment Provider: Mercado Pago (payment_mercado_pago)

mercado_pago_refresh_tokenMercado Pago Refresh Tokenchar

added by Payment Provider: Mercado Pago (payment_mercado_pago)

module_idCorresponding Modulemany2one
module_stateInstallation Stateselection

related: module_id.state

module_to_buyOdoo Enterprise Moduleboolean

related: module_id.to_buy

mollie_api_keyMollie API Key

The Test or Live API Key depending on the configuration of the provider

char

added by Payment Provider: Mollie (payment_mollie)

nameNamechar
requiredtranslatable
nuvei_merchant_identifierNuvei Merchant Identifier

The code of the merchant account to use with this provider.

char

added by Payment Provider: Nuvei (payment_nuvei)

nuvei_secret_keyNuvei Secret Keychar

added by Payment Provider: Nuvei (payment_nuvei)

nuvei_site_identifierNuvei Site Identifier

The site identifier code associated with the merchant account.

char

added by Payment Provider: Nuvei (payment_nuvei)

payment_method_idsSupported Payment Methodsmany2many
paymob_account_country_idPaymob Account Country

The country of the Paymob account. The currency will be updated to match the country of the Paymob account.

many2one

added by Payment Provider: Paymob (payment_paymob)

paymob_api_keyPaymob API Keychar

added by Payment Provider: Paymob (payment_paymob)

paymob_hmac_keyPaymob HMAC Keychar

added by Payment Provider: Paymob (payment_paymob)

paymob_public_keyPaymob Public Keychar

added by Payment Provider: Paymob (payment_paymob)

paymob_secret_keyPaymob Secret Keychar

added by Payment Provider: Paymob (payment_paymob)

paypal_access_tokenPayPal Access Token

The short-lived token used to access Paypal APIs

char

added by Payment Provider: Paypal (payment_paypal)

paypal_access_token_expiryPayPal Access Token Expiry

The moment at which the access token becomes invalid.

datetime

added by Payment Provider: Paypal (payment_paypal)

paypal_client_idPayPal Client IDchar

added by Payment Provider: Paypal (payment_paypal)

paypal_client_secretPayPal Client Secretchar

added by Payment Provider: Paypal (payment_paypal)

paypal_email_accountEmail

The public business email solely used to identify the account with PayPal

char

added by Payment Provider: Paypal (payment_paypal)

paypal_webhook_idPayPal Webhook IDchar

added by Payment Provider: Paypal (payment_paypal)

payu_key_idPayU Key Idchar

added by Payment Provider: PayU (payment_payu)

payu_merchant_saltPayU Merchant Saltchar

added by Payment Provider: PayU (payment_payu)

pending_msgPending Message

The message displayed if the order pending after the payment process

html
translatable
pre_msgHelp Message

The message displayed to explain and help the payment process

html
translatable
qr_codeEnable QR Codes

Enable the use of QR-codes when paying by wire transfer.

boolean

added by Payment Provider: Custom Payment Modes (payment_custom)

razorpay_access_tokenRazorpay Access Tokenchar

added by Payment Provider: Razorpay (payment_razorpay)

razorpay_access_token_expiryRazorpay Access Token Expirydatetime

added by Payment Provider: Razorpay (payment_razorpay)

razorpay_account_idRazorpay Account IDchar

added by Payment Provider: Razorpay (payment_razorpay)

razorpay_key_idRazorpay Key Id

The key solely used to identify the account with Razorpay.

char

added by Payment Provider: Razorpay (payment_razorpay)

razorpay_key_secretRazorpay Key Secretchar

added by Payment Provider: Razorpay (payment_razorpay)

razorpay_public_tokenRazorpay Public Tokenchar

added by Payment Provider: Razorpay (payment_razorpay)

razorpay_refresh_tokenRazorpay Refresh Tokenchar

added by Payment Provider: Razorpay (payment_razorpay)

razorpay_webhook_secretRazorpay Webhook Secretchar

added by Payment Provider: Razorpay (payment_razorpay)

redirect_form_view_idRedirect Form Template

The template rendering a form submitted to redirect the user when making a payment

many2one
redsys_merchant_codeRedsys Merchant Codechar

added by Payment Provider: Redsys (payment_redsys)

redsys_merchant_terminalRedsys Merchant Terminalchar

added by Payment Provider: Redsys (payment_redsys)

redsys_secret_keyRedsys Secret Keychar

added by Payment Provider: Redsys (payment_redsys)

sequenceSequence

Define the display order

integer
so_reference_typeCommunication

You can set here the communication type that will appear on sales orders.The communication will be given to the customer when they choose the payment method.

selection

Values: so_name (Based on Document Reference), partner (Based on Customer ID)

added by Sales (sale)

stateState

In test mode, a fake payment is processed through a test payment interface. This mode is advised when setting up the provider.

selection
required

Values: disabled (Disabled), enabled (Enabled), test (Test Mode)

stripe_publishable_keyPublishable Key

The key solely used to identify the account with Stripe

char

added by Payment Provider: Stripe (payment_stripe)

stripe_secret_keySecret Keychar

added by Payment Provider: Stripe (payment_stripe)

stripe_webhook_secretWebhook Signing Secret

If a webhook is enabled on your Stripe account, this signing secret must be set to authenticate the messages sent from Stripe to Odoo.

char

added by Payment Provider: Stripe (payment_stripe)

support_express_checkoutExpress Checkoutboolean
computed
support_manual_captureManual Capture Supportedselection
computed

Values: full_only (Full Only), partial (Partial)

support_refundRefund

Refund is a feature allowing to refund customers directly from the payment in Odoo.

selection
computed

Values: none (Unsupported), full_only (Full Only), partial (Full & Partial)

support_tokenizationTokenizationboolean
computed
token_inline_form_view_idToken Inline Form Template

The template rendering the inline payment form when making a payment by token.

many2one
toss_payments_client_keyToss Payments Client Keychar

added by Payment Provider: Toss Payments (payment_toss_payments)

toss_payments_secret_keyToss Payments Secret Keychar

added by Payment Provider: Toss Payments (payment_toss_payments)

toss_payments_webhook_urlToss Payments Webhook URLchar
read-onlycomputed

added by Payment Provider: Toss Payments (payment_toss_payments)

website_idWebsitemany2one

added by Website Payment (website_payment)

worldline_api_keyWorldline API Keychar

added by Payment Provider: Worldline (payment_worldline)

worldline_api_secretWorldline API Secretchar

added by Payment Provider: Worldline (payment_worldline)

worldline_pspidWorldline PSPIDchar

added by Payment Provider: Worldline (payment_worldline)

worldline_webhook_keyWorldline Webhook Keychar

added by Payment Provider: Worldline (payment_worldline)

worldline_webhook_secretWorldline Webhook Secretchar

added by Payment Provider: Worldline (payment_worldline)

xendit_public_keyXendit Public Keychar

added by Payment Provider: Xendit (payment_xendit)

xendit_secret_keyXendit Secret Keychar

added by Payment Provider: Xendit (payment_xendit)

xendit_webhook_tokenXendit Webhook Tokenchar

added by Payment Provider: Xendit (payment_xendit)

create_dateCreated ondatetime
read-onlyautomatic
create_uidCreated bymany2one
read-onlyautomatic
display_nameDisplay Namechar
read-onlycomputedautomatic
idIDinteger
read-onlyautomatic
write_dateLast Updated ondatetime
read-onlyautomatic
write_uidLast Updated bymany2one
read-onlyautomatic

Relations

Models linked from this model

Fields of other models pointing here

Reading this model through the API

Odoo 19 JSON-2 API call reading the first five records with real fields of the model. Replace the instance, database and API key with your own.

curl
curl -X POST "https://your-instance.odoo.com/json/2/payment.provider/search_read" \
  -H "Authorization: bearer $ODOO_API_KEY" \
  -H "X-Odoo-Database: your-db" \
  -H "Content-Type: application/json" \
  -d '{"domain":[],"fields":["name","code","company_id","state","express_checkout_form_view_id"],"limit":5}'
Python (requests)
import requests

BASE_URL = "https://your-instance.odoo.com/json/2"
headers = {"Authorization": f"bearer {API_KEY}", "X-Odoo-Database": "your-db"}

res = requests.post(
    f"{BASE_URL}/payment.provider/search_read",
    headers=headers,
    json={"domain": [], "fields": ["name","code","company_id","state","express_checkout_form_view_id"], "limit": 5},
)
res.raise_for_status()
print(res.json())
  • External API access requires Odoo's Custom plan.
  • XML-RPC and JSON-RPC will be removed in Odoo 22 (fall 2028): use JSON-2.
  • The access rights and record rules of the key's user apply.

Cite this tool

Writing a tutorial, internal documentation or a forum answer? Copy this link to send your readers to the up-to-date reference.

<a href="https://aidoo.ai/en/outils/explorateur-modeles-odoo/payment-provider">payment.provider (Odoo 19.0)</a>

Sources

Data verified on September 23, 2026 · Odoo 19.0 Community

Have an Odoo project, or want to put your ERP to work with AI? Let's talk

Implementation, custom module development, connecting Claude or ChatGPT to your data: tell us about your context and we will reply within 24 business hours.