Worldpay Parties API — onboard and manage marketplace sellers.
Supports both orchestrated (single-call) and modular (incremental) flows.
Orchestrated onboarding
{:ok, party} = Worldpay.Marketplaces.Parties.create(%{
"merchant" => %{"entity" => "default"},
"partyReference" => "seller-001",
"type" => "person",
"personalDetails" => %{
"firstName" => "Jane",
"lastName" => "Doe",
"dateOfBirth" => "1985-06-15"
},
"email" => "jane@example.com",
"payoutInstruments" => [%{
"type" => "bankAccount",
"accountHolderName" => "Jane Doe",
"accountNumber" => "12345678",
"sortCode" => "010203"
}],
"balanceAccounts" => [%{"currency" => "GBP"}]
}, config)
Summary
Functions
Create a balance account for a party.
Add a beneficial owner to a party.
Add a payout instrument (bank account or card) to a party.
Create a party (orchestrated or modular).
Delete a beneficial owner.
Retrieve a party by ID.
Retrieve a beneficial owner.
Update a party.
Update a beneficial owner.
Trigger KYC identity verification for a party.
Functions
@spec add_balance_account(String.t(), map(), Worldpay.Config.t()) :: {:ok, map()} | {:error, Worldpay.Error.t()}
Create a balance account for a party.
@spec add_beneficial_owner(String.t(), map(), Worldpay.Config.t()) :: {:ok, map()} | {:error, Worldpay.Error.t()}
Add a beneficial owner to a party.
@spec add_payout_instrument(String.t(), map(), Worldpay.Config.t()) :: {:ok, map()} | {:error, Worldpay.Error.t()}
Add a payout instrument (bank account or card) to a party.
@spec create(map(), Worldpay.Config.t()) :: {:ok, map()} | {:error, Worldpay.Error.t()}
Create a party (orchestrated or modular).
@spec delete_beneficial_owner(String.t(), String.t(), Worldpay.Config.t()) :: {:ok, nil} | {:error, Worldpay.Error.t()}
Delete a beneficial owner.
@spec get(String.t(), Worldpay.Config.t()) :: {:ok, map()} | {:error, Worldpay.Error.t()}
Retrieve a party by ID.
@spec get_beneficial_owner(String.t(), String.t(), Worldpay.Config.t()) :: {:ok, map()} | {:error, Worldpay.Error.t()}
Retrieve a beneficial owner.
@spec update(String.t(), map(), Worldpay.Config.t()) :: {:ok, map()} | {:error, Worldpay.Error.t()}
Update a party.
@spec update_beneficial_owner(String.t(), String.t(), map(), Worldpay.Config.t()) :: {:ok, map()} | {:error, Worldpay.Error.t()}
Update a beneficial owner.
@spec verify_identity(String.t(), Worldpay.Config.t()) :: {:ok, map()} | {:error, Worldpay.Error.t()}
Trigger KYC identity verification for a party.