Add a Personal Payment Method

When creating the payroll details for a worker, you want to add a personal payment method to the worker record, which includes creating a bank account, adding an account owner, adding a payment, and so on. Let???s discuss these scenarios:

  • Create Payment for a Party
  • Create a Bank Account
  • Add an Owner to a Bank Account
  • Create an Instrument Assignment
  • Create a Personal Payment Method

Create Payment for a Party

To create payment for a party:

  1. Perform a POST operation on the paymentsExternalPayees resource by providing the details in the request body.
  2. Verify the details returned in the response.

Example URL

Use this resource URL format.

POST

/fscmRestApi/resources/11.13.18.05/paymentsExternalPayees

Example Request

Here's an example of the request body in JSON format.

Provide the headers.

Content-Type : application/vnd.oracle.adf.resourceitem+json
REST-Framework-Version : 4
{
  "PayeePartyIdentifier":300100180002427,
  "PaymentFunctionCode": "EMPLOYEE_EXP",
  "PersonId": 1559922749,
  "Intent": "Person"
}

Example Response

Here's an example of the response body in JSON format.

{
  "PayeeId": 300100179777633,
  "PaymentFunctionCode": "EMPLOYEE_EXP",
  "OrganizationIdentifier": null,
  "OrganizationName": null,
  "OrganizationType": null,
  "PayEachDocumentAloneOption": "N",
  "DefaultPaymentMethodCode": null,
  "DefaultPaymentMethodName": null,
  "BankChargeBearerCode": null,
  "BankChargeBearerName": null,
  "BankInstructionCodeOne": null,
  "BankInstructionNameOne": null,
  "BankInstructionCodeTwo": null,
  "BankInstructionNameTwo": null,
  "BankInstructionDetails": null,
  "PaymentReasonCode": null,
  "PaymentReasonName": null,
  "PaymentReasonComments": null,
  "PaymentTextMessageOne": null,
  "PaymentTextMessageTwo": null,
  "PaymentTextMessageThree": null,
  "DeliveryChannelCode": null,
  "DeliveryChannelName": null,
  "ServiceLevelCode": null,
  "ServiceLevelName": null,
  "SettlementPriority": null,
  "DeliveryMethod": null,
  "Email": null,
  "Fax": null,
  "PayeePartyIdentifier": 300100180002427,
  "PartyName": "Alexl SSP Fourteen point five days starting with Working day Entl",
  "PayeePartyNumber": "CDRM_856705",
  "PayeePartySiteIdentifier": null,
  "SupplierNumber": null,
  "SupplierSiteCode": null,
  "SupplierSiteIdentifier": null,
  "PayeePartySiteNumber": null,
  "PaymentFormatCode": null,
  "PaymentFormatName": null,
  "PersonId": null,
  "Intent": "Person",
  "links": [
           ...]
}

Create a Bank Account

To create a bank account for a worker:

  1. Perform a POST operation on the externalBankAccounts resource by providing the details in the request body.
  2. Verify the details returned in the response.

Example URL

Use this resource URL format.

POST

/fscmRestApi/resources/11.13.18.05/externalBankAccounts

Example Request

Here's an example of the request body in JSON format.

Provide the headers.

Content-Type : application/vnd.oracle.adf.resourceitem+json
REST-Framework-Version : 4
{
  "BankAccountNumber": "1559234818",
  "CountryCode": "US",
  "BankName" : "ANCDEVONLY_BANK",
  "BankBranchName" : "ANCDEVONLY_BRANCH",
  "BankBranchNumber": "000000123",
  "CurrencyCode": "USD",
  "AccountType": "CHECKING",
  "BankAccountName": "AlexChecking",
  "AllowInternationalPaymentIndicator" : "Y",
  "Intent": "Person",
  "PersonId": "1559922749"
}

Example Response

Here's an example of the response body in JSON format.

{
    "BankAccountNumber": "XXXXXX4818",
    "CountryCode": "US",
    "BankBranchIdentifier": 100100113626796,
    "BankIdentifier": 100100113626788,
    "BankAccountId": 300100179777635,
    "CurrencyCode": "USD",
    "IBAN": null,
    "CheckDigits": null,
    "AccountType": "CHECKING",
    "AccountSuffix": null,
    "AgencyLocationCode": null,
    "AllowInternationalPaymentIndicator": "Y",
    "SecondaryAccountReference": null,
    "StartDate": "2019-06-30",
    "EndDate": "4712-12-31",
    "BankAccountName": "AlexChecking",
    "AlternateAccountName": null,
    "BankBranchPartyIndicator": "Y",
    "BankName": "ANCDEVONLY_BANK",
    "BankNumber": null,
    "BankBranchName": "ANCDEVONLY_BRANCH",
    "BankBranchNumber": "000000123",
    "BIC": null,
    "VendorId": null,
    "PersonId": null,
    "Intent": "Person",
    "PartyId": null,
    "links": [
              ...]
}

Add an Owner to a Bank Account

To add an owner to a bank account:

  1. Perform a POST operation on the accountOwners child resource of the externalBankAccounts resource by providing the details in the request body.
  2. Verify the details returned in the response.

Example URL

Use this resource URL format.

POST

/fscmRestApi/resources/11.13.18.05/externalBankAccounts/300100179777635/child/accountOwners

Example Request

Here's an example of the request body in JSON format.

Provide the headers.

Content-Type : application/vnd.oracle.adf.resourceitem+json
REST-Framework-Version : 4
{
  "AccountOwnerPartyIdentifier": 100100055205628,
  "Intent": "Person",
  "PersonId" : 1559922749
}

Example Response

Here's an example of the response body in JSON format.

	{
  "AccountOwnerPartyIdentifier": 100100055205628,
  "AccountOwnerPartyNumber": "CDRM_856705",
  "AccountOwnerPartyName": "Alex SSP Fourteen point five days starting with Working day Entl",
  "PrimaryOwnerIndicator": "Y",
  "StartDate": "2019-06-30",
  "EndDate": "4712-12-31",
  "AccountOwnerId": 300100179777637,
  "Intent": "Person",
  "PersonId": 100100054351233,
  "links": [
             ...]
}

Create an Instrument Assignment

To create an instrument assignment linking a party and a bank account:

  1. Perform a POST operation on the instrumentAssignments resource by providing the details in the request body.

    Note that the PaymentPartyId should be the PayeeId, not the PartyId.

  2. Verify the details returned in the response.

Example URL

Use this resource URL format.

POST

/fscmRestApi/resources/11.13.18.05/instrumentAssignments

Example Request

Here's an example of the request body in JSON format.

Provide the headers.

Content-Type : application/vnd.oracle.adf.resourceitem+json
REST-Framework-Version : 4
{
  "PaymentPartyId": 300100179777633,
  "PaymentInstrumentId": 300100179777635,
  "PaymentInstrumentType": "BANKACCOUNT",
  "PaymentFlow": "DISBURSEMENTS",
  "Intent": "Person",
  "PersonId" : 1559922749
}

Example Response

Here's an example of the response body in JSON format.

{
  "PaymentInstrumentAssignmentId": 300100179777638,
  "PaymentPartyId": 300100179777633,
  "PaymentInstrumentId": 300100179777635,
  "PaymentFlow": "DISBURSEMENTS",
  "PaymentInstrumentType": "BANKACCOUNT",
  "PrimaryIndicator": "Y",
  "StartDate": "2019-06-30",
  "EndDate": "4712-12-31",
  "MaskedBankAccountNumber": "XXXXXX4818",
  "MaskedCreditCardNumber": null,
  "VendorId": null,
  "PersonId": null,
  "Intent": "Person",
  "links": [
             ...]
}

Create a Personal Payment Method

To create a personal payment method:

  1. Perform a POST operation on the personalPaymentMethods resource by providing the details in the request body.
  2. Verify the details returned in the response.

Example URL

Use this resource URL format.

POST

/hcmRestApi/resources/11.13.18.05/personalPaymentMethods

Example Request

Here's an example of the request body in JSON format.

Provide the headers.

Content-Type : application/vnd.oracle.adf.resourceitem+json
REST-Framework-Version : 4
{
  "BankAccountId": 300100179777635,
  "OrgPaymentMethodId": 300100083855691,
  "PaymentAmountType": "P",
  "Amount": null,
  "Percentage": 100,
  "Name": "PPM Name",
  "PayrollRelationshipId": 300100180001242
}

Example Response

Here's an example of the response body in JSON format.

{
  "PersonalPaymentMethodId": 300100179774862,
  "Name": "PPM Name",
  "EffectiveStartDate": "2019-06-30",
  "EffectiveEndDate": "4712-12-31",
  "OrgPaymentMethodId": 300100083855691,
  "BankAccountId": 300100179777635,
  "PaymentAmountType": "P",
  "Amount": null,
  "Percentage": 100,
  "Priority": 10,
  "PayrollRelationshipId": 300100114066225,
  "PartyId": 300100180001242,
  "PersonNumber": "955160008191544",
  "links": [
             ...]
}