Coder Social home page Coder Social logo

sap-samples / btp-create-api-integrations Goto Github PK

View Code? Open in Web Editor NEW
8.0 10.0 9.0 7.33 MB

Create your own digital experiences with SAP Build and SAP Integration Suite to operationalize access requests, federate APIs from disparate gateways, and monetize their use.

Home Page: https://blogs.sap.com/2022/12/01/monetize-your-api-with-sap-btp-and-stripe/

License: Apache License 2.0

Mermaid 100.00%
btp-use-case-factory free-tier kyma sample sample-code sap-btp sap-integration-suite stripe sap-build-apps sap-build-process-automation

btp-create-api-integrations's Introduction

REUSE status

Create simple, connected experiences with API-based integration

Description

Build a unified catalog and a developer portal for all APIs, regardless of where they're managed. Create your own digital experiences with SAP Build Apps, SAP Integration Suite, and SAP Build Process Automation to operationalize access requests, federate API from disparate gateways, and monetize their use.

In an API-first economy, the new business opportunities created from transactional and analytical systems are invaluable. Ensure governance, agility, and a clean line of sight into consumption help you make the most of them.

Challenge

While the consumption of APIs is a standard function of software development, API providers face several unique challenges. These include securing access to sensitive data in the cloud and on-premise systems, managing APIs across a heterogeneous landscape, and creating revenue opportunities from internal and external usage.

Solution

A single point of access to all APIs for all developers, powered by workflows and event-based integration with non-SAP API management software. This unified catalog consists of a tailored UX, a developer onboarding process, and an automated billing process based on rate plans.

Low Code Developer Portal - Solution Diagram

Outcome

An empowered developer ecosystem with self-service access to API, supported by secure digital processes. Reference architectures for federation of remotely managed API, customized developer portal, and billing and invoicing of rate plans with Stripe.

Requirements

You can find the detailed pre-requisites for running each part of this mission in the Getting started guide

Download and Installation

  • Artifacts needed for the low-code developer portal scenario can be found in a dedicated branch

Known Issues

  • API bills can only be read for completed months, not current month

How to obtain support

Create an issue in this repository if you find a bug or have questions about the content.

For additional support, ask a question in SAP Community.

Contributing

If you wish to contribute code, offer fixes or improvements, please send a pull request. Due to legal reasons, contributors will be asked to accept a DCO when they create the first pull request to this project. This happens in an automated fashion during the submission process. SAP uses the standard DCO text of the Linux Foundation.

License

Copyright (c) 2022 SAP SE or an SAP affiliate company. All rights reserved. This project is licensed under the Apache Software License, version 2.0 except as noted otherwise in the LICENSE file.

btp-create-api-integrations's People

Contributors

btbernard avatar cameronkhorsandi avatar jmsrpp avatar kay-schmitteckert avatar martinfrick avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

btp-create-api-integrations's Issues

Invoice creation fails with HTTP 500

Issue: When triggering the invoice creation, the service does not return a success message. In the pod logs you can see the following error message which is thrown right after the POST call is reaching the action endpoint.

[cds] - POST /invoicing/createStripeInvoices
[cds] - connect to apiportal > odata-v2 {
destination: 'api-portal',
path: '/apiportal/api/1.0/Management.svc',
requestTimeout: 1000000
}
[AxiosError: Request failed with status code 500] {
code: 'ERR_BAD_RESPONSE',

Solution: Please check your SAP Business Hub Enterprise instance for duplicate developers. This will result in an error. Ensure that no email address or user id is present more than once.

Developer onboarding process fails with HTTP 500

Issue: When you approve a developer onboarding request, instead of having the user fully registered with SAP API Management, Business Hub Enterprise, an error is returned by the Workflow instance:

The HTTP request to 'https://server.prod.apimanagement.datacenter.hana.ondemand.com/sapapimanagement/api/1.0/registrations' failed with status code 500 (Internal Server Error) and response body '{"errorCode":"REQUEST_APPROVAL_FAILED","errorMessage":"Unable to approve user request; contact your support team"}'.
Log ID: 1e0bed9a-2ad4-4b02-98b8-a15dd12f8759

Solution: Create the SAP BTP destination for API access to the XSUAA in your subaccount. See: API Access Plan for API business hub enterprise - Prerequisites

Invoice creation fails with HTTP 400

Issue: When triggering the invoice creation, the service does not return a success message. In the pod logs you can see the following error message which is thrown right after the POST call is reaching the action endpoint.

[cds] - POST /invoicing/createStripeInvoices
StripeInvalidRequestError: The search feature is temporarily unavailable in your region.
...
statusCode: 400,
charge: undefined,
decline_code: undefined,
payment_intent: undefined,
...

Solution: Your Stripe account is probably setup in India. India is the only country not supporting a dedicated search feature required by the solution. Please create another Stripe account in any other country than India. You can do so by clicking on the name of your Stripe account in the top left when being logged in on the stripe.com website.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.