-
Notifications
You must be signed in to change notification settings - Fork 101
feat(backend): Update handling of OutgoingPaymentCardDetails
#3658
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
6ec7b6f to
6a3e421
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Couple of questions regarding card data.
| table.dropColumn('signature') | ||
|
|
||
| table.uuid('requestId').notNullable() | ||
| table.jsonb('data').notNullable() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mkurapov is this the TLV data?
If it is, the ASE would need to extract the TLV data in order to retrieve the txn-counter and related TLV data.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@koekiebox data is just JSON for flexibility, and in practice it is
{
"signature": "", // generate AC response
"payload": "", // generate AC payload
}
such that the cardholder's ASE can fetch it from the webhook and validate it.
See this Slack thread for example payload
| signature: 'test-signature' | ||
| data: { | ||
| signature: 'test-signature', | ||
| payload: 'payload' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is the format for payload?
| type: object | ||
| properties: | ||
| data: | ||
| type: object |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should data not be an ASCII-HEX string?
🚀 Performance Test ResultsTest Configuration:
Test Metrics:
📜 Logs |
# Conflicts: # localenv/mock-account-servicing-entity/generated/graphql.ts # packages/backend/src/graphql/generated/graphql.schema.json # packages/backend/src/graphql/generated/graphql.ts # packages/backend/src/graphql/schema.graphql # packages/backend/src/open_payments/payment/outgoing/card/model.ts # packages/backend/src/open_payments/payment/outgoing/model.ts # packages/backend/src/open_payments/payment/outgoing/service.test.ts # packages/backend/src/open_payments/payment/outgoing/service.ts # packages/card-service/src/graphql/generated/graphql.ts # packages/frontend/app/generated/graphql.ts # packages/mock-account-service-lib/src/generated/graphql.ts # packages/point-of-sale/src/graphql/generated/graphql.ts # test/test-lib/src/generated/graphql.ts
8c5600b to
c9c185e
Compare
Changes proposed in this pull request
createOutgoingPaymentFromIncomingPaymentmutation to take indatainitiatedAtrequestIdas theCardDetailsInput(instead ofsignatureandexpiry)datainitiatedAtrequestIdin theOutgoingPaymentCardDetailstablecardDetailsin theoutgoing_payment.createdwebhookcardDetailsfromOutgoingPaymentmodel in Admin APIcreateOutgoingPaymentFromIncomingPaymentmutation in card-serviceContext
Fixes #3656 | RAF-1169
Checklist
fixes #numberuser-docslabel (if necessary)