diff --git a/lib/secretariat/invoice.rb b/lib/secretariat/invoice.rb index 140627b..d822867 100644 --- a/lib/secretariat/invoice.rb +++ b/lib/secretariat/invoice.rb @@ -238,7 +238,7 @@ def to_xml(version: 1, validate: true) trade_agreement = by_version(version, 'ApplicableSupplyChainTradeAgreement', 'ApplicableHeaderTradeAgreement') xml['ram'].send(trade_agreement) do - if buyer_reference + if buyer_reference.present? xml['ram'].BuyerReference buyer_reference end xml['ram'].SellerTradeParty do diff --git a/test/invoice_test.rb b/test/invoice_test.rb index 8af2c76..106eb2b 100644 --- a/test/invoice_test.rb +++ b/test/invoice_test.rb @@ -884,5 +884,13 @@ def test_invoice_with_quantity_causing_sub_cent_amounts end assert_equal [], errors end + + def test_blank_buyer_reference_is_omitted + invoice = make_de_invoice + invoice.buyer_reference = '' + xml = invoice.to_xml(version: 2) + + refute_match(/BuyerReference/, xml) + end end end