Payment Methods
In the intricate realm of online transactions, a versatile payment experience is essential.
The Payment Methods API
streamlines this process, allowing for effortless automation. by simply integrating with specified operation, customer_id, currencies, payment gateway names and desired payment plugins, merchant can harness the full power of Ottu's payment automation, all while keeping his existing environment intact. no extra effort, just seamless integration.
Ensure the relevant plugin (E-Commerce or Payment Request) is activated in the Admin Panel under the Plugin Config section. For detailed activation steps, refer to the Plugin Activation Guide.
Activate the payment gateway (pg_codes) you intend to use. Ensure all desired pg_codes
are set to ‘active
’ status in your configuration.
The type
filter determines the mode of your environment:
Development Mode: Configure the
type
tosandbox
mode for conducting tests with sandbox transactions instead of live transactions.Production Mode: Set the
type
toproduction
for handling real transactions in a live environment.
Ensure you’re in the correct mode before initiating payments.
To accelerate the integration process, consider using our official packages. These packages handle the heavy lifting involved in integrating with our API. They encapsulate much of the API interaction logic, allowing you to focus on core business logic.
Available Packages:
Python SDK: Simplifies access to payment methods using a Pythonic interface, enhancing developer productivity by abstracting complex API calls. Learn more.
Django SDK: Integrates payment methods seamlessly into Django projects, providing tools and utilities specific to Django, which streamline payment processes. Explore details.
While these packages offer substantial speed and convenience benefits, understanding the foundational concepts and structures outlined in the documentation is crucial. This ensures that you can effectively integrate and use the packages in a robust and maintainable manner.
Supported Methods
For detailed information on authentication procedures, please refer to the Authentication documentation.
Ensuring the right level of access is crucial for maintaining the security and integrity of your payment processes. The Payment Methods API
provides two authentication methods, each with its own set of permissions:
Private API Key
Privileges: This method grants super admin privileges to the caller. It provides unrestricted access to all available payment methods and associated functionalities.
Usage: Given its broad access, it’s essential to handle API keys with utmost care. Ensure they are securely stored and only shared with trusted individuals or systems.
BasicAuth
Privileges:
BasicAuth
is user-centric, meaning it’s tied to a specific user profile. Access to payment methods can be restricted based on the user’s assigned permissions.Setting Permissions: To grant a user access to a specific payment method, assign the permission: "Can use pg_code". Here, the pg_code represents the unique code of the payment gateway or merchant ID (
MID
). For instance, if you want to grant a user access to a payment gateway with the code ‘credit-card
’, you would assign them the permission “Can use Credit Card”.Usage: Since
BasicAuth
is user-specific, it’s suitable for scenarios where you want to provide selective access to different payment methods based on user roles or responsibilities.
The Payment Methods API
is designed to streamline and automate the end-to-end integration with Ottu, ensuring that your payment processes remain up-to-date and efficient without the need for constant code modifications.
Automation and Flexibility: This API serves as a foundation for other Ottu APIs, providing the necessary data to facilitate seamless transactions. By using this API, you can ensure that your integration remains current, even when there are changes in the payment gateway configurations.
Caching for Efficiency: Given that the data from the
Payment Methods API
doesn’t change frequently, it’s recommended to cache the response for 24 hours. This approach enhances performance and reduces unnecessary API calls. However, ensure you have a mechanism to clear the cache when immediate updates are required.Tailored Customer Experience: With various filters available, you can customize the payment methods presented to the customer. For instance, if you’re setting up a customer for recurring payments, you can filter out payment methods that don’t support tokenization using the
tokenizable
=true
filter.Versatility: The
Payment Methods API
isn’t just a prerequisite for the Checkout API. It’s also essential for other APIs, such as the User Cards API.
Currency-Specific Payments: If you want to allow payments only in a specific currency, like USD, use the filter
currencies
=["USD
"]. This will return only the payment methods that support USD.Recurring Payments: When setting up a customer for recurring payments, use the
tokenizable
=true
filter. This ensures that the customer can set up a recurring payment using methods that support tokenization.Customized Payment Options: If you have a history of the payment methods a customer has used, you can tailor the options presented to them during checkout. Instead of showing numerous payment methods, display only those they’ve used in the past.
Specific Payment Types: For purchases where only specific payment types, like Debit Cards, should be allowed, use filters like
pg_names
=["knet
"] to retrieve only the desired payment methods.
Example:
To retrieve payment methods that support USD
and tokenization
for e-commerce
purchases:
This request will return the "pg_codes": ["knet"]
, which can then be used in subsequent API calls.
For a detailed breakdown of the API response, refer to the Open API block below.
The Payment Methods API
provides a wealth of information about each available payment method. It’s not just about determining which payment methods are available; it’s about understanding the capabilities and features of each method in-depth.
Key insights you can glean from the API response include
Wallet Integrations: Determine which payment methods support popular digital wallets like Apple Pay and Google Pay.
Supported Currencies: Identify the currencies each payment method can handle. This is crucial for businesses operating in multi-currency environments.
And More: The API provides a plethora of other details that can be instrumental in tailoring the payment experience for your customers.
With such granular control and detailed insights at your fingertips, you can truly customize and optimize the payment process to align with your specific business needs and offer an unparalleled payment experience to your customers.
Use Case:
Streamlined Checkout Experience.
Scenario:
An e-commerce merchants aim to simplify and accelerate the checkout process for their customers, ensuring that they're presented with the most relevant and up-to-date payment methods.
Steps:
- Initiate the Payment Methods API
Start by making a call to the
Payment Methods API
. This retrieves the most current and applicable payment methods based on specified parameters such ascustomer_id
,currency
, andplugin
. For instance, to cater to online shoppers, you could use the plugin filter to retrieve only e-commerce payment methods. - Invoke the Checkout API
Using the payment methods gleaned from the above step, you then call the Checkout API. Here, you ensure the chosen payment method is passed to this API call. For example, if the
Payment Methods API
returned 'PG001
' as an available payment method code, you would incorporate this code into theCheckout API
call.
Scenario:
A merchant aims to provide a diverse array of payment options to accommodate an extensive clientele, particularly those engaged in e-commerce for widespread product purchases.
Steps:
- Using the API's Filters
Utilize filters such as customer_id, currency, and plugin, the merchant selects and integrates desired payment methods into their platform in our case merchant should use plugin filter to get only e_commerce payment methods.
Scenario:
The merchant's gateway settings or MID
configuration has been changed, and they want these updates to be automatically reflected without manually intervening in the payment methods section they will show in customer checkout page.
Steps:
Once integrated with the Payment Methods API
, any change in the gateway settings or MID
configuration is auto-reflected in the merchant's payment methods section as Ottu will automatically return the updated details of payment method based on changes done on MID.Merchants
don't have to initiate any manual updates; the API handles the seamless integration.
Benefits:
Reduces the manual work involved in updating payment methods. Ensures customers always have the latest and most secure payment options available.
Scenario:
An online subscription service wants to offer their customers the option to have their payments automatically debited at regular intervals, ensuring a seamless and uninterrupted service experience.
Steps:
- Tokenization Filter
The merchant uses the
Payment Methods API
with the `tokenizable
` flag enabled. The API filters and returns only the payment gateways (pg_codes
) that support the tokenization feature.
The chosen payment method is now set to automatically debit the subscription amount at the specified intervals, ensuring uninterrupted service for the customer and consistent revenue for the merchant.
Scenario:
An e-commerce platform offers customers the convenience of saving their card details for faster checkout in future transactions. To maintain trust and enhance the user experience, the platform wishes to ensure that subsequent charges using saved cards are only done on those cards which are tokenization enabled by the customer.
Steps:
- Passing Tokenization
pg_codes
toUser Cards API
The retrieved tokenization
pg_codes
are then passed to the User Cards API. TheUser Cards API
filters and returns only those saved cards that are enabled for tokenization by the customers. - Subsequent Transactions
For subsequent transactions, the system only charges the customer's cards that are both saved and have tokenization enabled.
Customers are assured that only their approved and tokenization enabled cards will be charged, ensuring transparency and trust.
Given the infrequent changes in values — primarily when new MIDs are issued — it’s prudent to cache the API call response. This minimizes unnecessary and redundant calls to the API, especially considering the rare changes.
Recommendations
Cache the API call response for an extended period, ranging from 24 hours to 1 week. This ensures that you’re not querying the API for every payment, which is inefficient since the data remains largely static.
Always cache responses based on the specific filters you apply during API calls. If you’re employing the API with diverse filters based on various scenarios, it’s crucial to cache each response separately.
Why is this important? If you cache all responses under a single key, regardless of the filters used, you risk retrieving incorrect or irrelevant data. This can lead to inaccurate payment processing or even transaction failures. Caching each filter’s response under a unique key ensures data integrity and relevance.
Implement a mechanism to clear the cache on demand. In instances where a change for MID
is enacted in the Ottu admin panel, this mechanism should be triggered to force update the cache with the latest data.
Benefits
Guarantees that your system always has the most up-to-date information.
Prevents potential transaction issues stemming from outdated
MIDs
.
By adhering to these best practices, you’ll ensure efficient API usage, maintain data accuracy, and optimize payment processing.
The Payment Methods API
is designed to streamline the process of online transactions by offering an effortless automation system for payments.
No, the Payment Methods API
allows for a seamless integration without requiring changes to your current environment. You only need to integrate with specific operation, customer_id, currencies, and desired payment plugins.
Conclusion
In conclusion, the Payment Methods API
offers dynamic adaptability. Any modifications made to the gateway settings or MID
configuration will be automatically reflected in the API. This ensures a hassle-free experience, eliminating the need for constant developer intervention. Whether you're adding a new gateway, introducing a new method, or incorporating an additional payment method for your store, there's no need for manual updates in your shop's integration. Once integrated with this API, any changes made will be seamlessly displayed. Simplifying the process, the Payment Methods API
guarantees efficiency and adaptability for your transaction needs.
Last updated