The means, expressed as code, for how a payment is expected to be or has been settled.
取引決済手段のタイプを識別するコード。


About

Syntax binding
ubl:Invoice / cac:PaymentMeans / cbc:PaymentMeansCode
Restricted Syntax Cardinality
1..1
Example
30
Attribute(s)
@name
UBL 2.1
XPath
/ Invoice / cac:PaymentMeans / cbc:PaymentMeansCode
Occurrence
1
Datatype
PaymentMeans_CodeType
UBL Definition
A code signifying the type of this means of payment.
Namespace
cbc urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2

Semantic

Business Term

Payment means type code

支払手段タイプコード
ID
ibt-081
Description
The means, expressed as code, for how a payment is expected to be or has been settled.
取引決済手段のタイプを識別するコード。
Aligned Cardinality
1..1
Semantic datatype
Code

Code list

UNCL4461
Payment means code (UNCL4461)

Child element

  ID Business term Sem. Card. Syntax Card. XPath
 ibt-082 0..1 0..1 / Invoice / cac:PaymentMeans / cbc:PaymentMeansCode / @name

VERSION 1.0 RULES

Unchanged
Same as 0.9.3

VERSION 0.9.3 RULES
JP PINT 0.9.3 Aligned rule
aligned-ibrp-049(fatal)
Added
[aligned-ibrp-049]-A Payment instruction (ibg-16) MUST specify the Payment means type code (ibt-081).
context
cac:PaymentMeans
test
exists(cbc:PaymentMeansCode)
JP PINT 0.9.3 Shared rules
ibr-049(fatal)
Changed Message
[ibr-049]-A Payment instruction (ibg-16) MUST specify the Payment means type code (ibt-081).
context
cac:PaymentMeans
test
exists(cbc:PaymentMeansCode)
ibr-cl-16(fatal)
Changed Message
[ibr-cl-16]-Payment means type code (ibt-081) in an invoice MUST be coded using UNCL4461 code list
context
cac:PaymentMeans/cbc:PaymentMeansCode
test
(
  (
    not(contains(normalize-space(.),' ')) and
    contains(' 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 70 74 75 76 77 78 91 92 93 94 95 96 97 ZZZ Z01 Z02 ',
      oncat(' ',normalize-space(.),' ')
    )
  )
)
ibr-sr-27(fatal)
Changed Message
[ibr-sr-27]-Payment means type code (ibt-081) MUST occur maximum once
context
cac:PaymentMeans
test
(count(cbc:PaymentMeansCode) <= 1)

VERSION 0.9.2 RULE
JP PINT 0.9.2 Shared rule
ibr-049(fatal)
Obsoleted
[ibr-049]-A Payment instruction (ibg-16) MUSTspecify the Payment means type code (ibt-081).
context
cac:PaymentMeans
test
exists(cbc:PaymentMeansCode)
Code list rule (Shared rule)
ibr-cl-16 (fatal)
[ibr-cl-16]-Payment means in an invoice MUST be coded using UNCL4461 code list
Context
cac:PaymentMeans/cbc:PaymentMeansCode
Test
(
  (
    not(contains(normalize-space(.),' ')) and
    contains(' 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 70 74 75 76 77 78 91 92 93 94 95 96 97 ZZZ Z01 Z02 ',
      oncat(' ',normalize-space(.),' ')
    )
  )
)

VERSION 0.9.1 RULE
Obsoleted
Shared rule (0.9.1)
ibr-049 (fatal)
[ibr-049]-A Payment instruction (ibg-16) MUSTspecify the Payment means type code (ibt-081).
context
cac:PaymentMeans
test
exists(cbc:PaymentMeansCode)
Code list rule (Shared rule)
ibr-cl-16 (fatal)
[ibr-cl-16]-Payment means in an invoice MUST be coded using UNCL4461 code list
Context
cac:PaymentMeans/cbc:PaymentMeansCode
Test
(
  (
    not(contains(normalize-space(.),' ')) and
    contains(' 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 70 74 75 76 77 78 91 92 93 94 95 96 97 ZZZ Z01 Z02 ',
      oncat(' ',normalize-space(.),' ')
    )
  )
)

JP PINT 0.9 RULES
Obsoleted
Shared Rules (0.9)
ibr-49(fatal)
[ibr-49]-A Payment instruction (ibg-16) shall specify the Payment means type code (ibt-081).
context
cac:PaymentMeans
test
exists(cbc:PaymentMeansCode)

PEPPOL BIS BILLING 3.0 RULES
Rules for Peppol BIS 3.0 Billing rules
IS-R-006 (fatal)
If seller is icelandic and payment means code is 9 then a 12 digit account id must exist — Ef seljandi er íslenskur og greiðslumáti (BT-81) er krafa (kóti 9) þá skal koma fram 12 stafa númer (bankanúmer, höfuðbók 66 og reikningsnúmer) (BT-84)
context
ubl-creditnote:CreditNote[$SupplierCountry = 'IS'] |
ubl-invoice:Invoice[$SupplierCountry = 'IS']
test
exists(cac:PaymentMeans[cbc:PaymentMeansCode='9']/cac:PayeeFinancialAccount/cbc:ID) and
string-length(normalize-space(cac:PaymentMeans[cbc:PaymentMeansCode='9']/cac:PayeeFinancialAccount/cbc:ID)) =
12 or
not(exists(cac:PaymentMeans[cbc:PaymentMeansCode='9']))
IS-R-007 (fatal)
If seller is icelandic and payment means code is 42 then a 12 digit account id must exist — Ef seljandi er íslenskur og greiðslumáti (BT-81) er millifærsla (kóti 42) þá skal koma fram 12 stafa reikningnúmer (BT-84)
context
ubl-creditnote:CreditNote[$SupplierCountry = 'IS'] |
ubl-invoice:Invoice[$SupplierCountry = 'IS']
test
exists(cac:PaymentMeans[cbc:PaymentMeansCode =
  '42']/cac:PayeeFinancialAccount/cbc:ID) and
string-length(normalize-space(cac:PaymentMeans[cbc:PaymentMeansCode =
    '42']/cac:PayeeFinancialAccount/cbc:ID)) =
12 or
not(exists(cac:PaymentMeans[cbc:PaymentMeansCode =
    '42']
  )
)
EN16931 model bound to UBL rules
BR-49 (fatal)
A Payment instruction (BG-16) shall specify the Payment means type code (BT-81).
context
cac:PaymentMeans
test
exists(cbc:PaymentMeansCode)
BR-61 (fatal)
If the Payment means type code (BT-81) means SEPA credit transfer, Local credit transfer or Non-SEPA international credit transfer, the Payment account Identifier (BT-84) shall be present.
context
cac:PaymentMeans
test
(exists(cac:PayeeFinancialAccount/cbc:ID) and
  (
    (normalize-space(cbc:PaymentMeansCode) =
      '30') or
    (normalize-space(cbc:PaymentMeansCode) =
      '58'))) or
(
  (normalize-space(cbc:PaymentMeansCode) != '30') and
  (normalize-space(cbc:PaymentMeansCode) != '58')
)