Sunday, March 31, 2024

Party / Organization / Customer Merge in Oracle Fusion

Profile Options:
==================
Role: Data Steward Manager
Task: Manage Administrator Profile Value

Set the below Profile options

ZCA_MERGE_REQUEST Site=Yes
ZCH_AUTO_MERGE_THRESHOLD level =0
ZCH_USER_MERGE_REQUESTS to have Allow processing without approval.

Please follow the next steps:

Step1: Navigate to Customer Data Management > Duplicate Resolution 
     > Task List > Create Resolution Request > Search for Customer 
     > select it > Create Request

Step2: Duplicate Resolution (CDM) > Request is in status Pending 
> select the row > Actions > Submit

Step3: Go to Setup and Maintenance > search for Run Request Dispatch Job 
> do not modify anything, just Submit

Step4: After Request ID run successfully > Return to Duplicate Resolution 
> Status is now New

Step5: Enter on Request ID > Override

Step6: Next > Select Accounts to be merged > Merge 
> You can choose the Master Account > Next > Next > Submit

Step7: Duplicate Resolution (CDM) > Request is in status Submitted

Step8: Go to Setup and Maintenance > search for Run Request Dispatch Job 
> do not modify anything, just Submit

Step9: Duplicate Resolution (CDM) > Request is in status Completed

Step10: Check Customer in Receivables > Billing > Manage Customers

The accounts are now merged

Tuesday, March 19, 2024

SOAP API to FindPerson (Contact Details) using FirstName and LastName

 SOAP API
===============
 https://servername/crmService/FoundationPartiesPersonService

Service Name
=================
findPerson

Sample Payload 
=================

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:typ="http://xmlns.oracle.com/apps/cdm/foundation/parties/personService/applicationModule/types/" xmlns:ns43="http://xmlns.oracle.com/adf/svc/types/">
   <soapenv:Header/>
   <soapenv:Body>
<typ:findPerson>
<typ:findCriteria>
<ns43:fetchStart>0</ns43:fetchStart>
<ns43:fetchSize>1</ns43:fetchSize>
<ns43:filter>
<ns43:group>
<ns43:item>
<ns43:attribute>PersonFirstName</ns43:attribute>
<ns43:operator>=</ns43:operator>
<ns43:value>Seth</ns43:value>
</ns43:item>
<ns43:item>
<ns43:attribute>PersonLastName</ns43:attribute>
<ns43:operator>=</ns43:operator>
<ns43:value>Laskarzewski</ns43:value>
</ns43:item>
</ns43:group>
</ns43:filter>
<ns43:sortOrder>
<ns43:sortAttribute>
<ns43:name>CreationDate</ns43:name>
<ns43:descending>true</ns43:descending>
</ns43:sortAttribute>
</ns43:sortOrder>
<ns43:childFindCriteria>
<ns43:fetchStart>0</ns43:fetchStart>
<ns43:fetchSize>1</ns43:fetchSize>
<ns43:filter>
<ns43:group>
<ns43:item>
<ns43:attribute>RoleType</ns43:attribute>
<ns43:operator>=</ns43:operator>
<ns43:value>CONTACT</ns43:value>
</ns43:item>
</ns43:group>
</ns43:filter>
</ns43:childFindCriteria>
</typ:findCriteria>
</typ:findPerson>
   </soapenv:Body>
</soapenv:Envelope>

Thursday, March 14, 2024

SOAP API to Create Receipt Reversal Transaction (Oracle Fusion Receivables Cloud)

 
SOAP API
===========


Service Name
=============

createReverseReceipt

Sample Payload
===============

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:typ="http://xmlns.oracle.com/apps/financials/receivables/receipts/shared/standardReceiptService/commonService/types/" xmlns:com="http://xmlns.oracle.com/apps/financials/receivables/receipts/shared/standardReceiptService/commonService/">
   <soapenv:Header/>
   <soapenv:Body>
      <typ:createReverseReceipt>
         <typ:reverseReceipt>
            <!--Optional:-->
            <!--<com:ReceiptNumber>1111115575</com:ReceiptNumber>-->
            <!--Optional:-->
            <com:ReversalCategory>CC_CHARGEBACK_REV</com:ReversalCategory>
            <!--Optional:-->
            <com:ReversalDate>2024-03-14</com:ReversalDate>
            <!--Optional:-->
            <com:ReversalReasonCode>CC_CHARGEBACK_CHANGE</com:ReversalReasonCode>
            <!--Optional:-->
            <com:ReversalComments>Testing</com:ReversalComments>
            <!--Optional:-->
            <com:BusinessUnit>Business Unit</com:BusinessUnit>
            <!--Optional:-->
            <!--<com:ReversalCategoryName>?</com:ReversalCategoryName>-->
            <!--Optional:-->
            <com:ReversalGlDate>2024-03-14</com:ReversalGlDate>
            <!--Optional:-->
            <!--<com:ReversalReasonName>?</com:ReversalReasonName>-->
            <!--Optional:-->
            <com:ReceiptId>3801247</com:ReceiptId>
            <!--Optional:-->
            <!--<com:InterfaceToBudgeting>?</com:InterfaceToBudgeting>-->
            <!--Optional:-->
            <!--<com:InterfaceFailureReason>?</com:InterfaceFailureReason>-->
         </typ:reverseReceipt>
      </typ:createReverseReceipt>
   </soapenv:Body>
</soapenv:Envelope>


Sample Response
================

<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://www.w3.org/2005/08/addressing">
   <env:Header>
      <wsa:Action>http://xmlns.oracle.com/apps/financials/receivables/receipts/shared/standardReceiptService/commonService/StandardReceiptService/createReverseReceiptResponse</wsa:Action>
      <wsa:MessageID>urn:uuid:fa70c096-d413-4153-9858-3226af253140</wsa:MessageID>
   </env:Header>
   <env:Body>
      <ns0:createReverseReceiptResponse xmlns:ns0="http://xmlns.oracle.com/apps/financials/receivables/receipts/shared/standardReceiptService/commonService/types/">
         <ns1:result xsi:type="ns3:ReverseReceiptResult" xmlns:tns="http://xmlns.oracle.com/adf/svc/errors/" xmlns:ns0="http://xmlns.oracle.com/adf/svc/types/" xmlns:ns3="http://xmlns.oracle.com/apps/financials/receivables/receipts/shared/standardReceiptService/commonService/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns1="http://xmlns.oracle.com/apps/financials/receivables/receipts/shared/standardReceiptService/commonService/types/">
            <ns3:Value>
               <ns3:ReceiptNumber xsi:nil="true"/>
               <ns3:ReversalCategory>CC_CHARGEBACK_REV</ns3:ReversalCategory>
               <ns3:ReversalDate>2024-03-14</ns3:ReversalDate>
               <ns3:ReversalReasonCode>CC_CHARGEBACK_CHANGE</ns3:ReversalReasonCode>
               <ns3:ReversalComments>Testing</ns3:ReversalComments>
               <ns3:BusinessUnit>Business Unit</ns3:BusinessUnit>
               <ns3:ReversalCategoryName xsi:nil="true"/>
               <ns3:ReversalGlDate>2024-03-14</ns3:ReversalGlDate>
               <ns3:ReversalReasonName xsi:nil="true"/>
               <ns3:ReceiptId>3801247</ns3:ReceiptId>
               <ns3:InterfaceToBudgeting>Not Enabled</ns3:InterfaceToBudgeting>
               <ns3:InterfaceFailureReason xsi:nil="true"/>
            </ns3:Value>
         </ns1:result>
      </ns0:createReverseReceiptResponse>
   </env:Body>
</env:Envelope>






SOAP to Create Debit memo (Oracle Fusion Receivables Cloud Service)

 SOAP API
===========


Service Name
=============
createDebitMemo


Sample Payload
================
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:typ="http://xmlns.oracle.com/apps/financials/receivables/transactions/invoices/debitMemoService/types/" xmlns:deb="http://xmlns.oracle.com/apps/financials/receivables/transactions/invoices/debitMemoService/">
   <soapenv:Header/>
   <soapenv:Body>
      <typ:createDebitMemo>
         <typ:debitMemo>
            <deb:BatchSourceSequenceId>37711366</deb:BatchSourceSequenceId>
            <!--BATCH_SOURCE_SEQ_ID :-->
            <deb:CustomerTrxSquenceId>38859442</deb:CustomerTrxSquenceId>
            <!--CUST_TRX_TYPE_SEQ_ID put Debit memo here :-->
            <deb:InvoiceCurrencyCode>USD</deb:InvoiceCurrencyCode>
            <deb:OrgId>33059258</deb:OrgId>
            <deb:BillToCustomerId>132506363</deb:BillToCustomerId>
            <!--BILL_TO_CUSTOMER_ID:-->
            <deb:BillToAddressId>316731415</deb:BillToAddressId>
            <!--BILL_TO_ADDRESS_ID:-->
            <deb:BillToSiteUseId>316731416</deb:BillToSiteUseId>
            <!--BILL_TO_SITE_USE_ID:-->
            <deb:Comments>test debit memo service</deb:Comments>
            <deb:DefaultTaxationCountry>US</deb:DefaultTaxationCountry>
            <deb:PaymentTermsId>32914118</deb:PaymentTermsId>
            <!--TERM_ID:-->
            <deb:RemitToAddressSequenceId>32914100</deb:RemitToAddressSequenceId>
            <!--REMIT_TO_ADDRESS_SEQ_ID:-->
            <deb:ShipToAddressId>132255334</deb:ShipToAddressId>
            <!--SHIP_TO_PARTY_ADDRESS_ID:-->
            <deb:ShipToCustomerId>114525837</deb:ShipToCustomerId>
            <!--SHIP_TO_PARTY_ID:-->
            <deb:ShipToSiteUseId>132298316</deb:ShipToSiteUseId>
            <!--SHIP_TO_PARTY_SITE_USE_ID:-->
            <deb:TrxDate>2024-02-12</deb:TrxDate>
            <deb:DebitMemoLine>
               <deb:LineNumber>1</deb:LineNumber>
               <deb:Description>test1 debit memo service</deb:Description>
               <deb:InvoicedQuantity unitCode="">1</deb:InvoicedQuantity>
               <deb:UnitSellingPrice currencyCode="USD">100</deb:UnitSellingPrice>
               <deb:LineType>LINE</deb:LineType>
               <deb:ExtendedAmount currencyCode="USD">100</deb:ExtendedAmount>
               <deb:RevenueAmount currencyCode="USD">100</deb:RevenueAmount>
               <deb:OrgId>33059258</deb:OrgId>
            </deb:DebitMemoLine>
            <deb:DebitMemoLine>
               <deb:LineNumber>2</deb:LineNumber>
               <deb:Description>test2 debit memo service</deb:Description>
               <deb:InvoicedQuantity unitCode="">1</deb:InvoicedQuantity>
               <deb:UnitSellingPrice currencyCode="USD">100</deb:UnitSellingPrice>
               <deb:LineType>LINE</deb:LineType>
               <deb:ExtendedAmount currencyCode="USD">500</deb:ExtendedAmount>
               <deb:RevenueAmount currencyCode="USD">500</deb:RevenueAmount>
               <deb:OrgId>33059258</deb:OrgId>
            </deb:DebitMemoLine>
         </typ:debitMemo>
      </typ:createDebitMemo>
   </soapenv:Body>
</soapenv:Envelope>



Tuesday, March 12, 2024

Update Credit Card "Assignment Inactive On" for a Customer in Oracle Fusion (Using SOAP/REST API)

 Use the below WSDL to get the Instrument assignment id for all available Credit Cards on a Customer

WSDL: https://serverName/fscmService/PayerDetailServiceV2?WSDL
Service Name: findAssignedInstrumentsByPayer

PartyID : PARTY_ID of HZ_PARTIES of a Customer 
CustomerAccountId : CUST_ACCOUNT_ID from HZ_CUST_ACCOUNTS 

Sample Payload
==================

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:typ="http://xmlns.oracle.com/apps/financials/payments/shared/payeePayerInstruments/externalPayerServiceV2/types/">
   <soapenv:Header/>
   <soapenv:Body>
      <typ:findAssignedInstrumentsByPayer>
         <typ:partyId>100000014531116</typ:partyId>
         <typ:customerAccountId>100000032507573</typ:customerAccountId>
         <typ:paymentFunction>CUSTOMER_PAYMENT</typ:paymentFunction>
         <typ:instrumentType>CREDITCARD</typ:instrumentType>
      </typ:findAssignedInstrumentsByPayer>
   </soapenv:Body>
</soapenv:Envelope>

Sample Response  
==============

<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://www.w3.org/2005/08/addressing">
   <env:Header>
      <wsa:Action>http://xmlns.oracle.com/apps/financials/payments/shared/payeePayerInstruments/externalPayerServiceV2/PayerDetailService/findAssignedInstrumentsByPayerResponse</wsa:Action>
      <wsa:MessageID>urn:uuid:d1447dc5-20e8-4f7e-9fa3-f90ee4f2e9df</wsa:MessageID>
   </env:Header>
   <env:Body>
      <ns0:findAssignedInstrumentsByPayerResponse xmlns:ns0="http://xmlns.oracle.com/apps/financials/payments/shared/payeePayerInstruments/externalPayerServiceV2/types/">
         <ns2:result xsi:type="ns1:AssignedPmtInstrument" xmlns:ns0="http://xmlns.oracle.com/adf/svc/types/" xmlns:ns1="http://xmlns.oracle.com/apps/financials/payments/shared/payeePayerInstruments/externalPayerServiceV2/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns2="http://xmlns.oracle.com/apps/financials/payments/shared/payeePayerInstruments/externalPayerServiceV2/types/">
            <ns1:InstrAssignmentId>300000055014</ns1:InstrAssignmentId>
            <ns1:ExternalPayerId>300000055013</ns1:ExternalPayerId>
            <ns1:PaymentFunction>CUSTOMER_PAYMENT</ns1:PaymentFunction>
            <ns1:PartyId>100000011116</ns1:PartyId>
            <ns1:CustomerAccountId>100000007573</ns1:CustomerAccountId>
            <ns1:AccountSiteUseId xsi:nil="true"/>
            <ns1:InstrumentType>CREDITCARD</ns1:InstrumentType>
            <ns1:InstrumentId>31300900</ns1:InstrumentId>
            <ns1:CurrencyCode xsi:nil="true"/>
            <ns1:CardNumber>7809</ns1:CardNumber>
            <ns1:CardExpirydate>2025-08-31</ns1:CardExpirydate>
            <ns1:CardIssuerCode>MASTERCARD</ns1:CardIssuerCode>
            <ns1:CardIssuerName>MasterCard</ns1:CardIssuerName>
            <ns1:PurchasecardSubtype xsi:nil="true"/>
            <ns1:CardHolderName>ABC Corp</ns1:CardHolderName>
            <ns1:CardBillingAddressId>300000019901</ns1:CardBillingAddressId>
            <ns1:CardFiName>300000008684</ns1:CardFiName>
            <ns1:CardSingleUseFlag>false</ns1:CardSingleUseFlag>
            <ns1:CardInformationOnlyFlag>false</ns1:CardInformationOnlyFlag>
            <ns1:AccountNumber xsi:nil="true"/>
            <ns1:BankName xsi:nil="true"/>
            <ns1:BankNumber xsi:nil="true"/>
            <ns1:BranchName xsi:nil="true"/>
            <ns1:BranchNumber xsi:nil="true"/>
            <ns1:BICNumber xsi:nil="true"/>
            <ns1:Description xsi:nil="true"/>
            <ns1:AssignmentLastUpdate>2022-12-16T11:49:26Z</ns1:AssignmentLastUpdate>
            <ns1:AssignmentStartDate>2022-09-30</ns1:AssignmentStartDate>
            <ns1:AssignmentEndDate>4712-12-31</ns1:AssignmentEndDate>
            <ns1:CreatedBy>xyz</ns1:CreatedBy>
            <ns1:CreationDate>2022-12-16T11:49:25.047Z</ns1:CreationDate>
            <ns1:LastUpdatedBy>xyv</ns1:LastUpdatedBy>
            <ns1:LastUpdateDate>2022-12-16T11:49:26Z</ns1:LastUpdateDate>
            <ns1:LastUpdateLogin>EFF17E6849E8E0539560310A7831</ns1:LastUpdateLogin>
            <ns1:ObjectVersionNumber>2</ns1:ObjectVersionNumber>
            <ns1:PrimaryFlag>true</ns1:PrimaryFlag>
         </ns2:result>
         <ns2:result xsi:type="ns1:AssignedPmtInstrument" xmlns:ns0="http://xmlns.oracle.com/adf/svc/types/" xmlns:ns1="http://xmlns.oracle.com/apps/financials/payments/shared/payeePayerInstruments/externalPayerServiceV2/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ns2="http://xmlns.oracle.com/apps/financials/payments/shared/payeePayerInstruments/externalPayerServiceV2/types/">
            <ns1:InstrAssignmentId>300000063931</ns1:InstrAssignmentId>
            <ns1:ExternalPayerId>300000055013</ns1:ExternalPayerId>
            <ns1:PaymentFunction>CUSTOMER_PAYMENT</ns1:PaymentFunction>
            <ns1:PartyId>100000011116</ns1:PartyId>
            <ns1:CustomerAccountId>100000007573</ns1:CustomerAccountId>
            <ns1:AccountSiteUseId xsi:nil="true"/>
            <ns1:InstrumentType>CREDITCARD</ns1:InstrumentType>
            <ns1:InstrumentId>2479025</ns1:InstrumentId>
            <ns1:CurrencyCode xsi:nil="true"/>
            <ns1:CardNumber>XXXXXXXXXXXX5100</ns1:CardNumber>
            <ns1:CardExpirydate>2030-03-31</ns1:CardExpirydate>
            <ns1:CardIssuerCode>MASTERCARD</ns1:CardIssuerCode>
            <ns1:CardIssuerName>MasterCard</ns1:CardIssuerName>
            <ns1:PurchasecardSubtype xsi:nil="true"/>
            <ns1:CardHolderName>ABC Corp</ns1:CardHolderName>
            <ns1:CardBillingAddressId>300000013928</ns1:CardBillingAddressId>
            <ns1:CardFiName>300000008683</ns1:CardFiName>
            <ns1:CardSingleUseFlag>false</ns1:CardSingleUseFlag>
            <ns1:CardInformationOnlyFlag>false</ns1:CardInformationOnlyFlag>
            <ns1:AccountNumber xsi:nil="true"/>
            <ns1:BankName xsi:nil="true"/>
            <ns1:BankNumber xsi:nil="true"/>
            <ns1:BranchName xsi:nil="true"/>
            <ns1:BranchNumber xsi:nil="true"/>
            <ns1:BICNumber xsi:nil="true"/>
            <ns1:Description xsi:nil="true"/>
            <ns1:AssignmentLastUpdate>2023-08-28T14:52:29.542Z</ns1:AssignmentLastUpdate>
            <ns1:AssignmentStartDate>2023-08-28</ns1:AssignmentStartDate>
            <ns1:AssignmentEndDate>4712-12-31</ns1:AssignmentEndDate>
            <ns1:CreatedBy>xyz</ns1:CreatedBy>
            <ns1:CreationDate>2023-08-28T14:52:12.09Z</ns1:CreationDate>
            <ns1:LastUpdatedBy>xyz</ns1:LastUpdatedBy>
            <ns1:LastUpdateDate>2023-08-28T14:52:29.542Z</ns1:LastUpdateDate>
            <ns1:LastUpdateLogin>013AE5810B5E063E262310ABDD1</ns1:LastUpdateLogin>
            <ns1:ObjectVersionNumber>1</ns1:ObjectVersionNumber>
            <ns1:PrimaryFlag>false</ns1:PrimaryFlag>
         </ns2:result>
      </ns0:findAssignedInstrumentsByPayerResponse>
   </env:Body>
</env:Envelope>


Use the Instrument assignment ID from above Payload in below Mentioned REST API

REST API 
=================

https://servername/fscmRestApi/resources/11.13.18.05/instrumentAssignments/{instrumentassignmentid}
Operation: PATCH

Sample Payload
===================

      "EndDate": "2024-03-12", 
      "Intent": null 


User below SQL to get the Instrument assignment id for a Customer

SELECT p.party_name
       , ca.cust_account_id
       , ca.account_number
       , iepa.ext_payer_id
       , ipiu.instrument_payment_use_id instr_assignment_id
       , ifte.*
  FROM iby_creditcard icc
       , iby_external_payers_all iepa
       , iby_pmt_instr_uses_all ipiu
       , iby_fndcpt_tx_extensions ifte
       , hz_parties p
       , hz_cust_accounts ca
 WHERE p.party_id = icc.card_owner_id
   AND p.party_id = ca.party_id
   AND icc.card_owner_id = iepa.party_id
   AND ca.cust_account_id = iepa.cust_account_id
   AND iepa.acct_site_use_id IS NULL
   AND icc.instrument_type = ipiu.instrument_type
   AND icc.instrid = ipiu.instrument_id
   AND iepa.ext_payer_id = ipiu.ext_pmt_party_id
   AND ipiu.instrument_payment_use_id = ifte.instr_assignment_id
   AND iepa.ext_payer_id = ifte.ext_payer_id
   AND ca.account_number = :p_account_number;