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:
- Perform a POST operation on the
paymentsExternalPayees
resource by providing the details in the request body. - 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:
- Perform a POST operation on the
externalBankAccounts
resource by providing the details in the request body. - 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:
- Perform a POST operation on the
accountOwners
child resource of theexternalBankAccounts
resource by providing the details in the request body. - 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:
- Perform a POST operation on the
instrumentAssignments
resource by providing the details in the request body.Note that the
PaymentPartyId
should be thePayeeId
, not thePartyId
. - 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:
- Perform a POST operation on the
personalPaymentMethods
resource by providing the details in the request body. - 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": [
...]
}