Applications développeur

Applications OAuth

Créez des applications partenaires, demandez un accès délégué aux entreprises et appelez les API MakeCrypto avec des jetons OAuth limités.

Portail des développeurs

Créez et gérez des applications partenaires sur https://apps.makecrypto.io. Les applications appartiennent à une société MakeCrypto et définissent les URI de redirection, les étendues OAuth autorisées, webhooks, l'icône, le contact d'assistance, la politique de confidentialité et les conditions affichées lors du consentement.

Chaque application confidentielle possède un secret client. Le secret est affiché une fois lors de sa création ou de sa rotation, puis stocké uniquement sous forme de hachage. Les applications publiques doivent utiliser PKCE et ne reçoivent pas de secret.

Code d'autorisation avec PKCE

MakeCrypto prend en charge la société déléguée OAuth pour les applications partenaires. Démarrez le flux en envoyant l'utilisateur au point de terminaison d'autorisation avec un URI de redirection enregistré exact et un défi PKCE S256.

GET https://makecrypto.io/oauth/authorize
  ?response_type=code
  &client_id=mco_app_...
  &redirect_uri=https%3A%2F%2Fpartner.example%2Fcallback
  &scope=company%3Aread%20makepay%3Apayment-links%3Aread
  &resource=https%3A%2F%2Fmakecrypto.io%2Fapi%2Fpartner%2Fv1
  &code_challenge=BASE64URL_SHA256_VERIFIER
  &code_challenge_method=S256

L'utilisateur choisit l'entreprise, examine les autorisations demandées et approuve ou refuse l'accès. Si l'approbation réussit, MakeCrypto redirige avec un code d'autorisation de courte durée.

Échangez le code au point de terminaison du jeton. Les clients confidentiels s'authentifient avec client_secret_basic ou client_secret_post ; les clients publics s'authentifient auprès de leur vérificateur client_id et PKCE.

POST https://makecrypto.io/oauth/token
Content-Type: application/x-www-form-urlencoded
Authorization: Basic base64(client_id:client_secret)

grant_type=authorization_code
&code=mco_code_...
&redirect_uri=https%3A%2F%2Fpartner.example%2Fcallback
&code_verifier=ORIGINAL_PKCE_VERIFIER

Les jetons d'accès sont des jetons au porteur JWT de courte durée. Les jetons d'actualisation tournent à chaque utilisation et la réutilisation des jetons d'actualisation révoque la famille de jetons.

Les intégrations natives officielles, telles que le plugin MakePay WordPress, n'utilisent pas le portail des développeurs ni un secret client partagé. Ils enregistrent une installation publique par magasin sur POST /oauth/native/installations, utilisent une correspondance exacte d'URI de rappel et reçoivent des jetons liés à DPoP qui doivent être envoyés avec Authorization: DPoP et un en-tête de preuve DPoP correspondant.

SDK officiels

Utilisez les SDK officiels lorsque vous souhaitez une intégration côté serveur sans créer le client HTTP, les charges utiles du lien de paiement et la vérification de la signature webhook à partir de zéro.

SDKUtilisez-le pourGuide
MakePay PHP SDKPHP, Laravel, Symfony, checkout personnalisé et création de liens de paiement backend.PHP SDK
MakePay NPM SDKBackends Node.js, Next.js, TypeScript et gestionnaires webhook côté serveur.NPM SDK

Points de terminaison

ButPoint de terminaison
AutorisationGET /oauth/authorize
Échange de jetonsPOST /oauth/token
RévocationPOST /oauth/revoke
IntrospectionPOST /oauth/introspect
Demande d'autorisation pousséePOST /oauth/par
Enregistrement de l'installation nativePOST /oauth/native/installations
JWKSGET /oauth/jwks.json
Métadonnées du serveur d'autorisationGET /.well-known/oauth-authorization-server
Métadonnées de ressources protégéesGET /.well-known/oauth-protected-resource

Portées

PortéeAccéder
company:readLisez l'identité de l'entreprise sélectionnée et les paramètres de base.
wallet:balances:readLisez les soldes du portefeuille de l'entreprise sélectionnée.
wallet:activity:readLisez l'activité du portefeuille et du règlement.
makepay:payment-links:readLisez les liens de paiement MakePay et l’état du paiement.
makepay:payment-links:writeCréez et mettez à jour les liens de paiement MakePay.
makepay:customers:readLisez les dossiers clients MakePay.
makepay:customers:writeCréez et mettez à jour les enregistrements clients MakePay.
makepay:subscriptions:readLisez les enregistrements d'abonnement MakePay.
makepay:subscriptions:writeCréez et mettez à jour des abonnements MakePay.
makepay:settings:readLisez les paramètres MakePay merchant et les actifs activés.
makepay:settings:writeMettez à jour les paramètres du MakePay merchant et la configuration des rappels.
makepay:webhooks:readLisez les points de terminaison et les journaux de livraison MakePay webhook.
makepay:webhooks:writeCréez, mettez à jour, testez et réessayez les diffusions MakePay webhook.

Autorisations d'itinéraire API

ItinéraireMéthodePortée requise
/api/partner/v1/makepay/payment-linksGETmakepay:payment-links:read
/api/partner/v1/makepay/payment-linksPOSTmakepay:payment-links:write
/api/partner/v1/makepay/customersGETmakepay:customers:read
/api/partner/v1/makepay/customersPOSTmakepay:customers:write
/api/partner/v1/makepay/subscriptionsGETmakepay:subscriptions:read
/api/partner/v1/makepay/subscriptionsPOSTmakepay:subscriptions:write
/api/partner/v1/makepay/settingsGETmakepay:settings:read
/api/partner/v1/makepay/settingsPUTmakepay:settings:write
/api/partner/v1/makepay/webhook-requestsGETmakepay:webhooks:read
/api/partner/v1/companies/{id}/wallet/balancesGETwallet:balances:read
/api/partner/v1/companies/{id}/wallet/activityGETwallet:activity:read

Signature Webhook

L'application webhooks inclut un en-tête makecrypto-signature avec des valeurs d'horodatage et de signature v1. Vérifiez la fraîcheur de l'horodatage, reconstruisez la charge utile signée en tant que timestamp.rawBody et comparez la signature avec le secret webhook affiché une fois lors de la création ou de la rotation du point de terminaison.

Gestion des applications connectées

Les subventions OAuth approuvées sont visibles dans le tableau de bord de l'entreprise sous Integrations -> Connected apps. Les administrateurs de l'entreprise peuvent consulter l'état de l'application, le dernier accès et les étendues accordées, puis révoquer l'accès lorsqu'une connexion partenaire cesse de fonctionner.

Besoin d'aide pour la configuration partenaire ?

Ouvrez la vue des détails du lien de paiement dans MakeCrypto pour copier les extraits générés pour un UID de paiement réel, ou revenez au portail pour gérer les paramètres du marchand.

Ouvrir le portail