Odoo 19.0 Community · Persistent

pos.payment: fields, relations and API

The pos.payment model ("Point of Sale Payments") is a persistent model declared by the Point of Sale module, then extended by 8 other modules. It exposes 40 fields, 34 of them declared directly on the model. 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
pos.payment
Label
Point of Sale Payments
Type
Persistent (models.Model)
SQL table
pos_payment
Origin module
Point of Sale (point_of_sale)
Extended by
pos_dpopay, pos_hr, pos_restaurant, pos_online_payment, pos_pine_labs, pos_razorpay, pos_restaurant_adyen, pos_viva_com
Default order (_order)
id desc
Inherits from (mixins)
pos.load.mixin

Model fields

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

40 of 40 fields shown

Technical nameLabelTypeDetails
account_move_idAccount Movemany2one
amountAmount

Total amount of the payment.

monetary
required
card_brandBrand of card

The brand of the payment card (e.g. Visa, AMEX, ...)

char
card_noCard Number(Last 4 Digit)char
card_typeType of card used

The type of the payment card (e.g. CREDIT CARD OR DEBIT CARD)

char
cardholder_nameCard Owner namechar
company_idCompanymany2one

related: pos_order_id.company_id

currency_idCurrencymany2one

related: pos_order_id.currency_id

currency_rateConversion Rate

Conversion rate from company currency to order currency.

float

related: pos_order_id.currency_rate

dpopay_mobile_money_phoneMobile Money Phone Number(Last 4 Digit)

Customer's phone number used to complete the Mobile Money payment.

char

added by PoS DPO Pay (pos_dpopay)

dpopay_rrnRRN

Retrieval Reference Number generated for the DPO Pay transaction.

char

added by PoS DPO Pay (pos_dpopay)

dpopay_transaction_refTransaction Reference

Reference number required for Mobile Money refund transactions.

char

added by PoS DPO Pay (pos_dpopay)

employee_idCashiermany2one

related: pos_order_id.employee_id

added by POS - HR (pos_hr)

is_changeIs this payment change?boolean
nameLabelchar
read-only
online_account_payment_idOnline accounting paymentmany2one
read-only

added by Point of Sale online payment (pos_online_payment)

partner_idCustomermany2one

related: pos_order_id.partner_id

payment_dateDatedatetime
requiredread-only
payment_method_authcodePayment APPR Codechar
payment_method_idPayment Methodmany2one
required
payment_method_issuer_bankPayment Issuer Bankchar
payment_method_payment_modePayment Modechar
payment_ref_noPayment reference number

Payment reference number from payment provider terminal

char
payment_statusPayment Statuschar
pine_labs_plutus_transaction_refPineLabs Transaction ID

Required during the refund order process: https://developer.pinelabs.com/in/instore/cloud-integration#Example-JSON-request-for-Void-ICB-on-UPI-transaction

char

added by POS Pine Labs (pos_pine_labs)

pos_order_idOrdermany2one
required
razorpay_p2p_request_idRazorpay p2pRequestId

Required to fetch payment status during the refund order process

char

added by POS Razorpay (pos_razorpay)

razorpay_reverse_ref_noRazorpay Reverse Reference No.char

added by POS Razorpay (pos_razorpay)

session_idSessionmany2one

related: pos_order_id.session_id

ticketPayment Receipt Infochar
transaction_idPayment Transaction IDchar
user_idEmployeemany2one

related: session_id.user_id

uuidUuidchar
read-only
viva_com_session_idViva Com Session

Session ID of the transaction, stored so that it can be used to refund the payment.

char

added by PoS Viva.com (pos_viva_com)

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

No Many2one or Many2many field of another model points to this model.

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/pos.payment/search_read" \
  -H "Authorization: bearer $ODOO_API_KEY" \
  -H "X-Odoo-Database: your-db" \
  -H "Content-Type: application/json" \
  -d '{"domain":[],"fields":["name","amount","payment_date","payment_method_id","pos_order_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}/pos.payment/search_read",
    headers=headers,
    json={"domain": [], "fields": ["name","amount","payment_date","payment_method_id","pos_order_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/pos-payment">pos.payment (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.