2021-01-13 11:20:30 -08:00
import { INodeProperties } from 'n8n-workflow' ;
2019-11-23 16:36:47 -08:00
2019-12-01 07:15:02 -08:00
export const payoutOperations = [
2019-11-23 16:36:47 -08:00
{
displayName : 'Operation' ,
name : 'operation' ,
type : 'options' ,
displayOptions : {
show : {
resource : [
'payout' ,
] ,
} ,
} ,
options : [
{
name : 'Create' ,
value : 'create' ,
description : 'Create a batch payout' ,
} ,
{
name : 'Get' ,
value : 'get' ,
2019-12-01 07:15:02 -08:00
description : 'Show batch payout details' ,
2019-11-26 08:59:27 -08:00
} ,
2019-11-23 16:36:47 -08:00
] ,
default : 'create' ,
description : 'The operation to perform.' ,
} ,
] as INodeProperties [ ] ;
export const payoutFields = [
/* -------------------------------------------------------------------------- */
/* payout:create */
/* -------------------------------------------------------------------------- */
{
displayName : 'Sender Batch ID' ,
name : 'senderBatchId' ,
type : 'string' ,
required : true ,
displayOptions : {
show : {
resource : [
'payout' ,
] ,
operation : [
'create' ,
] ,
} ,
} ,
default : '' ,
description : 'A sender-specified ID number. Tracks the payout in an accounting system.' ,
} ,
{
displayName : 'JSON Parameters' ,
name : 'jsonParameters' ,
type : 'boolean' ,
default : false ,
description : '' ,
displayOptions : {
show : {
resource : [
2020-10-22 06:46:03 -07:00
'payout' ,
2019-11-23 16:36:47 -08:00
] ,
operation : [
'create' ,
2020-10-22 06:46:03 -07:00
] ,
2019-11-23 16:36:47 -08:00
} ,
} ,
} ,
{
displayName : 'Items' ,
name : 'itemsUi' ,
placeholder : 'Add Item' ,
type : 'fixedCollection' ,
displayOptions : {
show : {
resource : [
'payout' ,
] ,
operation : [
'create' ,
] ,
jsonParameters : [
2020-10-22 06:46:03 -07:00
false ,
] ,
2019-11-23 16:36:47 -08:00
} ,
} ,
typeOptions : {
multipleValues : true ,
} ,
default : { } ,
options : [
{
name : 'itemsValues' ,
displayName : 'Item' ,
values : [
{
displayName : 'Recipient Type' ,
name : 'recipientType' ,
type : 'options' ,
options : [
{
name : 'Phone' ,
value : 'phone' ,
description : 'The unencrypted phone number' ,
} ,
{
name : 'Email' ,
value : 'email' ,
2019-12-01 07:15:02 -08:00
description : 'The unencrypted email.' ,
2019-11-23 16:36:47 -08:00
} ,
{
name : 'PayPal ID' ,
value : 'paypalId' ,
description : 'The encrypted PayPal account number.' ,
} ,
] ,
default : 'email' ,
description : 'The ID type that identifies the recipient of the payment.' ,
} ,
{
displayName : 'Receiver Value' ,
name : 'receiverValue' ,
type : 'string' ,
required : true ,
default : '' ,
2021-10-27 13:00:13 -07:00
description : 'The receiver of the payment. Corresponds to the recipient_type value in the request. Max length: 127 characters.' ,
2019-11-23 16:36:47 -08:00
} ,
{
displayName : 'Currency' ,
name : 'currency' ,
type : 'options' ,
options : [
{
name : 'Australian dollar' ,
2020-10-22 06:46:03 -07:00
value : 'AUD' ,
2019-11-23 16:36:47 -08:00
} ,
{
name : 'Brazilian real' ,
2020-10-22 06:46:03 -07:00
value : 'BRL' ,
2019-11-23 16:36:47 -08:00
} ,
{
name : 'Canadian dollar' ,
2020-10-22 06:46:03 -07:00
value : 'CAD' ,
2019-11-23 16:36:47 -08:00
} ,
{
name : 'Czech koruna' ,
2020-10-22 06:46:03 -07:00
value : 'CZK' ,
2019-11-23 16:36:47 -08:00
} ,
{
name : 'Danish krone' ,
2020-10-22 06:46:03 -07:00
value : 'DKK' ,
2019-11-23 16:36:47 -08:00
} ,
{
name : 'Euro' ,
2020-10-22 06:46:03 -07:00
value : 'EUR' ,
2019-11-23 16:36:47 -08:00
} ,
{
name : 'United States dollar' ,
2020-10-22 06:46:03 -07:00
value : 'USD' ,
} ,
2019-11-23 16:36:47 -08:00
] ,
default : 'USD' ,
description : 'Currency' ,
} ,
{
displayName : 'Amount' ,
name : 'amount' ,
type : 'string' ,
required : true ,
default : '' ,
description : 'The value, which might be' ,
} ,
{
displayName : 'Note' ,
name : 'note' ,
type : 'string' ,
required : false ,
default : '' ,
2021-10-27 13:00:13 -07:00
description : 'The sender-specified note for notifications. Supports up to 4000 ASCII characters and 1000 non-ASCII characters.' ,
2019-11-23 16:36:47 -08:00
} ,
{
displayName : 'Sender Item ID' ,
name : 'senderItemId' ,
type : 'string' ,
default : '' ,
description : 'The sender-specified ID number. Tracks the payout in an accounting system.' ,
} ,
{
displayName : 'Recipient Wallet' ,
name : 'recipientWallet' ,
type : 'options' ,
options : [
{
name : 'PayPal' ,
value : 'paypal' ,
description : 'PayPal Wallet' ,
} ,
{
name : 'Venmo' ,
value : 'venmo' ,
description : 'Venmo Wallet' ,
} ,
] ,
default : 'paypal' ,
description : 'The recipient wallet' ,
} ,
2020-10-22 06:46:03 -07:00
] ,
2019-11-23 16:36:47 -08:00
} ,
] ,
} ,
{
displayName : 'Items' ,
name : 'itemsJson' ,
type : 'json' ,
typeOptions : {
alwaysOpenEditWindow : true ,
} ,
description : 'An array of individual payout items.' ,
displayOptions : {
show : {
resource : [
2020-10-22 06:46:03 -07:00
'payout' ,
2019-11-23 16:36:47 -08:00
] ,
operation : [
'create' ,
] ,
jsonParameters : [
true ,
2020-10-22 06:46:03 -07:00
] ,
2019-11-23 16:36:47 -08:00
} ,
} ,
} ,
{
displayName : 'Additional Fields' ,
name : 'additionalFields' ,
type : 'collection' ,
placeholder : 'Add Field' ,
default : { } ,
displayOptions : {
show : {
resource : [
'payout' ,
] ,
operation : [
'create' ,
] ,
} ,
} ,
options : [
{
displayName : 'Email Subject' ,
name : 'emailSubject' ,
type : 'string' ,
default : '' ,
2021-10-27 13:00:13 -07:00
description : 'The subject line for the email that PayPal sends when payment for a payout item completes. The subject line is the same for all recipients. Max length: 255 characters.' ,
2019-11-23 16:36:47 -08:00
} ,
{
displayName : 'Email Message' ,
name : 'emailMessage' ,
type : 'string' ,
default : '' ,
2021-10-27 13:00:13 -07:00
description : 'The email message that PayPal sends when the payout item completes. The message is the same for all recipients.' ,
2019-11-23 16:36:47 -08:00
} ,
{
displayName : 'Note' ,
name : 'note' ,
type : 'string' ,
default : '' ,
2019-12-01 07:15:02 -08:00
description : 'The payouts and item-level notes are concatenated in the email.<br />Max length: 1000 characters.' ,
2019-11-23 16:36:47 -08:00
} ,
] ,
} ,
2019-12-01 07:15:02 -08:00
/* -------------------------------------------------------------------------- */
/* payout:get */
/* -------------------------------------------------------------------------- */
2019-11-23 16:36:47 -08:00
2019-12-01 07:15:02 -08:00
{
displayName : 'Payout Batch Id' ,
name : 'payoutBatchId' ,
type : 'string' ,
required : true ,
displayOptions : {
show : {
resource : [
'payout' ,
] ,
operation : [
'get' ,
] ,
} ,
2019-11-23 16:36:47 -08:00
} ,
2019-12-01 07:15:02 -08:00
description : 'The ID of the payout for which to show details.' ,
2019-11-23 16:36:47 -08:00
} ,
2019-12-01 07:15:02 -08:00
{
displayName : 'Return All' ,
name : 'returnAll' ,
type : 'boolean' ,
default : false ,
displayOptions : {
show : {
resource : [
'payout' ,
] ,
operation : [
'get' ,
] ,
} ,
2019-11-23 16:36:47 -08:00
} ,
2019-12-01 07:15:02 -08:00
description : 'If all results should be returned or only up to a given limit.' ,
2019-11-23 16:36:47 -08:00
} ,
2019-12-01 07:15:02 -08:00
{
displayName : 'Limit' ,
name : 'limit' ,
type : 'number' ,
typeOptions : {
maxValue : 1000 ,
2020-10-22 06:46:03 -07:00
minValue : 1 ,
2019-12-01 07:15:02 -08:00
} ,
default : 100 ,
displayOptions : {
show : {
resource : [
'payout' ,
] ,
operation : [
'get' ,
] ,
returnAll : [
false ,
] ,
} ,
} ,
description : 'If all results should be returned or only up to a given limit.' ,
2019-11-23 16:36:47 -08:00
} ,
2019-12-01 07:15:02 -08:00
] as INodeProperties [ ] ;
export const payoutItemOperations = [
{
displayName : 'Operation' ,
name : 'operation' ,
type : 'options' ,
displayOptions : {
show : {
resource : [
'payoutItem' ,
] ,
} ,
2019-11-23 16:36:47 -08:00
} ,
2019-12-01 07:15:02 -08:00
options : [
{
name : 'Cancel' ,
value : 'cancel' ,
description : 'Cancels an unclaimed payout item' ,
} ,
{
name : 'Get' ,
value : 'get' ,
description : 'Show payout item details' ,
} ,
] ,
default : 'get' ,
description : 'The operation to perform.' ,
2019-11-23 16:36:47 -08:00
} ,
2019-12-01 07:15:02 -08:00
] as INodeProperties [ ] ;
2019-11-26 08:59:27 -08:00
2019-12-01 07:15:02 -08:00
export const payoutItemFields = [
/* -------------------------------------------------------------------------- */
/* payoutItem:get */
/* -------------------------------------------------------------------------- */
{
displayName : 'Payout Item Id' ,
name : 'payoutItemId' ,
type : 'string' ,
default : '' ,
required : true ,
displayOptions : {
show : {
resource : [
'payoutItem' ,
] ,
operation : [
'get' ,
] ,
} ,
2019-11-26 08:59:27 -08:00
} ,
2019-12-01 07:15:02 -08:00
description : 'The ID of the payout item for which to show details.' ,
2019-11-26 08:59:27 -08:00
} ,
2019-12-01 07:15:02 -08:00
/* -------------------------------------------------------------------------- */
/* payoutItem:cancel */
/* -------------------------------------------------------------------------- */
2019-11-26 08:59:27 -08:00
2019-12-01 07:15:02 -08:00
{
displayName : 'Payout Item Id' ,
name : 'payoutItemId' ,
type : 'string' ,
default : '' ,
required : true ,
displayOptions : {
show : {
resource : [
'payoutItem' ,
] ,
operation : [
'cancel' ,
] ,
} ,
2019-11-26 08:59:27 -08:00
} ,
2019-12-01 07:15:02 -08:00
description : 'The ID of the payout item to cancel.' ,
2019-11-26 08:59:27 -08:00
} ,
2019-11-23 16:36:47 -08:00
] as INodeProperties [ ] ;