Worldpay.Marketplaces.Parties (Worldpay v1.0.0)

Copy Markdown View Source

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).

Retrieve a party by ID.

Trigger KYC identity verification for a party.

Functions

add_balance_account(party_id, body, config)

@spec add_balance_account(String.t(), map(), Worldpay.Config.t()) ::
  {:ok, map()} | {:error, Worldpay.Error.t()}

Create a balance account for a party.

add_beneficial_owner(party_id, body, config)

@spec add_beneficial_owner(String.t(), map(), Worldpay.Config.t()) ::
  {:ok, map()} | {:error, Worldpay.Error.t()}

Add a beneficial owner to a party.

add_payout_instrument(party_id, body, config)

@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.

create(body, config)

@spec create(map(), Worldpay.Config.t()) ::
  {:ok, map()} | {:error, Worldpay.Error.t()}

Create a party (orchestrated or modular).

delete_beneficial_owner(party_id, owner_id, config)

@spec delete_beneficial_owner(String.t(), String.t(), Worldpay.Config.t()) ::
  {:ok, nil} | {:error, Worldpay.Error.t()}

Delete a beneficial owner.

get(party_id, config)

@spec get(String.t(), Worldpay.Config.t()) ::
  {:ok, map()} | {:error, Worldpay.Error.t()}

Retrieve a party by ID.

get_beneficial_owner(party_id, owner_id, config)

@spec get_beneficial_owner(String.t(), String.t(), Worldpay.Config.t()) ::
  {:ok, map()} | {:error, Worldpay.Error.t()}

Retrieve a beneficial owner.

update(party_id, body, config)

@spec update(String.t(), map(), Worldpay.Config.t()) ::
  {:ok, map()} | {:error, Worldpay.Error.t()}

Update a party.

update_beneficial_owner(party_id, owner_id, body, config)

@spec update_beneficial_owner(String.t(), String.t(), map(), Worldpay.Config.t()) ::
  {:ok, map()} | {:error, Worldpay.Error.t()}

Update a beneficial owner.

verify_identity(party_id, config)

@spec verify_identity(String.t(), Worldpay.Config.t()) ::
  {:ok, map()} | {:error, Worldpay.Error.t()}

Trigger KYC identity verification for a party.