Rapyd Collect — accept payments globally.
Covers: Payments, Hosted Checkout Pages, Payment Links, Group Payments, Refunds, Disputes, Customers, Plans, Subscriptions, Invoices, Coupons, Orders, SKUs, Card Tokens, Payment Devices, and FX Rates.
All functions return {:ok, map()} or {:error, %Rapyd.Error{}}.
The map is the raw "data" field from the Rapyd response envelope;
cast it with the structs in Rapyd.Types.* as needed.
Summary
Functions
Cancel an escrow record.
Cancel a payment.
Cancel a pending refund.
Cancel a subscription.
Capture a previously authorized payment.
Complete a payment that requires a redirect (e.g. after 3DS).
Simulate a refund completion (sandbox only).
Create an address.
Create a card token (PCI vault).
Create a hosted checkout page.
Create a coupon.
Create a customer.
Add a payment method to a customer.
Create an escrow payment.
Create a group payment.
Create a refund for a group payment.
Create an invoice.
Create an invoice item.
Create an order.
Create a payment.
Create a payment link.
Create a billing plan.
Create a refund.
Create a SKU.
Create a subscription.
Delete an address.
Delete a checkout page.
Delete a coupon.
Delete a customer.
Remove the discount applied to a customer.
Delete a customer's saved payment method.
Delete a group payment.
Delete an invoice.
Delete an invoice item.
Delete a payment device.
Delete a payment link.
Delete a plan.
Delete a SKU.
Remove the discount applied to a subscription.
Finalize a draft invoice (moves it to open status).
Retrieve an address.
Retrieve a card token.
Retrieve a checkout page by token.
Retrieve a coupon.
Retrieve a customer.
Retrieve a customer's saved payment method.
Retrieve a dispute.
Retrieve a group payment.
Retrieve an invoice.
Retrieve an invoice item.
Retrieve an order.
Retrieve a payment by ID.
Retrieve a payment device.
Retrieve a payment link.
Get the required fields for a payment method type.
Get available payment methods for a country and currency.
Retrieve a plan.
Retrieve a refund.
Retrieve a SKU.
Retrieve a subscription.
List coupons.
List a customer's saved payment methods.
List customers.
List disputes.
List invoice items.
List invoices.
List orders.
List payment devices.
List payment links.
List payments with optional filters.
List plans.
List refunds.
List SKUs.
List a subscription's items.
List subscriptions.
Pair a payment device to a merchant terminal.
Pay an invoice immediately.
Pay / fulfil an order.
Register a payment device (POS terminal).
Release escrowed funds on a specific escrow record.
Release escrowed funds to one or more wallets.
Return an order.
Update an address.
Update a checkout page.
Update a coupon.
Update a customer.
Update a customer's saved payment method.
Update a dispute (submit evidence).
Update an invoice.
Update an order.
Update a payment.
Update a payment device.
Update a payment link.
Update a plan.
Update a refund.
Update a SKU.
Update a subscription.
Update a subscription item.
Functions
@spec cancel_escrow(Rapyd.Client.t(), String.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Cancel an escrow record.
@spec cancel_payment(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Cancel a payment.
@spec cancel_refund(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Cancel a pending refund.
@spec cancel_subscription(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Cancel a subscription.
@spec capture_payment(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Capture a previously authorized payment.
@spec complete_payment(Rapyd.Client.t(), String.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Complete a payment that requires a redirect (e.g. after 3DS).
token is the payment token; param3 is the redirect param returned by the
payment method provider.
@spec complete_refund(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Simulate a refund completion (sandbox only).
@spec create_address(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Create an address.
@spec create_card_token(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Create a card token (PCI vault).
@spec create_checkout_page(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Create a hosted checkout page.
@spec create_coupon(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Create a coupon.
@spec create_customer(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Create a customer.
@spec create_customer_payment_method(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Add a payment method to a customer.
@spec create_escrow_payment(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Create an escrow payment.
@spec create_group_payment(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Create a group payment.
@spec create_group_refund(Rapyd.Client.t(), String.t(), float()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Create a refund for a group payment.
@spec create_invoice(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Create an invoice.
@spec create_invoice_item(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Create an invoice item.
@spec create_order(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Create an order.
@spec create_payment(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Create a payment.
@spec create_payment_link(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Create a payment link.
@spec create_plan(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Create a billing plan.
@spec create_refund(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Create a refund.
@spec create_sku(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Create a SKU.
@spec create_subscription(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Create a subscription.
@spec delete_address(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Delete an address.
@spec delete_checkout_page(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Delete a checkout page.
@spec delete_coupon(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Delete a coupon.
@spec delete_customer(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Delete a customer.
@spec delete_customer_discount(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Remove the discount applied to a customer.
@spec delete_customer_payment_method(Rapyd.Client.t(), String.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Delete a customer's saved payment method.
@spec delete_group_payment(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Delete a group payment.
@spec delete_invoice(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Delete an invoice.
@spec delete_invoice_item(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Delete an invoice item.
@spec delete_payment_device(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Delete a payment device.
@spec delete_payment_link(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Delete a payment link.
@spec delete_plan(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Delete a plan.
@spec delete_sku(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Delete a SKU.
@spec delete_subscription_discount(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Remove the discount applied to a subscription.
@spec finalize_invoice(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Finalize a draft invoice (moves it to open status).
@spec get_address(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve an address.
@spec get_card_token(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve a card token.
@spec get_checkout_page(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve a checkout page by token.
@spec get_coupon(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve a coupon.
@spec get_customer(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve a customer.
@spec get_customer_payment_method(Rapyd.Client.t(), String.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve a customer's saved payment method.
@spec get_dispute(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve a dispute.
@spec get_group_payment(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve a group payment.
@spec get_invoice(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve an invoice.
@spec get_invoice_item(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve an invoice item.
@spec get_order(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve an order.
@spec get_payment(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve a payment by ID.
@spec get_payment_device(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve a payment device.
@spec get_payment_link(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve a payment link.
@spec get_payment_method_fields(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Get the required fields for a payment method type.
@spec get_payment_methods_by_country(Rapyd.Client.t(), String.t(), String.t()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
Get available payment methods for a country and currency.
@spec get_plan(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve a plan.
@spec get_refund(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve a refund.
@spec get_sku(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve a SKU.
@spec get_subscription(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Retrieve a subscription.
@spec list_coupons(Rapyd.Client.t(), map()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List coupons.
@spec list_customer_payment_methods(Rapyd.Client.t(), String.t()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List a customer's saved payment methods.
@spec list_customers(Rapyd.Client.t(), map()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List customers.
@spec list_disputes(Rapyd.Client.t(), map()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List disputes.
@spec list_invoice_items(Rapyd.Client.t(), map()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List invoice items.
@spec list_invoices(Rapyd.Client.t(), map()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List invoices.
@spec list_orders(Rapyd.Client.t(), map()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List orders.
@spec list_payment_devices(Rapyd.Client.t(), map()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List payment devices.
@spec list_payment_links(Rapyd.Client.t(), map()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List payment links.
@spec list_payments(Rapyd.Client.t(), map()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List payments with optional filters.
@spec list_plans(Rapyd.Client.t(), map()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List plans.
@spec list_refunds(Rapyd.Client.t(), map()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List refunds.
@spec list_skus(Rapyd.Client.t(), map()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List SKUs.
@spec list_subscription_items(Rapyd.Client.t(), String.t()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List a subscription's items.
@spec list_subscriptions(Rapyd.Client.t(), map()) :: {:ok, list()} | {:error, Rapyd.Error.t()}
List subscriptions.
@spec pair_payment_device(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Pair a payment device to a merchant terminal.
@spec pay_invoice(Rapyd.Client.t(), String.t()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Pay an invoice immediately.
@spec pay_order(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Pay / fulfil an order.
@spec register_payment_device(Rapyd.Client.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Register a payment device (POS terminal).
@spec release_escrow(Rapyd.Client.t(), String.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Release escrowed funds on a specific escrow record.
@spec release_escrow_payment(Rapyd.Client.t(), String.t(), [map()]) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Release escrowed funds to one or more wallets.
@spec return_order(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Return an order.
@spec update_address(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Update an address.
@spec update_checkout_page(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Update a checkout page.
@spec update_coupon(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Update a coupon.
@spec update_customer(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Update a customer.
@spec update_customer_payment_method(Rapyd.Client.t(), String.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Update a customer's saved payment method.
@spec update_dispute(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Update a dispute (submit evidence).
@spec update_invoice(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Update an invoice.
@spec update_order(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Update an order.
@spec update_payment(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Update a payment.
@spec update_payment_device(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Update a payment device.
@spec update_payment_link(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Update a payment link.
@spec update_plan(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Update a plan.
@spec update_refund(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Update a refund.
@spec update_sku(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Update a SKU.
@spec update_subscription(Rapyd.Client.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Update a subscription.
@spec update_subscription_item(Rapyd.Client.t(), String.t(), String.t(), map()) :: {:ok, map()} | {:error, Rapyd.Error.t()}
Update a subscription item.