Skip to main content

This is a Beta release of the Python SDK for Rapyd's API methods. It is recommended to initially run the methods in the sandbox environment. For the most up to date documentation of Rapyd's methods, see the [online API Reference](https://docs.rapyd.net/en/index-en.html).

Project description

RapydSdk Python SDK 1.0.10

Welcome to the RapydSdk SDK documentation. This guide will help you get started with integrating and using the RapydSdk SDK in your project.

Versions

  • API version: 1.0.10
  • SDK version: 1.0.10

About the API

This is a Beta release of the Python SDK for Rapyd's API methods. It is recommended to initially run the methods in the sandbox environment. For the most up to date documentation of Rapyd's methods, see the online API Reference.

Table of Contents

Setup & Configuration

Supported Language Versions

This SDK is compatible with the following versions: Python >= 3.7

Installation

To get started with the SDK, we recommend installing using pip:

pip install rapyd-sdk

Environments

The SDK supports different environments for various stages of development and deployment.

Here are the available environments:

DEFAULT = "https://sandboxapi.rapyd.net"
SANDBOX = "https://sandboxapi.rapyd.net"
PRODUCTION = "https://api.rapyd.net"

Setting an Environment

To configure the SDK to use a specific environment, you can set the base URL as follows:

from rapyd_sdk import Environment

sdk.set_base_url(Environment.Sandbox.value)

Environment Variables

These are the environment variables for the SDK:

Name Description
ACCESS_KEY Access Key parameter
SECRET_KEY Secret Key parameter

Environment variables are a way to configure your application outside the code. You can set these environment variables on the command line or use your project's existing tooling for managing environment variables.

If you are using a .env file, a template with the variable names is provided in the .env.example file located in the same directory as this README.

Setting a Custom Timeout

You can set a custom timeout for the SDK's HTTP requests as follows:

from rapyd_sdk import RapydSdk

sdk = RapydSdk(timeout=10000)

Sample Usage

Below is a comprehensive example demonstrating how to authenticate and call a simple endpoint:

from rapyd_sdk import RapydSdk, Environment

sdk = RapydSdk(
    base_url=Environment.DEFAULT.value,
    timeout=10000
)

result = sdk.webhook_methods.list_webhooks(
    from_created_at="from_created_at",
    limit=50,
    page="page",
    status="status",
    type_="type",
    to_created_at=2.97
)

print(result)

Services

The SDK provides various services to interact with the API.

Below is a list of all available services:
Name
payment_method_type
payment
checkout_page
issuing
e_wallets
virtual_accounts
disburse
fx
localization_methods
webhook_methods
coupon
customer
customer_payment_method
digital_wallet
dispute
escrow
group_payment
subscription_invoice
order
order_return
payment_link
payment_card_token
payment_address
subscription
subscription_plan
subscription_product
refund
subscription_subscription_item
sku
verify

Models

The SDK includes several models that represent the data structures used in API requests and responses. These models help in organizing and managing the data efficiently.

Below is a list of all available models:
Name Description
InlineResponse200
InlineResponse200_1
InlineResponse200_2
Customer customer
V1PaymentsBody
InlineResponse200_3
PaymentsPaymentIdBody
PaymentIdCaptureBody
PaymentsCompletePaymentBody
InlineResponse200_4
V1CheckoutBody
CardDetailsCardTokenBody
InlineResponse200_5
InlineResponse200_6
IssuingCardsBody
InlineResponse200_7
InlineResponse200_8
CardsActivateBody
InlineResponse200_9
CardsPersonalizeBody
CardsStatusBody
InlineResponse200_10
InlineResponse200_11
IssuingBankaccountsBody
InlineResponse200_43
BankaccountsBankaccounttransfertobankaccountBody
InlineResponse200_44
InlineResponse200_45
BankaccountsVirtualAccountIdBody
InlineResponse200_46
InlineResponse200_47
AccountTransferBody
InlineResponse200_12
TransferResponseBody
InlineResponse200_13
EwalletIdContactsBody
InlineResponse200_14
Contact
InlineResponse200_15
InlineResponse200_16
InlineResponse200_33
V1EwalletsBody
InlineResponse200_34
EwalletsEwalletTokenBody
InlineResponse200_35
UpdateEwalletStatusStatus
AccountLimitsBody
InlineResponse200_36
InlineResponse200_37
InlineResponse200_38
InlineResponse200_39
V1VirtualAccountsBody
InlineResponse200_17
VirtualAccountsTransactionsBody
InlineResponse200_18
InlineResponse200_19
VirtualAccountsVirtualAccountIdBody
InlineResponse200_20
InlineResponse200_21
InlineResponse200_22
InlineResponse200_23
V1PayoutsBody
InlineResponse200_24
InlineResponse200_25
PayoutsBeneficiaryBody
InlineResponse200_26
PayoutsExtendedBeneficiaryBody
BeneficiaryValidateBody
InlineResponse200_27
InlineResponse200_28
PayoutsSenderBody
InlineResponse200_29
InlineResponse200_30
InlineResponse200_31
PayoutsPayoutIdBody
InlineResponse200_32
InlineResponse200_40
InlineResponse200_101
InlineResponse200_102
InlineResponse200_103
InlineResponse200_41
InlineResponse200_42
InlineResponse200_48
Coupon The coupon can be applied to the following objects - _ Subscription - All charges in the subscription are subject to the discount described in the coupon. To add a coupon to a subscription, first use Create Coupon. Then add the coupon ID to the coupon field of the subscription with Create Subscription or Update Subscription. _ Customer - The discount applies to all charges to the customer. To add a coupon to a customer, first use Create Coupon. Then add the coupon ID to the coupon field of the customer with Create Customer or Update Customer. * Order - The discount applies to a single order. To add a coupon to an order, first use Create Coupon. The duration field of the coupon must be set to repeating, and the duration_in_months and discount_duration_in_uses fields must be set to 1. Then add the coupon ID to the coupon field of the order with Create an Order or Update Order. A coupon can be applied to one or more customers or subscriptions. However, a subscription can have only one coupon, and the only way to assign two or more coupons to a customer is to assign them to separate subscriptions. If there is a coupon for the customer and another coupon for the customer's subscription, the subscription coupon takes precedence.
InlineResponse200_49
InlineResponse200_50
InlineResponse200_51
V1CustomersBody
InlineResponse200_52
CustomerRequest
InlineResponse200_53
InlineResponse200_54
InlineResponse200_55
InlineResponse200_56
Category
CustomerIdPaymentMethodsBody
InlineResponse200_57
InlineResponse200_58
ApplePayObject
InlineResponse200_59
InlineResponse200_60
GetDisputesListByOrgIdStatus
InlineResponse200_61
InlineResponse200_62
EscrowEscrowReleasesBody
InlineResponse200_63
PaymentsGroupPaymentsBody
InlineResponse200_64
InlineResponse200_65
V1InvoicesBody
InlineResponse200_66
InvoicesInvoiceIdBody
InvoiceIdPayBody
InlineResponse200_67
V1OrdersBody
InlineResponse200_68
OrdersOrderIdBody
OrderIdPayBody
OrderIdReturnsBody
InlineResponse200_69
InlineResponse200_70
InlineResponse200_71
CollectPaymentsBody
CollectCardBody
InlineResponse200_72
Address address associated with this specific Rapyd entity Payment/Customer etc...
InlineResponse200_73
InlineResponse200_74
PaymentsSubscriptionsBody
InlineResponse200_75
SubscriptionsSubscriptionIdBody
InlineResponse200_76
CheckoutSubscriptionsBody
InlineResponse200_77
InlineResponse200_78
InlineResponse200_92
InlineResponse200_79
V1PlansBody
InlineResponse200_80
PlansPlanIdBody
InlineResponse200_81
InlineResponse200_82
V1ProductsBody
InlineResponse200_83
ProductsProductsIdBody
InlineResponse200_84
V1RefundsBody
InlineResponse200_85
RefundsCompleteBody
RefundsGroupPaymentsBody
InlineResponse200_86
RefundsRefundIdBody
InlineResponse200_87
V1SubscriptionItemsBody
InlineResponse200_88
SubscriptionItemsSubscriptionItemIdBody
InlineResponse200_89
InlineResponse200_90
SubscriptionItemIdUsageRecordsBody
InlineResponse200_91
InlineResponse200_93
SkusSkuIdBody
InlineResponse200_94
V1SkusBody
V1IdentitiesBody
InlineResponse200_95
InlineResponse200_96
InlineResponse200_97
InlineResponse200_98
ApplicationsHostedBody
InlineResponse200_99
InlineResponse200_100
Status1
PaymentMethodType A type of payment method that a customer can use for making payments.
PaymentAmountRangePerCurrencyInner
Field1 Field Object
Field1Conditions
PaymentMethodTypeRequiredFields Payment Method Type required fields - this is the response of GET required fields for Payment_Method_Type
Payment Collects money from a payment method and deposits it into one or more Rapyd Wallets
Address1 address associated with this specific Rapyd entity Payment/Customer etc...
Dispute Describes the fields contained in REST messages and webhooks for disputes of payments.
PaymentEwallets
PaymentInstructions
NextAction Indicates the next action for completing the payment. Response only. One of the following values are - _ 3d_verification - The next action is 3DS authentication. To simulate 3DS authentication in the sandbox, see Simulating 3DS Authentication. Relevant only to card payments. _ pending_capture - The next action is pending the capture of the amount. Relevant only to card payments when the amount is not zero. _ pending_confirmation - The next action is pending the confirmation for the payment. Relevant to all payment methods excluding card payment. _ not_applicable - The payment has completed or the next action is not relevant.
Outcome The outcome object describes the outcome of the Rapyd Protect risk assessment
Fee
PaymentRefunds Refunds object
PaymentStatus
PaymentSteps
PaymentOptions A payment method type is a type of payment method that any customer can use, for example, eemastercard_card, Mastercard for Estonia. When it is added to a customer profile, it becomes a payment method that is specific to that one customer. The name of the payment method type starts with a prefix for the country, the 2-letter ISO 3166-1 alpha-2 code. If the payment method is valid in multiple countries, the prefix is xx. The payment method type has a suffix with one of the following values - _bank - Bank transfer or bank redirect _card - Credit card, debit card or other card _cash - Cash _ewallet - Local eWallet
BinDetails Bank Identification Number (BIN) details. Read-only. Object containing the following fields - _ bin_number - BIN number _ country - The two-letter ISO 3166-1 ALPHA-2 code for the country. Uppercase. _ funding - Type of card funding. One of the following [credit, debit, prepaid, unknown] _ bank - Name of the issuing bank. Relevant to cards
Condition
Discount Describes the fields relating to discounts in REST messages and webhooks for customer profiles and subscriptions Contains information about the coupon that applies to the customer. Read-only field. Adding a discount is a 2-step process: <BR> 1. Create Coupon, which returns a coupon ID. <BR>2. Add the coupon ID to the coupon field of the customer with Create Customer or Update Customer.
CustomerPaymentMethods An object containing the following fields - _ data - A list of up to three payment methods. For more information, see Customer Payment Method Object. _ has_more - Indicates whether there are more than three payment methods for this customer. _ total_count - Total number of payment methods for this customer. _ url - URL for requesting all of the payment methods for this customer..
Subscription
SubscriptionItems
SubscriptionItem
Plan
PlanTiers
PlanTransformUsage Defines the transformation that is applied to the reported usage before the billed price is computed. The transformation divides the quantity by the divisor specified in divide_by, then rounds up or down according to the setting in round. Relevant when billing_scheme is set to per_unit.
Product
ProductPackageDimensions Describes the physical size and weight of the product. Contains the following fields: _ height _ length _ weight _ width These fields are represented as numbers, but it is the responsibility of the merchant to define and interpret the relevant units of length and weight.
Sku
SkuPackageDimensions Physical attributes of the SKU item. Contains the following fields, height length weight width These fields are represented as numbers, but it is the responsibility of the merchant to define and interpret the relevant units of length and weight.
FxFee Describes the fees for processing the currency exchange. Relevant to payouts with FX.
TransactionFee Describes the fee for processing the transaction.
ClientDetailsObject Describes the fields in the client_details object in REST messages for payments. The client_details object describes the browser that the customer is using. The client collects this information and sends it as part of the Create Payment request. This information is used for processing the 3DS version 2 authentication of the customer. Note that Client Details information is not returned in the API response and it does not appear in any webhooks.
CheckoutPageResponse
MerchantCustomerSupport Contains details of the client’s customer support. To configure these fields, use the Client Portal.
HostedPageStatus Status of the hosted page. One of the following: NEW - The hosted page was created. DON - Done. The card was added to the customer profile. EXP - The hosted page expired.
HostedPageAdditionalResponseCartItems Describes the cart items that the customer is purchasing. These items are displayed at the checkout page.
HostedPageAdditionalResponseCustomElements Description of the payment transaction.
PaymentParams
CardIssuing
CardIssuingMasked
ContactBusiness
CardTransaction
InlineResponse200_43Data
Status
InlineResponse200_44Data
InlineResponse200_44DataTransactions
InlineResponse200_45Data
InlineResponse200_46Data
InlineResponse200_47Data
Transfer
InlineResponse200_15Data
InlineResponse200_16Data
InlineResponse200_16DataComplianceLevels
InlineResponse200_16DataElements
Ewallet
Account
EwalletContacts
Limit
V1ewalletsContact
EwalletTransaction
EwalletTransactionDetails
InlineResponse200_17Data
InlineResponse200_18Data
InlineResponse200_18DataTransactions
VirtualAccountIssuing
VirtualAccountTransactionResponse
InlineResponse200_20Data
PayoutMethodTypeDetails
EntityType
PayoutRequiredFields
Payout
Beneficiary
PayoutEwallets
PayoutInstructions
PayoutFees
Sender
PayoutStatus
MassPayoutResponse
Gender Gender of the individual. Required when entity_type is individual.
InlineResponse200_27Data
InlineResponse200_28Data
InlineResponse200_30Data
PayoutMethodType
PayoutAmountRangePerCurrencyInner
DailyRate Describes currency conversion for payments and payouts. Rapyd uses a snapshot of daily foreign exchange rates fetched at 9 PM UTC. The rate returned includes the FX markup fees.
ListSupportedLanguagesResponse
ListSupportedLanguagesResponseLanguages List of the languages supported for hosted pages.
ListCountriesResponse
ListCountriesResponseLanguages List of the supported countries.
ListCurrenciesResponse
ResendWebhookResponse
ListWebhooksResponseAttempts List of attempts at sending the webhook. Array of objects that contain the following fields:
ListWebhooksResponseAttemptsHttpResponseHeaders Headers of the HTTP response from the configured webhook destination, with the value received.
ListWebhooksResponse
InlineResponse200_50Data
CustomerRequestPaymentMethod The payment method that is used when the transaction does not specify a payment method. String starting with card_ or other_.
InlineResponse200_53Data
DiscountCustomerResponse Describes the fields relating to discounts in REST messages and webhooks for customer profiles and subscriptions Contains information about the coupon that applies to the customer. Read-only field. Adding a discount is a 2-step process: <BR> 1. Create Coupon, which returns a coupon ID. <BR>2. Add the coupon ID to the coupon field of the customer with Create Customer or Update Customer.
InlineResponse200_58Data
ApplePayObjectResponse
EscrowResponse
EscrowResponseEscrowReleases Array of objects that describe individual releases.
EscrowResponseEscrowReleasesData Array of objects that describe individual escrow releases.
EscrowEwallets Describes the wallets and the releases from escrow.
GroupPayment Group Payment
InvoiceResponse Invoice
InvoiceItem Invoice item
InvoiceItemPeriod
OrderResponse
OrderItemResponse
OrderReturnedItemResponse
OrderResponseStatusTransitions Indicates the last time in Unix time that the order transitioned to one of the following statuses. A zero value for a status indicates that the order has never transitioned to it.
V1ordersItems
V1ordersorderIdreturnsItems
OrderReturnedResponse
PaymentLink Retrieves details of a payment link.
V1hostedcollectcardCardFields Contains details about the card.
CardTokenResponse
CardTokenResponseCardFields Contains details about the card.
CardTokenResponsePaymentParams Contains the following fields. When these fields do not include values, the user is redirected to the hosted page, and a related status message appears at the top of the page.
AddressResponse
V1paymentssubscriptionsSubscriptionItems
InlineResponse200_76Data
SubscriptionHostedPageReponse
SubscriptionHostedPageReponseCustomElements Description of the payment transaction.
SubscriptionHostedPageReponseMerchantCustomerSupport
InlineResponse200_81Data
V1productsPackageDimensions Describes the physical size and weight of the product. Relevant when type is goods.
Refund
RefundEwallets
InlineResponse200_86Data
InlineResponse200_89Data
InlineResponse200_90Data
V1skusskuIdInventory inventory object {quantity, type, value}
V1skusskuIdPackageDimensions Physical attributes of the SKU item. Object containing the following fields - height, length, weight, width
InlineResponse200_95Data
InlineResponse200_96Data
InlineResponse200_97Data
EntityTypeVerify
InlineResponse200_98Data
VerifyHostedAppResponse
VerifyHostedAppResponseMerchantDetails Object containing information about the merchant.
VerifyHostedAppResponseMerchantDetailsMerchantCustomerSupport
InlineResponse200_100Data
InlineResponse200_100DataApplicationType
InlineResponse200_100DataOrganizationDetails
InlineResponse200_100DataRenewResult
InlineResponse200_100DataOrganizationDetailsMerchantCustomerSupport

Using Union Types

Union types allow you to specify that a variable can have more than one type. This is particularly useful when a function can accept multiple types of inputs. The Union type hint is used for this purpose.

Example Function with Union Types

You can call service method with an instance of TypeA, TypeB, or a dictionary that can be converted to an instance of either type.

# Model Definition<a id="model-definition"></a>
ParamType = Union[TypeA, TypeB]

# Service Method<a id="service-method"></a>
def service_method(param: ParamType):
...

## Usage<a id="usage"></a>
type_a = TypeA(key="value")
type_b = TypeB(key="value")

sdk.service.service_method(type_a)
sdk.service.service_method(type_b)
sdk.service.service_method({"key": "value"})

You cannot create an instance of a Union type itself. Instead, pass an instance of one of the types in the Union, or a dictionary that can be converted to one of those types.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rapyd_sdk-1.0.10.tar.gz (409.2 kB view details)

Uploaded Source

Built Distribution

rapyd_sdk-1.0.10-py3-none-any.whl (558.1 kB view details)

Uploaded Python 3

File details

Details for the file rapyd_sdk-1.0.10.tar.gz.

File metadata

  • Download URL: rapyd_sdk-1.0.10.tar.gz
  • Upload date:
  • Size: 409.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.2

File hashes

Hashes for rapyd_sdk-1.0.10.tar.gz
Algorithm Hash digest
SHA256 7900bbe4c9a88de11622c30400671ae760df898cb3f38434c6c6fae9d5fd3595
MD5 d1bb4d0130dcac89c5ac33e9cb04d64c
BLAKE2b-256 243833b2006bca68fc78e12d3eb78560c6afb9105463695aa70637212fd0ab73

See more details on using hashes here.

File details

Details for the file rapyd_sdk-1.0.10-py3-none-any.whl.

File metadata

  • Download URL: rapyd_sdk-1.0.10-py3-none-any.whl
  • Upload date:
  • Size: 558.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.2

File hashes

Hashes for rapyd_sdk-1.0.10-py3-none-any.whl
Algorithm Hash digest
SHA256 eaa5fe8834ab3fbdfbb6cf2a90cef3bd6f73deeade9ef4890ae30915546b2259
MD5 b2bf7d868a93b30496a2f8d2c908d708
BLAKE2b-256 73694be5b96c4d9e737b61550e826139e70649888c0414888f56d5bffd0a7484

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page